Vorbestelltes Wort

Vorbestellte Wörter (gelegentlich genannte Schlüsselwörter) sind ein Typ der grammatischen Konstruktion auf Programmiersprachen. Diese Wörter haben spezielle Bedeutung innerhalb der Sprache und werden in den formellen Spezifizierungen der Sprache vorherbestimmt. Gewöhnlich schließen vorbestellte Wörter Etiketten für primitive Datentypen auf Sprachen ein, die ein Typ-System unterstützen, und Programmierkonstruktionen wie Schleifen, Blöcke, conditionals, und Zweige identifizieren.

Die Liste von vorbestellten Wörtern auf einer Sprache wird definiert, wenn eine Sprache entwickelt wird. Gelegentlich, abhängig von der Flexibilität der Sprachspezifizierung, können Verkäufer, die einen Bearbeiter durchführen, die Spezifizierung durch das Umfassen von Sondereigenschaften erweitern. Außerdem, da eine Sprache reif wird, können Standardkörper, eine Sprache regelnd, beschließen, die Sprache zu erweitern, um zusätzliche Eigenschaften wie objektorientierte Fähigkeiten auf einer traditionell verfahrensrechtlichen Sprache einzuschließen. Manchmal wird die Spezifizierung für eine Programmiersprache Wörter vorbestellt haben, die für den möglichen Gebrauch in zukünftigen Versionen beabsichtigt sind. In Java, und sind vorbestellte Wörter — sie haben keine Bedeutung in Java, aber sie können auch als Bezeichner nicht verwendet werden. Durch "das Aufbewahren" der Begriffe können sie in zukünftigen Versionen Javas, wenn gewünscht, durchgeführt werden, ohne älteren javanischen Quellcode "zu brechen". Vorbestellte Wörter dürfen vom Programmierer, verschieden von vorherbestimmten Funktionen, Methoden oder Unterprogrammen nicht wiederdefiniert werden, die häufig in etwas Kapazität überritten werden können. Der Name einer vorherbestimmten Funktion, Methode oder Unterprogramms wird normalerweise als ein Bezeichner statt eines vorbestellten Wortes kategorisiert.

Vorbestelltes Wort gegen das Schlüsselwort

Ein Schlüsselwort ist ein Wort, das nur in bestimmten Zusammenhängen speziell ist, aber ein vorbestelltes Wort ist ein spezielles Wort, das als ein benutzerbestimmter Name nicht verwendet werden kann.

Die "javanische Sprachspezifizierung" gebraucht den Begriff "Schlüsselwort".

Der ISO 9899 Standard für die C Programmiersprache gebraucht den Begriff "Schlüsselwort".

Vergleich durch die Sprache

Nicht alle Sprachen haben dieselben Zahlen von vorbestellten Wörtern. Zum Beispiel hat Java (und andere C Ableitungen) eine ziemlich spärliche Ergänzung von vorbestellten Wörtern — etwa 50 - wohingegen COBOL etwa 400 hat. Am anderen Ende des Spektrums hat reine Einleitung niemanden überhaupt.

Die Zahl von vorbestellten Wörtern auf einer Sprache ist wenig verbunden, wie "stark" eine Sprache ist. COBOL wurde in den 1950er Jahren als eine Geschäftssprache entworfen und wurde gemacht, sprechende verwendende einem Englisch ähnliche Strukturelemente wie Verben, Klauseln, Sätze, Abteilungen und Abteilungen zu sein. C wurde andererseits geschrieben (um syntaktisch) sehr knapp zu sein und mehr Text auf dem Schirm zu bekommen. Vergleichen Sie zum Beispiel die gleichwertigen Blöcke des Codes von C und COBOL, um wöchentlichen Ertrag zu berechnen:

//Berechnung in C:

wenn (festbezahlt)

,

belaufen Sie sich = 40 * payrate;

sonst

belaufen Sie sich = Stunden * payrate;

</Quelle>

  • Berechnung im COBOL:

WENN festbezahlt, DANN

MULTIPLIZIEREN SIE Payrate MIT 40 GEBEN-Betrag

SONST

MULTIPLIZIEREN SIE Payrate VOR Stunden, Betrag GEBEND

ENDE - WENN.

</Quelle>
  • Anderes Beispiel der Berechnung im COBOL:

WENN festbezahlt

,

SCHÄTZEN SIE Betrag = Payrate * 40

SONST

SCHÄTZEN SIE Betrag = Stunden * payrate

ENDE - WENN.</Quelle>

Reine Einleitungslogik wird in Bezug auf Beziehungen ausgedrückt, und Ausführung wird durch das Laufen von Abfragen über diese Beziehungen ausgelöst. Konstruktionen wie Schleifen werden mit rekursiven Beziehungen durchgeführt.

Alle drei dieser Sprachen können dieselben Typen von "Problemen" lösen, wenn auch sie sich unterscheidende Zahlen von vorbestellten Wörtern haben. Diese "Macht" bezieht sich auf ihr Gehören dem Satz von Turing-ganzen Sprachen.

Vorbestellte Wörter und Sprachunabhängigkeit

Die.NET Spezifizierung von Common Language Infrastructure (CLI) des Microsofts erlaubt Code, der in 40 + verschiedene Programmiersprachen geschrieben ist, zusammen in ein Endprodukt verbunden zu werden. Wegen dessen können Wortkollisionen des Bezeichners/vorbestellen vorkommen, wenn auf einer Sprache durchgeführter Code versucht, auf einer anderen Sprache geschriebenen Code durchzuführen. Zum Beispiel kann ein Visueller Basic.NET Bibliothek eine Klassendefinition enthalten wie:

'Klassendefinition davon im grundlegenden visuellen. NETZ:

Öffentliche Klasse dieser

'Diese Klasse tut etwas...

Endklasse

</Quelle>

Wenn das kompiliert und als ein Teil eines Werkzeugkastens, C# verteilt wird, würde Programmierer, mögend eine Variable des Typs "" definieren auf ein Problem stoßen: Ist ein vorbestelltes Wort in C#. So wird der folgende in C#: nicht kompilieren

//Das Verwenden dieser Klasse in

C#:

dieser x = neu das ;//Wird nicht kompilieren!

</Quelle>

Ein ähnliches Problem entsteht, wenn es auf Mitglieder zugreift, virtuelle Methoden überreitend, und sich namespaces identifizierend.

Um um dieses Problem zu arbeiten, erlaubt die Spezifizierung dem Programmierer dem (in C#) legen den am Zeichen vor dem Bezeichner, der es zwingt, als ein Bezeichner aber nicht ein vorbestelltes Wort durch den Bearbeiter betrachtet zu werden.

//Das Verwenden dieser Klasse in C#:

@this x = neuer @this ;//Wird kompilieren!

</Quelle>

Für die Konsistenz wird dieser Gebrauch auch in nichtöffentlichen Einstellungen wie lokale Variablen, Parameter-Namen und private Mitglieder erlaubt.

Außenverbindungen


Kernmüllkippe / Amerikanischer Bison
Impressum & Datenschutz