A Programmiersprache das nicht die Definition einer Variablen erfordert, wird als a bezeichnet locker getippte Sprache . Zum Beispiel, Perl ist ein flexibel typisierte Sprache Damit können Sie Variablen deklarieren, ohne den Typ der Variablen angeben zu müssen. Der $test-Variable , das im folgenden Beispiel entweder als Ganzzahl oder als Zeichenfolge verwendet werden kann, wird in der ersten Zeile deklariert.
Die Programmiersprache C ist ein Beispiel dafür stark typisierte Sprache , was das Gegenteil von a ist schwach typisierte Sprache .
Stark Und Lockere/schwach typisierte Programmierung Sprachen können zur Kategorisierung aller Programmiersprachen verwendet werden. Jede dieser Klassen hat Vor- und Nachteile im Bereich der Programmierung und definiert, wie streng die Programmiersprache ist.
Als Programmiersprache für Computer wird der Datentyp einer Variablen bezeichnet locker getippte Sprache . Im Vergleich zu stark typisierten Sprachen erleichtert diese Sprache die Definition von Variablen mit verschiedenen Datentypen. Ein Datentyp teilt dem Compiler im Wesentlichen mit, welche Art von Werten und Aktionen diese bestimmte Variable speichern kann.
Starke Grenzen für den variablen Datentyp sind in a nicht verfügbar locker getippte Sprache . Der Compiler dieser Art von Sprache führt die darin angegebene Operation unabhängig vom Datentyp aus, den er bei der Kompilierung enthält. Der Compiler ignoriert kleine Fehler je nach Datentyp.
Lassen Sie uns ein Beispiel verwenden, um unseren Standpunkt klarer zu machen. Angenommen, Sie erstellen eine Variable in einer lose typisierten Sprache, initialisieren sie mit einer Zahl und erklären dann, dass Sie später eine Zeichenfolge in dieser Variablen speichern möchten. Da beim Kompilieren keine Fehler ausgegeben werden, bieten lose typisierte Sprachen Ihnen die Freiheit, Werte auszutauschen.
var v1= 23; console.log(v1); /*and here, the data type of variable named v1 is changed*/ v1 ='changed'; console.log(v1);
Welche Merkmale definieren eine Sprache, die lose typisiert ist?
- Im Vergleich zu stark typisierten Sprachen bieten diese Sprachen weniger strenge Typisierungsbeschränkungen.
- Viele Datentypen werden im Laufe der Ausführung eines Programms implizit transformiert.
- Unabhängig davon, in welchem Datentyp sie sich gerade befinden, können Variablen einfach in einen anderen Datentyp konvertiert werden.
- Es ist nicht erforderlich, den Datentyp einer Variablen bei der Deklaration zu identifizieren.
- Diese Sprachen verfügen über keine Kompilierungs- oder Laufzeitprüfungen auf Verstöße gegen Datentypbeschränkungen.
Was sind die Vorteile einer locker getippten Sprache?
1. Ermöglicht Flexibilität
Im Vergleich zu stark typisierten Sprachen sind diese Sprachen weitaus flexibler. Aufgrund ihrer Flexibilität werden diese Sprachen gegenüber stark typisierten Sprachen bevorzugt, um dynamische Anwendungen zu erstellen. Die Arbeit an dynamischen Anwendungen kann für Entwickler eine Herausforderung sein, da diese Anwendungen erfordern, dass Benutzer Entscheidungen auf der Grundlage unbekannter Fakten treffen. Da sie eine Variable nicht fest mit einem bestimmten Datentyp verknüpfen, machen lose typisierte Sprachen den Umgang mit dieser Situation ziemlich einfach.
2. Auswahl bei der Programmierung
Die Freiheit, ihre eigenen Programmierregeln zu erstellen und zu manipulieren, bieten lose typisierte Sprachen wie PHP für Entwickler. Andererseits müssen sich die Entwickler eines Programms, das in einer stark typisierten Sprache geschrieben ist, strikt an die vordefinierten Regeln für die Ausführung des Programms halten.
3. Wiederverwendbarkeit des Codes
Eine Variable kann in dieser Sprache nach der Deklaration jederzeit wieder verwendet werden. Laut Entwicklern kann eine bestimmte Variable mehr als einmal zum Speichern verschiedener Datenarten verwendet werden. Bei komplexen Programmen ist es sehr nützlich, um den Code übersichtlicher und kürzer erscheinen zu lassen.
4. Schneller und mit weniger Speicherverbrauch
Diese Sprachen sind einfach und funktionieren schneller als stark typisierte Sprachen. Diese Sprachen rendern komplexe Anwendungen deutlich schneller. Sie benötigen auch weniger Speicher. Anwendungen mit Komplexität werden gerendert, da diese Sprachen es Entwicklern ermöglichen, Variablen wiederzuverwenden.
5. Einfach und wirtschaftlich
Diese Sprachen sind leicht zu erlernen und können auf jeder Plattform funktionieren. Entwickler sind aufgrund seiner Einfachheit davon angezogen. Diese Sprachen, wie PHP, sind kostenlos und unkompliziert, was sie auch kosteneffizient macht.
Was sind die Nachteile einer locker typisierten Sprache?
1. Erzielen Sie unerwartete Ergebnisse
Diese Sprachen liefern häufig überraschende Ergebnisse. Wenn einer Operation, die beispielsweise für die Verarbeitung eines ganzzahligen Datentyps konzipiert ist, eine Zeichenfolge bereitgestellt wird, ist das Ergebnis unvorhersehbar und zufällig. Entwickler müssen daher bei der Arbeit mit solchen Sprachen besondere Vorsicht walten lassen.
2. Schwierig zu debuggender Code
Im Vergleich zu stark typisierten Sprachen kann es ziemlich schwierig sein, Code in einer lose typisierten Sprache zu debuggen. Es kann ziemlich schwierig sein, den Wert zu identifizieren, der in der Variablen gespeichert ist, die das unerwartete Ergebnis erzeugt hat, da Variablen innerhalb derselben Anwendung mehrmals zugewiesen werden. Stark typisierte Sprachen bieten jedoch festgelegte Regeln und ein hohes Maß an Strenge, was die Fehlerreduzierung erleichtert.
Was sind einige Beispiele für locker typisierte Sprache?
- Perl
- PHP
- JavaScript
- VB
Was unterscheidet eine lose typisierte Sprache von einer stark typisierten Sprache?
Stark typisierte Sprache | Locker getippte Sprache |
---|---|
Es ist notwendig, den Datentyp einer Variablen anzugeben. | Es ist nicht erforderlich, den Datentyp einer Variablen anzugeben. |
Programmierflexibilität ist nicht zulässig. | Es bietet Flexibilität bei der Programmierung. |
nimmt mehr Speicher in Anspruch | Benötigt weniger Speicher |
Dies verhindert eine einfache Datentypkonvertierung. | Dies vereinfacht die Datentypkonvertierung. |
Es hat keine Flexibilität. | Es hat Flexibilität. |
Z.B. Java, C++, C, C#, Python usw | Z.B. Javascript, Typoskript, PHP usw |