Idiom

Ein Idiom ist ein Begriff aus dem Software-Engineering, der die Lösung eines Implementierungsproblems in einer spezifischen Programmiersprache umschreibt. Dabei ist dieser Begriff von den generalisierten Begriffen wie Architekturmuster oder Entwurfsmuster zu trennen, da Idiome nur Muster von geringem Abstraktionsgrad kennzeichnen.


Deutlicher lässt sich dieser Begriff aus der generellen Sicht von Mustern im Software-Engineering erläutern. Dabei beschreiben Architekturmuster die grundlegende Struktur der Organisation eines Software-Systems. Auf der nächsten Ebene sind die Entwurfsmuster angeordnet, die bewährte Lösungsideen zu immer wiederkehrenden Entwurfsproblemen beschreiben, und damit die Struktur und Beziehungen von Subsystemen umfassen. Auf unterster Ebene lassen sich dann die Idiome einordnen. Dies sind Software-Muster mit niedrigstem Abstraktionsgrad, und beziehen sich auf die Implementierung einer spezifischen Lösung für ein Teilproblem mit den Mitteln einer bestimmten Programmiersprache. Es werden dabei also immer nur bestimmte Aspekte der Implementierung von Komponenten betrachtet.

In Zusammenhang mit dem Begriff der Idiome ist auch auf den Programmierstil einzugehen. Dieser beinhaltet die das Verhalten, wie zur Implementierung von Lösungen individuelle Sprachkonstrukte, z.B. Schleifen, Namenskonventionen, eingesetzt werden. Diese einzelnen Aspekte können als Idiome separiert werden. Damit kann dann wiederum eine Menge miteinander in Beziehung stehender Idiome als Programmierstil bezeichnet werden.

Idiome werden in folgenden Zusammenhängen verwendet:

  • Lösungsansätze für Teilprobleme z.B. Verwaltung und Organisation von Speicher, Erzeugung bestimmter Objekte,
  • Namenskonventionen für Klassen, Attribute, Konstanten und Methoden,
  • Formatierung von Quellcode zur besseren Les- und Wartbarkeit,
  • Typische Codestrukturen, z.B. minimale Klassenschnittstelle und
  • Nachahmung von Eigenheiten anderer Programmiersprachen.

Informationen zum Artikel
Deutsch: Idiom
Englisch: idiom
Veröffentlicht: 05.01.2010
Wörter: 250
Tags: #Entwicklung, Codierung
Links: Architekturmuster, Aspekt, Attribut, Entwurfsmuster, Implementierung