Samstag, 11. Februar 2012


News

Montag, 30. August 2010 | News

Nicht Programmiersprachen sind komplex - Programmieren ist komplex!

(Link zum Artikel: http://www.entwickler.de/jaxenter/news/056774)
  • Teilen
  • kommentieren
  • empfehlen
  • Bookmark and Share

Programmieren wird niemals einfach sein! So lautet die Überschrift eines Blogeintrags von msmstudios, in der die Ansicht kritisiert wird, Programmieren sei deshalb schwierig, weil die zur Verfügung stehenden Sprachen zu komplex seien.

Denn: Wie sieht es mit Sprachen aus, die dem Entwickler Gutes tun wollen, indem sie ihm möglichst viel Arbeit abnehmen – im Extremfall über eine grafische Bedienoberfläche, die verspricht: Klicke dir dein Programm in wenigen Schritten selbst zusammen?

Das Problem dabei sei, dass man sich bei solchen GUI-Sprachen auf die Magie des Systems verlassen müsse: Ohne die Technologie-Vorgänge zu verstehen, erzeugt der "Entwickler" ein Programm, über das er spätestens bei auftretenden Fehlern die Kontrolle verliert.

Von einem Programmierer erwarte man viel mehr: nämlich, dass er die Konzepte hinter der Sprache versteht und damit in der Lage ist, selbst abzuschätzen, welche Arbeit er sich von einer Sprache, einem Tool, einem Code-Generator abnehmen lassen möchte. Genau wie ein Elektroingenieur, von dem man auch nicht nur erwartet, dass er korrekt Strippen ziehen kann, der vielmehr auch in der Lage sein muss, die Logik der elektronischen Vorgänge, die Physik und Mathematik dahinter, zu verstehen, um etwa einen Architekten zu beraten und Sicherheitsfragen einzuschätzen.

I’m just trying to explain, no matter how easy the programming language is, if you don’t understand the logic behind the code, you won’t be able to write it in any language.

Anstatt also über die Einfachheit bzw. Komplexität gewisser Sprachen zu diskutieren, dürfte es gewinnbringender sein, andere Kriterien wie Mächtigkeit, innere Logik, Effizienz, Tooling-Unterstützung etc. zur Beurteilung einer Sprache heranzuziehen.

(hs)

Kommentare

Gravatar jsimon 30.08.2010
um 14:12 Uhr
Dem stimme ich zu. Leider habe ich schon zu viele Projekte gesehen, die allein deswegen gescheitert sind, da es zwar immer neue noch einfachere APIs gab, aber letztlich die Performance nicht mehr akzeptable ist. Der Grund man macht sich eben keine Gedanken mehr, wie die Technik dahinter funktioniert, was zu einem erheblichen Overhead führen kann. #zitieren
Gravatar Trepper 30.08.2010
um 15:07 Uhr
Das Problem sind eher APIs als Programmiersprachen, wobei die Sprachen den Aufbau von APIs entscheidend beeinflussen. Bei Java wird einiger Aufwand als Folgeerscheinung der statischen Typisierung betrieben, der bei einer dynamischen Sprache nicht nötig wäre. Das heißt nicht, dass das eine oder andere grundsätzlich besser wäre, aber die APIs sehen eben völlig unterschiedlich aus. Allerdings gibt es in der Java-Welt eine Kultur der unnötigen Komplexität und Über-Abstraktion. Ein schönes Beispiel ist JSF, das die Webentwicklung letztlich nur verkompliziert und zu schlechter Performance führt, weil es fundamental gegen die Grundprinzipien des Webs verstößt. #zitieren

Folgende Links könnten Sie auch interessieren