Privacy Policy Cookie Policy Terms and Conditions 4GL - Wikipedia

4GL

aus Wikipedia, der freien Enzyklopädie

Fourth generation language oder kurz 4GL bezeichnet Programmiersprachen der vierten Generation. Diese sind darauf ausgerichtet, rasch für einen bestimmten Anwendungsbereich (das heißt mit möglichst wenigen Code-Zeilen) Funktionen oder komplette Anwendungen schreiben zu können.

Der Begriff 4GL ist nicht exakt definierbar und wird vor allem für Marketing-Zwecke eingesetzt. Gemeinsames Hauptziel aller 4GL ist es jedoch, im Vergleich mit Drittgenerationssprachen dieselbe Funktionalität mit weniger Code zu erreichen. Der Begriff wurde in den 1980er Jahren häufig verwendet. Heute wird auch der Begriff Rapid Application Development (RAD) mit überlappender Semantik angewandt.

In Drittgenerationssprachen stand die Einführung von standardisierten Kontrollstrukturen im Vordergrund. In Viertgenerationssprachen liegen zusätzlich Bausteine vorgefertigt vor, die häufig in spezialisierten Anwendungen vorkommen. Nicht mehr wie ein Problem gelöst wird steht im Vordergrund, sondern was der Rechner machen muss, um dieses Problem zu lösen.

Die Bezeichnung 4GL wurde stark von James Martin propagiert. Er benutzte sie zuerst 1982 in seinem Buch Application Development Without Programmers („Anwendungsentwicklung ohne Programmierer“). Trotzdem würde sich die Mehrheit der Anwender von 4GL-Sprachen selbst doch als Programmierer bezeichnen und die meisten 4GL-Sprachen enthalten auch eine Möglichkeit um Programmierlogik in einer meist proprietären Drittgenerationssprache zu beschreiben.

Nicht alle 4GL sind bzw. waren erfolgreich. Wenn aber eine Viertgenerationssprache für den Zweck eingesetzt wird, für den sie gebaut ist, gab und gibt es auch spektakuläre Erfolge.

Inhaltsverzeichnis

[Bearbeiten] Gegenüberstellung von 3GL und 4GL

3GL
  • Der Programmierer muss genau beschreiben, wie ein bestimmtes Problem gelöst werden soll.
  • Die Aufgabenstellung ist schwer aus dem Quellcode zu erkennen.
4GL
  • Der Programmierer beschreibt, was der Rechner tun soll.
  • Die Programme sind in der Regel gut lesbar. Daraus resultiert, dass auch die Aufgabenstellung leicht aus dem Quellcode zu entnehmen ist.
  • Standardroutinen stehen zur Verfügung, die die 4GL Ausdrücke intern in 3GL Ausdrücke umwandeln.

[Bearbeiten] Zielsetzung

  • Verringerung des Programmieraufwands durch kürzere und verständlichere Programme
  • Bessere Wartbarkeit und Erweiterbarkeit der Programme durch bessere Lesbarkeit
  • daraus resultiert eine Reduzierung der Kosten

[Bearbeiten] Typen

  • Berichtgeneratoren
  • Eingabeformulargeneratoren
  • Gesamtsysteme, die Angaben aus CASE-Systemen übernehmen und mit Bericht- und Eingabegeneratoren und weiterer Angabe von Prozesslogik ganze Systeme generieren. Ein Beispiel dazu ist das Werkzeug Information Engineering von James Martin, das erlaubt, die Resultate von Systemanalyse und Systemdesign zu erfassen (in der Form von Datenflussdiagrammen, Entity-Relationship-Diagrammen und Entity-Life-Cycle-Diagrammen). Daraus wurden dann hunderttausende von COBOL-Programmzeilen generiert. Ein neueres System sind die Werkzeuge von Oracle: Oracle Designer and Oracle Developer. Viertgenerationsprodukte erzeugen Datenbankschemata und die dazugehörenden Eingabeformulare und Berichte.

[Bearbeiten] Beispiele

Datenbankabfrage
Datenmanipulation, -analyse und Berichterstellung
Programmiersprachen
Formularerstellung
  • Oracle Forms
  • Lotus Notes Makrosprache (@-Formula-Language)
Werkzeuge zur Erstellung von grafischen Benutzeroberflächen GUI

[Bearbeiten] Weblinks

Static Wikipedia 2008 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -