C# Programmierpraxis: Interfaces und abstrakte Klassen

Es gibt von mir wieder ein neues Videotraining bei LinkedIn Learning. Es handelt sich um eine weitere Adaption eines US-Trainings von Walt Ritscher rund um C#.

Kern dieser Trainings ist das Testen und Erweitern von Wissen über praktische Aufgaben, die sich in dem konkreten Fall auf abstrakte Klassen und die Implementierung von Schnittstellen in C# konzentrieren und in einer interaktiven Umgebung mit Namen CoderPad gelöst werden. Jede Challenge untersucht einen Aspekt dieser Themen rund um C#, Schnittstellen und abstrakten Klassen und nachdem Sie Ihren Code geschrieben haben, können Sie Ihre Lösung mit der Musterlösung vergleichen.

Für alle Praxisübungen bleibt dabei auf der in die Kursseite direkt eingebettete Entwicklungsumgebung CoderPad. Dort nutzen Sie bereits vorbereiteten Code und beginnen direkt mit dem Coden und Testen ihrer Lösungen.

C Programmierpraxis: Mathematische Algorithmen und Arrays – neues Videotraining

Es ist Montagmorgen und mein neuster LinkedIn Learning-Kurs wurde freigeschaltet. Titel ist „C Programmierpraxis: Mathematische Algorithmen und Arrays – neues Videotraining„. Es geht also offensichtlich um die Programmiersprache C, die immer noch eine der wichtigsten Sprache in der IT ist. Aber der  Kurs ist als interaktiver Kurs mit CoderPad aufgebaut. Es geht also nicht darum, die Programmiersprache C von Grund auf zu lernen. Das kann man erst einmal beispielsweise mit meinem C Grundkurs bei LinkedIn Learning (LiL) machen.

Dieser neue  Kurs ist dafür gedacht, Ihre Grundlagen der Programmierung in C zu testen und zu festigen. Und damit natürlich auch C weiter zu lernen, wobei die ausgewählten Programmierkonzepte verschiedene Stufen haben und gewisse Dinge wie Entscheidungsstruktur, Schleifen, Variablen oder Funktionen als auch Arrays und Strings voraussetzen. Wir beginnen mit einfachen Text-Eingaben und Ausgaben, den aber weitergehende Themen wie die Umwandlung von Zahlen in verschiedene Basen, mathematische Aufgaben sowie dem Umgang mit Arrays und Zeichenketten folgen.

Für alle Praxisübungen bleiben Sie auf der in die Kursseite direkt eingebettete Entwicklungsumgebung CoderPad. Dort tauchen Sie in den bereits vorbereiteten Code ein und beginnen direkt mit dem Coden und Testen ihrer Lösungen. Für diese Live-Umgebung sind keinerlei zusätzliche Lizenzen zu erwerben und keine Installationen und Einstellungen auf Ihrem Computer vorzunehmen. Eine Musterlösung zeige ich dann jeweils in einem eigenen Film.

Faust auf Faust

Nachdem gestern die Aktualisierung von meinem Kurs JavaScript für Fortgeschrittene – Programmiertechniken und Frameworks bei LinkedIn Learning (LiL) veröffentlicht wurde, kam heute direkt der Kurs C# Programmierpraxis: Attribute neu heraus. Es geht also Schlag auf Schlag oder Faust auf Faust, wie Klaus Lage das vor langer Zeit in einem Song thematisiert hatte.

Dieses neue Training ist mal wieder eine Adaption eines US-Kurses. Das Original ist von meinem amerikanischen Kollegen Walt Ritscher, das ich übersetzt und auf hiesige Verhältnisse angepasst habe. Offensichtlich geht es um Programmierpraxis mit C# und konkret die Verwendung von C#-Attributen. Aber die Besonderheit dieses Trainings ist der Einsatz von CoderPad im Zusammenhang mit Challenges und deren Solutions. Das ist ein neuer Ansatz, der bei manchen Kursen von LinkedIn Learning (LiL) verwendet wird, um automatisierte Code-Herausforderungen zu erstellen, die direkt im Challenge-Video bzw. im Browser gelöst werden sollen. Dort gibt es einen Editorbereich auf Basis eines besagten CoderPad-Systems mit der Möglichkeit zur Eingabe und dem automatisierten Test der Lösung.

Perl reloaded

Da bin ich die Woche gemütlich an der Überarbeitung von einem meiner Bücher bzw. Schulungsunterlagen und habe für die nächsten Tage mehr als ausreichend Zeit einkalkuliert, meine kommenden Videoaufnahmen für LinkedIn Learning (LiL) am Donnerstag vorzubereiten. Und dann bekomme ich heute Mittag einen Notruf eines Schulungsunternehmens, für das ich schon seit Jahren immer wieder arbeiten. Ein Trainer, der nächste Woche Montag bis Mittwoch einen Kurs halten sollte, wäre ausgefallen und im Krankenhaus. Ob ich kurzfristig übernehmen könne? Es wäre definitiv schwierig, einen Ersatz zu finden. Indirekt war damit klar, dass die Ansprechpartnerin so kurz vor Wochenende ziemlich unter Stress stand und vermutlich schon einige Absagen kassiert hat. Bei dem Thema – Perl –  und dem kurzfristigen Termin schon klar.

Aber ich habe zugesagt. Der Kurs ist remote, Mo – Mi ist eine genau passende Lücke vor dem Start der Aufnahmen und die Vorbereitung der kommenden Videoaufnahmen bekomme ich schon irgendwie hin. Obwohl ich gefühlt schon Ewigkeiten kein Perl mehr gemacht habe. Aber da ich sowohl Schulungsunterlagen zu Perl geschrieben als auch Videotrainings zu Perl bei LinkedIn Learning im Portfolio habe, wird das schon gehen. „Perl reloaded“ weiterlesen

C# ohne Visual Studio

Ganz toll – ich halte die ganze Woche eine Remoteschulung zu C# und bei den meisten Schulungsteilnehmern gibt es kein Visual Studio. Genaugenommen schon, aber das läuft in einer VM und die ist Unternehmensweit beim Kunden seit Tagen gestört. Was wiederum bedeutet, dass keinem der Teilnehmer aus dem einen Unternehmen (8 an der Zahl) Visual Studio zur Verfügung steht. Private Rechner gehen auch nicht, denn diese Teilnehmer sind im Unternehmen vor Ort und da ist das nicht möglich. Nur die anderen 3 Teilnehmer aus dem zweiten Unternehmen haben Visual Studio. Glücklicher Weise gibt es eine ganze Reihe  Online C# Compiler bzw. Online-IDEs auch für C#. Die laufen bei allen Teilnehmern, da Browser nicht über die VM genutzt werden. Das erlaubt zwar keine GUI-Programmierung für Windows, aber zumindest können alles Übungen mit Konsolenausgaben durchgeführt werden. Das rettet die Angelegenheit und vielleicht bekommen die ja die VM-Probleme doch irgendwann in der Woche noch in Griff.

C#-Schulung

Gefühlt habe ich die letzten Monate nur noch Python gemacht. Mit Ausnahme von ein bisschen VBA bei dem Access-Projekt für den Alten Dom zu Mainz. Aber die Woche steht mal wieder eine Schulung in C# an. Das ist eine Maßnahme, die ich für den Kunden schon seit vielen Jahren anbiete. Einige Zeit sogar in Kombination mit einem zusätzlichen Kurs in Cobol, aber die letzte Zeit werden die Endteilnehmer (Azubis, Uniabgänger, Trainees oder umzuschulende Programmierer bei einer Versicherung) wieder nur noch in C# geschult.

Wie lange macht es Cobol noch?

Totgesagte leben länger! Cobol ist Beweis. Schon zu Beginn meines Arbeitslebens unmittelbar nach dem Studium galt Cobol als vollkommen überholt. Mein einziger Kontakt mit Cobol bestand darin, dass ich Cobol-Programme in Turbo Pascal und/oder C/C++ umgestellt bzw. nachprogrammiert habe. Später habe ich dann eine riesige Anzahl an Cobol-Programmieren auf moderne Sprachen wie Java, C#, JavaScript oder Python umgeschult. Aber 2015 etwa habe ich begonnen, erste junge Programmierer wieder in Cobol zu schulen und sowohl bei LinkedIn Learing (LiL) Cobol-Training aufzunehmen als auch Cobol-Bücher zu schreiben . Bei einem Kunden – einer Versicherung – wurden ab der Zeit wieder Fachinformatiker und Uni-Absolventen nicht nur in C#, sondern auch in Cobol ausgebildet, weil die alten Cobol-Programmierer nicht mehr da waren, die alten Cobol-Progamme jedoch immer noch. Corona hat dann interessanter Weise nochmal einen Boom bei Cobol ausgelöst.

Doch die Woche habe ich erfahren, dass in besagter Versicherung die neuen Programmierer von mir nur noch in C# geschult werden sollen. „Wie lange macht es Cobol noch?“ weiterlesen

C#-Schulung

Meine letzte Schulung liegt schon eine Weile zurück. Dieses Jahr habe ich zwar eine ganze Reihe an Videos für LinkedIn Learning (LiL) aufgenommen, an einem Consulting-Projekt gearbeitet sowie Bücher bzw. Schulungsunterlagen erstellt. Aber diese Woche halte ich tatsächlich die erste Schulung in 2024.

Thema ist C# und die Maßnahme halte ich remote für einen Stammkunden, für den ich schon sehr viele Jahre arbeite. Auch diese C#-Schulung habe ich in der Form wohl schon mehr als ein Dutzend Male gehalten.

.NET und C# unter Linux

Da schau, meine Installationen von .NET 6 als auch .NET 7 gingen unter Mint Linux 21 einwandfrei durch. Und zwar keine „inoffizelle“ Sache wie Mono, sondern das „echte“ .NET von Microsoft. „.NET und C# unter Linux“ weiterlesen

Online-Training zu VB.NET

Mein neues Online-Training zu VB.NET ist bei LinkedIn Learning erschienen. Genaugenommen ist es ein Update von einem Training aus dem Jahr 2015, was damit ganz offensichtlich in die Jahre gekommen ist. Visual Basic ist eine objektorientierte Programmiersprache, die von Microsoft entwickelt wurde, um die Entwicklung typsicherer .NET-Apps zu ermöglichen. VB kommt in Web-, Cloud-, Desktop- und mobilen Umgebungen sowie in der Spieleprogrammierung zum Einsatz und eignet sich zudem bestens für den Einstieg in die Programmierwelt.

Mit Visual Basic und Visual Studio schnell und einfach programmieren lernen aus dem Kurs „Visual Basic Grundkurs“ von Ralph Steyer

Dieses Video-Training stellt Ihnen zunächst allgemeine Grundsätze der Programmierung, die IDE Visual Studio und das .NET-Framework vor. Danach erlernen Sie den Umgang mit Projekten in Visual Studio, um sich alle wichtigen Aspekte von „VB.NET“ Schritt für Schritt zu erarbeiten: die Syntax, die verschiedenen Arten von Programmen, grafische Oberflächen bis hin zum Einsatz von Programmen mit Datenbankanbindung. Ein eigenes Kapitel widmet sich VBA (Visual Basic for Applications), das in vielen Office-Anwendungen als Makrosprache zur Verfügung steht.

Nun kann man sich fragen, ob VB.NET überhaupt noch eine Relevanz hat? Alles rund um altes Basic als auch die Erben Visual Basic, VB.NET bzw kurz VB und VBA wird ja seit zig Jahren totgesagt. Genauso wie COBOL. Was letztendlich die Antwort impliziert – die alten Technologien und Sprachen werden totgesagt, neue Technologien und Sprachen gehyped und nach dem Hype bleiben die totgesagten Technologien und Sprachen übrig. „Online-Training zu VB.NET“ weiterlesen

Aktualisierungen gehen weiter

Ein weiteres Videotraining von mir bei LinkedIn Learning (LiL) (Python für C++-, Java- und C#-Entwickler:innen) wurde aktualisiert bzw. um neue Themen erweitert. Dabei geht es um den Einsatz von ChatGPT und KI zur Erstellung von Python-Code sowie die match…case-Anweisung.

Strategie für .NET-Programmiersprachen

Es gibt ein relativ neues Strategie-Papier von Microsoft, wie es mit den Kernsprachen für .NET weiter gehen soll. Interessanter Weise wird da nicht auf C++ eingegangen. Aber C/C++ steht sowieso „über den Dingen“ und jeder Diskussion.

Dass Microsoft C# als Kernsprache von .NET und Visual Studio sieht, ist nicht verwunderlich. Auch die Tatsache, dass Visual Basic nicht mehr wirklich weiterentwickelt wird, ist nicht neu. Ich finde es aber bemerkenswert, dass Visual Basic dennoch eine dauerhafte Zukunft zugesichert wird. So in etwa äußert sich Microsoft: „Wir stellen sicher, dass Visual Basic eine einfache und ansprechbare Sprache mit einem stabilen Design bleibt.“ Tja – Totgesagte leben länger.

Was aber für mich noch viel mehr für F# gilt. „Strategie für .NET-Programmiersprachen“ weiterlesen

Fett, fetter, Microsoft – und leider auch unverschämt was Altversionen angeht

Zwischen den Jahren nutze ich die Zeit und bereite eine Schulung zu „ASP.NET MVC“ vor, die im kommenden Januar und dann noch einmal im März laufen soll. Ich muss mich wieder etwas einarbeiten, obwohl ich vor einiger Zeit beim Springer-Verlag ein Buch zu „Webanwendungen mit ASP.NET MVC und Razor – Ein kompakter und praxisnaher Einstieg“ veröffentlicht habe. Aber ansonsten sind Webanwendungen mit ASP.NET MVC und Razor bei mir Randthemen, auch wenn ich viel mit purem C# und .NET zu tun habe.

Deshalb hatte ich vorgestern eine neue  Webseite als Referenz erstellt, die ich mit ASP.NET MVC und Razor in einem Docker-Container auf meinem Linux-Server laufen lasse.

Heute habe ich u.a. die Datenbank mit ins Spiel gebracht und im Grunde ist es wie immer bei Microsoft – wenn alles konfiguriert und installiert ist, geht das meiste mit Mausschubserei. Aber wehe, wenn nicht oder man vom vorgegebenen Pfad abweicht. Oder irgendwelche Neuerungen inkompatibel zu älteren Dingen sind (was gefühlt bei Microsoft ständig passiert). „Fett, fetter, Microsoft – und leider auch unverschämt was Altversionen angeht“ weiterlesen

Schulungsjahr 2022 beendet

Gestern habe ich meinen letzten Schulungstag 2022 (falls nicht noch ganz kurzfristig was aufläuft) gehalten (zu Python) und eben habe ich die letzte Rechnung für eine Schulung erstellt und versendet. Damit schließe ich das Schulungsjahr 2022 ab. Allerdings kommt vor Weihnachten noch eine Woche mit Videoaufnahmen bei LinkedIn Learning in Graz, worauf ich mich richtig freue.

Einführung in JavaFX/OpenJFX

Wenn ich die Schulungen dieses Jahr durchgehe, kamen wieder eine ganze Reihe an Themen vor. Wie üblich mit einigen Schwerpunkten, die sich im Vergleich zu den Jahren zuvor aber teils verschoben haben. Andere Themen sind komplett weggebrochen oder ich habe sie nicht annehmen können und ich muss mir überlegen, ob ich die weiter im Schulungsprogramm behalte. Auch wenn ich sie persönlich meist immer noch interessant finde (etwa F#, GWT oder Perl) bzw. unabhängig von direkten Schulungen oft verwende (etwa Eclipse oder alles rund um mein Lieblingsbetriebssystem Linux, wofür ich aber keine aktuelles Schulungsagenda mehr ausgearbeitet habe – zu nahezu allen anderen Schulungthemen habe ich ja eigene Bücher und Schulungsunterlagen und/oder Videotraining bei LiL erstellt).

„Schulungsjahr 2022 beendet“ weiterlesen

Django bzw. 2-facher Doppelschlag

„Doppelschlag“ aus der Überschrift kann man auf zwei Arten verstehen:

  1. In der Woche wurden bei LinkedIn Learning (LiL) gleich 2 neue Video-Training von mir veröffentlicht. Anfang der Woche die Überarbeitung meines Grundlagen-Trainings zu C und gestern dann ein brandneues Django-Training.
  2. Mit dem neuen Django Grundkurs verbinde ich die beiden IT-Technologien (Python und Web-Programmierung), die ich in den letzten Jahren wohl am meisten verwendet habe.

Django ist ein quelloffenes und serverseitiges Webframework, das die Programmiersprache Python mit einer modernen Architektur zur Generierung der klassischen Webtechnologien für den Client kombiniert. In meinem Grundlagenkurs zeige ich die Philosophie des Frameworks und beschreibe ausführlich die Installation und den Dateiaufbau eines Django-Projekts sowie den Betrieb in einer virtuellen Umgebung. Weitere Filme beschreiben den Unterschied zwischen einem Projekt und einer App, beleuchten das MVT-Schema, Views und Templates, und Sie sehen, wie Sie mittels QuerySets auf Datenbanken zugreifen. Schritt für Schritt lernen Sie, wie Sie ein eigenes Projekt starten und eine eigene Webapplikation entwickeln.

Es gibt ein neues LiL-Videotraining – mein neuer C Grundkurs

Heute ist bei LinkedIn Learning (LiL) ein neues Video-Training von mir erschienen. Wobei „neu“ etwas genauer beschrieben werden muss, denn es handelt sich um eine Überarbeitung eines Trainings, das ich schon vor vielen Jahren aufgenommen hatte. Aber die Überarbeitung ist sehr umfangreich gewesen und deshalb kann man in der Tat von „neu“ sprechen. Thema ist die Programmiersprache C. Also die Kernsprache fast aller modernen Programmiersprachen. Das Video-Training stellt das Syntaxkonzept von C ausführlich vor und Sie lernen Schritt für Schritt, wie Sie mit einer geeigneten Entwicklungsumgebung Programme schreiben können. Durch seine Strenge zwingt Sie C von Anfang an zu einem sauberen und strukturierten Programmierstil, was in Ihrer späteren Karriere zur/zum Entwickler:in von unschätzbarem Vorteil sein wird. Mit Hilfe zahlreicher Challenge/Solutions-Filme können Sie Ihr erworbenes Wissen immer wieder testen und Ihre Lösungen mit vorgegebenen Lösungen vergleichen.

Gemischtes Doppel bei den Belegexemplaren

Beim  Herdt-Verlag sind die letzten Wochen gleich zwei Unterlagen von mir in den jeweils aktuellen Versionen erschienen:

Da der Verlag bei mir im Ort seinen Sitz hat und Luftlinie nug gut 1 Kilometer weg ist, konnten meine Belegexemplare für beide Unterlagen eben direkt Vorort in Empfang genommen werden.

C# Grundlagen der Programmierung mit Visual Studio 2022

Seit einigen Jahren erstelle ich für den Herdt-Verlag Schulungsunterlagen. Dabei habe ich einige der Schulungsunterlagen von anderen Autoren übernommen, andere aber auch komplett neu entwickelt und geschrieben.

Der Herdt-Verlag ist übrigens mein einziger Kunde, dessen Sitz an meinem Wohnort ist. Weder in Bodenheim noch in Eppstein habe ich sonst jemals einen Kunden gehabt. Wenn ich einen Vertrag unterzeichnet habe, fahre ich mit dem Rad kurz um die Ecke und werfe diesen direkt ein.
Schulungsunterlagen von Herdt nutze ich selbst aber auch schon viele Jahre länger und als ich nach Bodenheim gezogen bin, habe ich das zum Anlass genommen, da einfach meine Expertise vorzustellen.
Und so ist es dazu gekommen, dass heute die Unterlagen C# Grundlagen der Programmierung mit Visual Studio 2022 veröffentlicht wurden. Das ist der überarbeitete Nachfolger der Unterlagen für Visual Studio 2019 und eine der Unterlagen, die ganz früher von einem anderen Autor erstellt wurden. Aber ich habe sie schon vor mindestens 7 oder 8 Jahren übernommen, mehrfach überarbeitet und mittlerweile sind die meisten Bestandteile von mir abgeändert oder neu hinzugefügt worden.

Erledigt

Die Aufnahmen für die Überarbeitung eines meiner Videotraining aus dem Jahr 2015 bei LinkedIn Learning ist durch. Auch wenn das Training noch in vielen Teilen aktuell war, da es um pures C geht und sich da in den letzten Jahren eigentlich nicht viel getan hat, war die Auffrischung doch aufwändig. Zwar habe ich diverse Videos beibehalten können, aber durch eine Umstrukturierung der Kapitel sind statt weniger Kapitel mit vielen Unterkapiteln nun 13 Kapitel daraus geworden. Und bei denen habe ich jeweils eine Challenge-Solution ergänzt. Das wird bei neuen Kursen von LinkedIn Learning immer mehr eingeführt und damit passt der Kurs auch vom Stil jetzt zu den neusten Kursen. Zudem habe ich einige lange Videos auf mehrere Videos aufgeteilt, Videos ein bisschen am Ende gestrafft, diejenigen mit veralteten Programmen und Ressourcen neu aufgenommen und Powerpoint-Slides neu gemacht. Wenn das durch die Postproduktion durch ist, wird vermutlich 50% des Kurses neu sein. Durch die vielen neuen Videos zu Challenge-Solution ist das Training auch nochmal gut 45 Minuten länger wie vorher – obwohl ich einzelne Videos sogar weggelassen und eben viele Videos gestrafft habe, indem ich die Abschlusssätze weggestrichen habe.

Und obwohl ich heute noch am Aufnehmen war, habe ich mir es nicht nehmen lassen, den Vormittag auf den Alteburger Markt zu gehen. Das ist ein traditioneller Viehmarkt zwischen dem Stadtrand von Eppstein und Heftrich, der 3x im Jahr stattfindet und auf den meine Familie schon seit Generationen geht. Allerdings ist der wegen Corona 2 Jahre komplett ausgefallen und heute war der 1. Alteburger seit über 2,5 Jahren.