Μια απλή εισαγωγή στο Typescript

Μια σύντομη εισαγωγή σε ορισμένες έννοιες του Typescript

Μεταγλωττιστής TypeScript

Ο μεταγλωττιστής TypeScript είναι ένα πρόγραμμα JavaScript που μετατρέπει τον κώδικα TypeScript σε απλό κώδικα JavaScript. Είναι γραμμένο σε TypeScript και μπορεί να εκτελεστεί σε οποιαδήποτε πλατφόρμα υποστηρίζει JavaScript. Ο μεταγλωττιστής TypeScript είναι ανοιχτού κώδικα και διαθέσιμος στο GitHub. Ο μεταγλωττιστής αναπτύσσεται και διατηρείται από τη Microsoft και μπορεί να χρησιμοποιηθεί από τη γραμμή εντολών ή μπορεί να χρησιμοποιηθεί ως πρόσθετο για δημοφιλή IDE όπως το Visual Studio και το WebStorm.

Ο μεταγλωττιστής TypeScript μπορεί να εκπέμπει κώδικα JavaScript που είναι συμβατός με διαφορετικούς χρόνους εκτέλεσης JavaScript, όπως Node.js, Internet Explorer και Chrome. Μπορεί επίσης να δημιουργήσει χάρτες πηγής, οι οποίοι αντιστοιχίζουν τον κώδικα JavaScript που δημιουργήθηκε πίσω στον κώδικα TypeScript. Αυτό επιτρέπει τον εντοπισμό σφαλμάτων του κώδικα TypeScript στο πρόγραμμα περιήγησης.

Ο μεταγλωττιστής μπορεί να ρυθμιστεί ώστε να ελέγχει για σφάλματα τύπου και θα αναφέρει σφάλματα εάν εντοπιστούν. Ο έλεγχος τύπου μπορεί να απενεργοποιηθεί εάν το επιθυμείτε. Ο μεταγλωττιστής TypeScript είναι διαθέσιμος με την άδεια ανοιχτού κώδικα Apache 2.0.

Δεν είναι μια γλώσσα με έντονη πληκτρολόγηση

Το Typescript δεν είναι μια γλώσσα με έντονα πληκτρολόγιο επειδή δεν απαιτεί να δηλώνονται μεταβλητές με συγκεκριμένο τύπο. Αυτό σημαίνει ότι μια μεταβλητή μπορεί να δηλωθεί ως ένας τύπος και στη συνέχεια να εκχωρηθεί εκ νέου σε μια τιμή άλλου τύπου. Αυτό μπορεί να οδηγήσει σε σφάλματα εάν η μεταβλητή χρησιμοποιείται με τρόπο που δεν είναι συμβατός με τον τύπο που έχει δηλωθεί ως.

Ένα βασικό παράδειγμα για την επεξήγηση αυτού του χαρακτηριστικού μπορεί να παρουσιαστεί με τον τύπο "οποιοδήποτε".

// We initialze the variable as a string.
const something: any = "Tom";

// Now it's a number. This is valid TypeScript code.
something = 42;

Μεταγλώττιση TypeScript σε JavaScript

Ο μεταγλωττιστής TypeScript παίρνει τον κώδικα TypeScript και τον μετατρέπει σε απλό κώδικα JavaScript. Αυτή η διαδικασία είναι γνωστή ως μεταμόσχευση. Ο μεταγλωττιστής αναλύει πρώτα τον κώδικα TypeScript, ο οποίος ελέγχει για συντακτικά σφάλματα. Εάν δεν εντοπιστούν σφάλματα, ο μεταγλωττιστής ελέγχει για σφάλματα τύπου. Εάν εντοπιστούν σφάλματα τύπου, ο μεταγλωττιστής θα τα αναφέρει και θα βγει.

Εάν δεν βρεθούν σφάλματα τύπου, ο μεταγλωττιστής θα συνεχίσει και θα εκπέμψει τον κώδικα JavaScript. Ο κώδικας JavaScript που εκπέμπεται θα είναι συμβατός με τον καθορισμένο χρόνο εκτέλεσης JavaScript-στόχου.

Ο μεταγλωττιστής TypeScript μπορεί επίσης να δημιουργήσει χάρτες πηγής, οι οποίοι αντιστοιχίζουν τον κώδικα JavaScript που δημιουργήθηκε πίσω στον κώδικα TypeScript. Αυτό επιτρέπει τον εντοπισμό σφαλμάτων του κώδικα TypeScript στο πρόγραμμα περιήγησης.

Διακομιστής γλώσσας TypeScript

Ο διακομιστής γλώσσας TypeScript είναι ένας διακομιστής γλώσσας που παρέχει δυνατότητες όπως συμπλήρωση κώδικα, μετάβαση στον ορισμό και έλεγχο τύπου για έργα TypeScript.

Ο διακομιστής γλώσσας απαιτείται για να μπορεί ο μεταγλωττιστής TypeScript να παρέχει αυτές τις δυνατότητες. Χωρίς τον διακομιστή γλώσσας, ο μεταγλωττιστής TypeScript θα μπορούσε να παρέχει μόνο βασικές δυνατότητες, όπως επισήμανση σύνταξης και μορφοποίηση κώδικα. Ο διακομιστής γλώσσας TypeScript είναι ανοιχτού κώδικα και είναι διαθέσιμος στο GitHub.

Βήματα για τη δημιουργία ενός έργου TypeScript

Πριν από την περιγραφή των βημάτων, ακολουθεί η εντολή για την προετοιμασία ενός έργου TypeScript στο τερματικό σας.

npx tsc --init

Περιγραφή: Εγκαταστήστε τον μεταγλωττιστή TypeScript. Δημιουργήστε ένα αρχείο tsconfig.json στη ρίζα του έργου. Αυτό το αρχείο περιέχει τις επιλογές μεταγλωττιστή για τον μεταγλωττιστή TypeScript. Προσθέστε τον κατάλογο src στο αρχείο tsconfig.json. Εδώ θα βρίσκονται τα αρχεία πηγής TypeScript.

Προσθέστε ένα αρχείο main.ts στον κατάλογο src. Αυτό είναι το σημείο εισόδου για το πρόγραμμα TypeScript. Μεταγλωττίστε τον κώδικα TypeScript εκτελώντας το tsc από τη γραμμή εντολών. Αυτό θα δημιουργήσει τα αρχεία JavaScript στον κατάλογο src. Εκτελέστε το πρόγραμμα TypeScript εκτελώντας το node main.js από τη γραμμή εντολών.

Διαφορές μεταξύ TypeScript και JavaScript

Υπάρχουν μερικές βασικές διαφορές μεταξύ της TypeScript και άλλων γλωσσών με έντονη πληκτρολόγηση: Η TypeScript είναι ένα υπερσύνολο JavaScript, που σημαίνει ότι οποιοσδήποτε έγκυρος κώδικας JavaScript είναι επίσης έγκυρος κώδικας TypeScript. Αυτό καθιστά εύκολη την υιοθέτηση για υπάρχοντα έργα JavaScript.

Το TypeScript χρησιμοποιεί ένα σύστημα προαιρετικού τύπου, που σημαίνει ότι μπορούν να καθοριστούν τύποι για μεταβλητές, αλλά δεν απαιτείται. Άλλες γλώσσες με έντονη πληκτρολόγηση, όπως η Swift και η Kotlin, χρησιμοποιούν ένα σύστημα υποχρεωτικού τύπου, το οποίο απαιτεί όλες οι μεταβλητές να δηλώνονται με έναν συγκεκριμένο τύπο.

Το TypeScript υποστηρίζει γενικά, τα οποία επιτρέπουν συλλογές ασφαλούς τύπου και άλλες δομές δεδομένων. Αυτό δεν είναι διαθέσιμο σε JavaScript.

Πότε πρέπει να χρησιμοποιήσω Javascript αντί για Typescript για κωδικοποίηση;

Δεν υπάρχει σκληρός κανόνας για το πότε να χρησιμοποιείτε JavaScript ή TypeScript. Εναπόκειται στον προγραμματιστή να επιλέξει το κατάλληλο εργαλείο για τη δουλειά. Ωστόσο, υπάρχουν μερικές γενικές οδηγίες που μπορούν να ακολουθηθούν.

Εάν ένα έργο είναι ήδη γραμμένο σε JavaScript, είναι συνήθως καλύτερο να συνεχίσετε να χρησιμοποιείτε JavaScript. Δεν χρειάζεται να μετατρέψετε τον κώδικα σε TypeScript μόνο και μόνο για χάρη της χρήσης TypeScript. Αλλά να έχετε κατά νου ότι η συντήρηση ενός έργου JavaScript μπορεί να είναι πιο δύσκολη λόγω της έλλειψης συστήματος τύπου που οδηγεί σε κρυφά σφάλματα. Επομένως, είναι καλύτερο να εξετάσετε το ενδεχόμενο να υιοθετήσετε το TypeScript εάν το έργο θα συντηρηθεί (και θα επεκταθεί) στο μέλλον.

Εάν ένα έργο ξεκινά από την αρχή, είναι συνήθως καλύτερο να χρησιμοποιήσετε το TypeScript. Αυτό θα επιτρέψει την καλύτερη οργάνωση και συντήρηση του κώδικα μακροπρόθεσμα.

Απλά παραδείγματα

// TypeScript.
class Person {
  name: string;
  age: number;
}

const person: Person = new Person();
const person.name = "Tom";
const person.age = 42;

// JavaScript.
var Person = function() {};
Person.prototype.name = "";
Person.prototype.age = 0;

// TypeScript.
// Here's we're also using the class, but this
// time conforming to an interface, something that
// doesn't exist in JavaScript.
interface IPerson {
  name: string;
  age: number;
}

class Person implements IPerson {
  name: string;
  age: number;
}

// JavaScript.
var IPerson = function() {};
IPerson.prototype.name = "";
IPerson.prototype.age = 0;

var Person = function() {};
Person.prototype = Object.create(IPerson);

Κλείνοντας λέξεις

Η TypeScript είναι μια ισχυρή γλώσσα που μπορεί να βοηθήσει στη βελτίωση της ποιότητας του κώδικά σας. Είναι εύκολο να ξεκινήσετε και μπορεί να χρησιμοποιηθεί σε οποιαδήποτε πλατφόρμα που υποστηρίζει JavaScript. Αυτό το άρθρο έδωσε μόνο μια πολύ σύντομη εισαγωγή, καθώς η γλώσσα παρέχει πολύ περισσότερα χαρακτηριστικά και έννοιες για εκμάθηση τώρα.

Ελέγξτε τους συνδέσμους στο προσάρτημα στο τέλος της σελίδας για χρήσιμο εκπαιδευτικό υλικό.

Προτάσεις

Σχετικά

Προσάρτημα

Γλώσσες