Startseite   |  Site map   |  A-Z artikel   |  Artikel einreichen   |   Kontakt   |  
   
  •  
    Biologie
    Themen der Chemie
    Deutsch online artikel
    Englisch / Englische
    Franzosisch
    Geographie
    Geschichte
    Informatik
    Kunst
    Mathematik / Studium
    Musik
    Philosophie
    Physik
    Recht
    Sport
    Wirtschaft & Technik



    Biographie

    Impressum

informatik artikel (Interpretation und charakterisierung)

Sprache

Unix

Entwicklung der programmiersprachen


1. Java
2. Viren



Um den Überblick über die Programmiersprachen zu vereinfachen hat man sie in Generationen unterteilt. Jede der Generationen weist für sie typische Merkmale auf. (GL=Generation Language).



Übersicht der Generationen


1. Generation (1GL)
. Maschinensprache
. Binäre Ziffernfolge auf Niveau des reinen Maschinencodes
. Hardwarearchitektur für die Programmierung entscheidend

. absolute Adressierung



2. Generation (2GL)
. Assemblersprache
. Symbolische Namen für Operanden und Operationen
. Makroprozessoren erlauben Programmierer aus mehreren Befehlen eine Funktion zu erstellen
. Ermöglichen optimale Ausnutzung der Hardware



3. Generation (3GL)
. Höhere, problemorientierte Sprache

. Portabilität zu anderen Systemen

. Strukturierte Programmstrukturen

. Programm besteht aus 2 Teilen:
. Deklaration von Daten

. Aktionen zur Manipulation der Daten
. Maschinenunabhängig
. Sourcecodereduktion gegenüber Assembler um bis zu 85%
. Wichtiger Grundstock für die 3. Generation war die Entwicklung von Pascal.



4. Generation (4GL)

. Deklarative Programmiersprachen
. Deskriptive Programmierung
. Softwareunterstütze Entwicklungsumgebung
. Transaktionsorientierte Datenelemente



5. Generation (5GL)

. Objektorientierte Sprachen
. Entwicklung eigener Sprachelemente durch den Entwickler
. Programmierer entwickelt Objekte, Methoden und abgeleitete Objekte
. Funktionale und

. Logische Sprachen







Erläuterung der Generationen

1. Generation (1GL)



Maschinensprache wurde ab 1950 eingesetzt und ist jene Sprache die vom Computer direkt "verstanden" wird. Es handelt sich dabei um numerisch verschlüsselte Befehle, die als binäre Information in den Computer eingegeben werden.



Vorteile Nachteile

. Schnell
. für zeitkritische Anwendungen geeignet

. nicht portabel
. schwer lesbar und unübersichtlich
. pro Instruktion nur ein kleiner Verarbeitungsschritt
. zeitaufwendige Programmierung: teuer

2. Generation (2GL)

Assemblersprachen sind nur eine Vereinfachung der Maschinensprache. Die binären Befehle der Maschinensprache werden durch symbolische, "sprechende" Operationen ersetzt.
Makroprozessoren sorgen dafür, dass eine Funktion, die aus mehreren Befehlen besteht, in diese zerlegt und für den Aufruf vorbereitet werden.
Erstmals besteht die Möglichkeit Programme zu teilen, diese Teile getrennt zu übersetzen und später mittels Binder und Bindelader zusammenzufügen. Man kann hier die ersten Ansätze zur Modularisierung sehen.
Eine weitere Neuerung ist der Einsatz von symbolischen Adressen und Sprungmarken.


Vorteile Nachteile
. schnell

. schon strukturierter
. Ansätze zur Modularität
. optimale Hardwareausnutzung . Hardwarespezifisch
. zeitaufwendige Programmierung

. unübersichtlich




3. Generation (3GL)



Auch Höhere / Problemorientierte Sprachen genannt. Symbolische Zusammen-fassung von Maschinensprachbefehlen und von den Adressen der Datenfelder. Dadurch verkürzt sich der Sourcecode um bis zu 85%.

Einführung von Wiederholungsanweisungen und Selektionen (IF) sowie die Mehrfachauswahl usw. kennzeichnen diese Generationen.

Da diese Sprachen der menschlichen Sprache (Englisch) sehr ähnlich sind (z.B. if, else, print) wurden die Programmiersprachen besser lesbar und leicht erlernbar.

Diese Sprachen können externe Prozeduren in Assembler, Maschinensprache oder anderen Sprachen aufrufen.

Sie werden entweder mit einem Compiler kompiliert oder mit Hilfe eines Interpreters ausgeführt.

Diese Sprachen haben einen prozeduralen Aufbau: Das Programm beschreibt die Programmschritte zur Aufgabenentwicklung. Dem Computer wird gesagt, wie er etwas tun muß, um das Ziel zu erreichen.

Vorteile gebenüber Assembler Nachteile

. leicht lesbar
. leicht erlernbar

. gut zu strukturieren
. leicht zu warten

. systemunabhängig
. Sourcecodeverminderung um 85% . Programme benötigen mehr Speicher
. Programme benötigen mehr Maschinenzeit


4. Generation (4GL)

Diese Art von Programmiersprachen sind nicht mehr Prozedur - orientiert.
Man sagt dem Programm nicht mehr wie es etwas tun soll, sondern was man von ihm haben/wissen will - WAS, nicht WIE! (Deklarative Sprache).

Sie sind in der Syntax den natürlichen Sprachen näher als andere Programmiersprachen. Die Befehlsstruktur oder Syntax gibt nicht vor wie etwas gemacht werden soll sondern was geschehen soll. Einige dieser GL-Sprachen bauen auf das Relationenmodell auf und wurden daher für die Verwendung in Datenbanken konzipiert.
Für die Entwicklung von Programmen wurden zusätzliche Tools geschaffen. Softwareunterstützte Ableitungen von ER-Diagrammen zu SQL Statements oder Data Dictionarys.
Vertreter dieser Genration sind: Informix, Progress, Clipper, DBASE


Vorteile Nachteile

. portabel
. Leicht zu Programmieren

. Datenbankunabhängig
. Oberflächen für die Erschaffung von Datenbankstrukturen
. Sourcecodereduktion um weitere 70% . Teurere Hardware
. Geschwindigkeitseinbußen





5. Generation (5GL)



Sie sind ebenfalls nicht prozdural. Sie ermöglichen eine Kommunikation mit "Wissensquellen" wie z.B. Datenbanken oder Expertensystemen.

Sie sollen so exakt wie möglich der menschlichen Sprache entsprechen. Der Benutzer braucht keine Kenntnisse einer speziellen Grammatik, Vokabel oder Syntax. Künstliche Intelligenz soll es dem Computer ermöglichen die Abfrage zu verstehen und zu beantwrorten. Man kann diese Sprachen in 3 Kategorien einteilen:



Logische Sprachen

Bei logischen Sprachen werden bei der Programmierung Ausdrücke aus der Prädikatenlogik verwendet.

Eine Bierflasche ist eine Flasche.

Mit dem Flaschenöffner kann man eine Flasche öffnen.

Öffne die Bierflasche.

Die Programmiersprache weiß, dass eine Flasche mit dem Flaschenöffner geöffnet werden kann. Sie weiß auch, daß die Bierflasche eine Flasche ist. So kann durch Backtracking ermittelt werden, was zu tun ist.

z.B: Prolog







Funktionale Sprachen

Listen bzw. Funktionen orientierte Sprachen.

z.B: LISP



Objektorientierte Sprachen



Der Entwickler erstellt seine eigenen Objekte mit einer Datenstruktur und Methoden um sie zu manipulieren. Diese Methoden und Eigenschaften können an neue Objekte weitervererbt werden.

Vertreter: C++, SMALLTALK, Java





Vorteile Nachteile
. Datenkapselung durch private, protected und private
. Überladen von Operatoren

. Strukturiert
. Eigene erschaffene Objekte
. Methoden für die Manipulation der Objekte . Speicheraufwendig . langsam

 
 




Datenschutz

Top Themen / Analyse
Weitere Tips
NetBEUI (NetBIOS Extended User Interface)
Andere Dateisysteme kurz vorgestellt:
IEEE 802.8: FDDI (Fiber Distributed Data Interface)
Das Domänenkonzept von Windows
Grabben:
Flachbildschirme
Die Kopierdämpfung (Kopiereffekt)
Effekte:
Die Befehle INC und DEC





Datenschutz

Zum selben thema
Netzwerk
Software
Entwicklung
Windows
Programm
Unix
Games
Sicherheit
Disk
Technologie
Bildung
Mp3
Cd
Suche
Grafik
Zahlung
Html
Internet
Hardware
Cpu
Firewall
Speicher
Mail
Banking
Video
Hacker
Design
Sprache
Dvd
Drucker
Elektronisches
Geschichte
Fehler
Website
Linux
Computer
A-Z informatik artikel:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z #

Copyright © 2008 - : ARTIKEL32 | Alle rechte vorbehalten.
Vervielfältigung im Ganzen oder teilweise das Material auf dieser Website gegen das Urheberrecht und wird bestraft, nach dem Gesetz.