erfahrene Softwareentwickler
OK
In der normalen Softwareentwicklung setzt man schon seit Jahrzehnten idR höhere Programmiersprachen ein: C, Pascal, C++, Java, Fortran, Basic... (das Step7-Äquivalent wäre SCL)
Assembler (AWL) ist nur für Zwischenfunktionen, die anders nicht gut realisierbar sind, Hardwareschnittstellen, Optimierung und nimmt nur noch einen kleinen Anteil am Quellcode ein.
In Step7 speziell ist AWL öfter als normal gerechtfertigt, wegen der besseren Debug-Möglichkeiten.
AWL hat einige brauchbare Features, die in SCL nicht so gut oder ineffizient nachzubilden sind: FP, SPL, Behandlung der Datentypen (besonders bei *I). Aber eigentlich ist da auch SCL ok: wenn AWL nicht verfügbar ist, ist der SCL-Code besser anzupassen.
Für Schleifen, Berechnungen (in der Regel), in jedem Fall Arrayzugriffe (indirekte Adressierung), und alles, was komplex ist, nehme ich SCL.
Manche kleinen Funktionen "erfordern" für mich auch wieder AWL, nur zum Zugriff aus SCL heraus, das können "optimierte" Datenumwandler sein. Wenn AWL verschwinden würde, würde manches viel schwieriger werden.
KOP und FUP ist eigentlich nur eine Art graphischer Assemblercode, noch stärker eingeschränkt als AWL, es kann in einigen Fällen sinnvoll sein, aber kein Ersatz dafür.
Standards? Ist SCL oder AWL mit irgendeinem Standard konform? Unter welcher Voraussetzung? Solange ich an keinen gebunden bin, gilt für mich nur Optimierung nach Wartbarkeit und (leider immer noch) Speicher- und Zeitbedarf.