Έκδοση jsii 1.31, μια γεννήτρια κώδικα C#, Go, Java και Python από το TypeScript

Η Amazon δημοσίευσε τον μεταγλωττιστή jsii 1.31, ο οποίος είναι μια τροποποίηση του μεταγλωττιστή TypeScript που σας επιτρέπει να εξάγετε πληροφορίες API από μεταγλωττισμένες μονάδες και να δημιουργήσετε μια καθολική αναπαράσταση αυτού του API για πρόσβαση σε τάξεις JavaScript από εφαρμογές σε διάφορες γλώσσες προγραμματισμού. Ο κώδικας του έργου είναι γραμμένος σε TypeScript και διανέμεται με την άδεια Apache 2.0.

Το Jsii καθιστά δυνατή τη δημιουργία βιβλιοθηκών κλάσεων στο TypeScript που μπορούν να χρησιμοποιηθούν σε έργα σε C#, Go, Java και Python μεταφράζοντας σε εγγενείς μονάδες για αυτές τις γλώσσες που παρέχουν το ίδιο API. Το Tooling χρησιμοποιείται στο AWS Cloud Development Kit για την παροχή βιβλιοθηκών για διαφορετικές γλώσσες προγραμματισμού, κατασκευασμένες από μια ενιαία βάση κώδικα.

Η νέα έκδοση είναι αξιοσημείωτη για την προσθήκη της εντολής "jsii-rosetta transliterate", η οποία σας επιτρέπει να μεταφράζετε αρχεία ".jsii" με ενδιάμεση αναπαράσταση κώδικα σε μία ή περισσότερες γλώσσες προγραμματισμού στόχου.

Για παράδειγμα, με βάση τον κώδικα JavaScript/TypeScript: export class HelloWorld { public sayHello(name: string) { return `Hello, ${name}`; } δημόσιο fibonacci(αριθμός: αριθμός) { let array = [0, 1]; for (έστω i = 2; i < num + 1; i++) { array.push(array[i - 2] + array[i - 1]); } επιστρέφει πίνακας[αριθμός]; } }

Το jsii θα δημιουργήσει κώδικα Python: class HelloWorld: def say_hello(self, name): return 'Hello, ' + name def fibonacci(self, n): πίνακας = [0, 1] για i στην περιοχή (2, n + 1) : table.append(table[i - 2] + table[i - 1]) return table[n]
Πηγή: opennet.ru

Προσθέστε ένα σχόλιο