High- Level-Sprachen Programme erstellen, die einfacher für einen Menschen zu entziffern , um Low-Level- Sprachen gegenüber , die eine Maschine leichter ausführen können, sind. Sie können durch Paradigmen , dh Klassifikationen von Abstraktionen verwendet, um die Steuerung Struktur der Sprache zu verstehen, zu klassifizieren. Programmiersprachen nicht " Abstieg " aus anderen Sprachen . Allerdings leihen Sprache Designern Konzepte und Syntax aus anderen Sprachen . Dies macht neue Sprachen einfach zu lernen, wenn Sie die grundlegenden Paradigma gemeistert haben . Sprache Typing
Der Ansatz zur Typisierung Sprache unterscheidet sich von Sprache . Typing bezieht sich auf die Klassifizierung von Daten als eine Art , und ob eine Art von Daten als eine andere Art von Daten durch ein Programm behandelt werden. Zum Beispiel ist eine beliebige Zahl , alphanumerische Zeichen oder Wahr /Falsch- Wert, der durch einen binären Wert repräsentiert. Deshalb, ohne Typisierung, könnten Sie eine juristische Ausdruck, der den Wert des Symbols berechnet "!" durch 2 geteilt . Typisierten Sprachen dies verhindern , und static- Typ -Test Sprachen eingeben , bevor das Programm ausgeführt wird , in der Regel , wenn zusammengestellt.
Zusammengestellt und Sprachen
Ausgelegt Kompilieren eine Sprache wandelt sie in Maschine Code und Compilersprachen sollen so ausgeführt werden. Im Gegensatz dazu läuft eine interpretierte Sprache , weil ein Interpreter-Programm scannt die Syntax und folgt den logischen Aufträge sie findet, ohne dass es vorher zu kompilieren. Die Unterscheidung zwischen kompilierten und interpretierten Sprachen ist vor allem eine Frage der Vorliebe des Designers Sprache - in der Theorie, jede Sprache kann entweder kompiliert oder interpretiert werden . Ausgelegt Sprachen werden auch als " Skriptsprachen. " C + + , sind die meisten BASIC-Dialekten und Common Lisp alle kompilierten Sprachen. Perl und Python sind Sprachen interpretiert. Java kombiniert beide zusammengestellt und interpretiert Paradigmen , in denen normale Java-Code in Java -Bytecode , der dann durch die Java Virtual Machine interpretiert kompiliert wird.
Deklarative vs Imperative
Programmiersprachen verkörpern kann deklarative oder imperative Paradigmen : getrieben von Computational Logic oder Ablaufsteuerung . Sprachen mit der deklarativen Paradigma entwickelt angeben, was eine Maschine leisten soll , ohne notwendigerweise die angibt, wie es getan werden sollte . Dazu gehören Sprachen widmet sich einem spezifischen Problem -Domain wie HTML und funktionalen Programmiersprachen ohne persistenten Zustand , wie Lisp . Die zwingenden Paradigma hingegen behandelt ein Programm als eine Reihe von Befehlen, die den Zustand des Programms ändern. Prozeduralen Sprachen wie C sind unerlässlich , und strukturierte Sprachen wie Java , verwenden Sie den Imperativ Stil . Einige Sprachen , wie sie in einem Makefile verwendet werden, Programme zu bauen gefunden , mit beiden deklarativen und imperativen Stilen.
Strukturierte und Object-Oriented
eine spezielle Klasse von imperativen Sprachen , strukturierte Sprachen unterteilen Programmlogik in diskrete Teilbereiche zu " Spaghetti-Code " oder zufällige Logik springt schwer zu folgen Teile des Programms zu reduzieren. Die strukturierte Vorgehensweise wurde verfestigt durch die objektorientierte Programmierung , die Code-Schnipsel in die Klassen und Methoden unterteilt. Java und C + + sind objektorientierte Programmiersprachen.
Metaprogrammierung
" Metaprogrammierung " bezieht sich auf Programme, die auf andere Programme zu handeln. Einige Sprachen sind speziell für Metaprogrammierung konzipiert. Das Make Sprache , zum Beispiel, ist eine einfache Skriptsprache, die kompiliert und ausgeführt Programme in kompilierten Sprachen wie C C + + und Python auch ausstellen Metaprogrammierung Eigenschaften .
Geschrieben