Das werde ich über kurz oder lang auch tun.
Bis dato hindern mich daran neben dem eigenen (Un-)vermögen auch diverse Vorbehalte von Kunden/Vorgesetzten, die befürchten, dass sie dann Nachteile bei der Verfügbarkeit/Wartbarkeit/'was auch immer' von Programmen haben. Wobei dieselben Leute auch so schon fast immer auf das Wissen des (Erst-)entwicklers angewiesen sind, da die heutigen Projekte sehr umfangreich und kompliziert geworden sind -Stichworte: "Die Maschine soll aber dies und jenes können, dabei aber von einem Von-der-Straße-geholten ohne Kenntnisse der Prozesse bedient werden".
Und außerdem: Ob jemand nun Java, C# oder SCL lesen/verstehen muss ist m. M. nach kein großer Unterschied, ein sauberer Programmierstil vorausgesetzt.
Eine Bemerkung dazu: ich bin in meiner Firma für die HMI-Entwicklung zuständig, die meisten meiner Aussagen sind also ziemlich auf diesen Bereich der Automatisierungsentwicklung bezogen.
Mit besseren Codeverwaltungsmöglichkeiten meinte ich haupsächlich (wie erwähnt) die Versionsverwaltung. Eine Nachverfolgung von Codeänderungen (detailliert!) ist bei einem Master-Projekt mit diversen Forks und mehreren (auch externen) Programmierern nur mit Hilfs-SW wie z.B. GIT oder SVN wirklich möglich.
Des weiteren ist -zumindest bei WinCC- die Programmierung von Funktionalitäten meistens auf mehrere unterschiedliche Editoren bzw. SW-Basen verteilt.
Ich muss also beispielsweise Controls per Drag&Drop plazieren und komme zur Laufzeit an diese nur heran, wenn das entsprechende Bild geladen/angezeigt wird.
Ich muss globale Variablen in einer Tabelle anlegen und kann sie im Projekt nur mit Hilfe der Querverweisliste suchen, nicht aber mittels Textsuche (Blöd, wenn ich in Skripten mit zusammengesetzten Variablennamen arbeite...).
Ich schreibe (umfangreiche) Skripte, kann aber deren Inhalt nicht (gesammelt) exportieren.
Von Objektorientiertheit rede ich erst gar nicht.
All diese und noch mehr Nachteile habe ich nicht, wenn alles codebasiert wäre. Wobei es in den meisten Entwicklungsumgebungen auch Hilfsmittel wie einen GUI-Editor inkl. Drag&Drop gibt, diese erzeugen aber Code und nicht irgendeinen nicht nachvollziehbaren Eintrag in einer Projektdatenbank.
So, genug OT von meiner Seite, hier geht es doch eigentlich um den SP1 des TIA-Portals
Gruß, Fred