Uitgave van jsii 1.31, een C#-, Go-, Java- en Python-codegenerator van TypeScript

Amazon heeft de jsii 1.31-compiler gepubliceerd, een aanpassing van de TypeScript-compiler waarmee je API-informatie uit gecompileerde modules kunt extraheren en een universele representatie van deze API kunt genereren voor toegang tot JavaScript-klassen vanuit applicaties in verschillende programmeertalen. De projectcode is geschreven in TypeScript en gedistribueerd onder de Apache 2.0-licentie.

Jsii maakt het mogelijk om klassenbibliotheken in TypeScript te creëren die kunnen worden gebruikt in projecten in C#, Go, Java en Python door te vertalen naar native modules voor deze talen die dezelfde API bieden. In de AWS Cloud Development Kit wordt tooling gebruikt om bibliotheken voor verschillende programmeertalen te bieden, opgebouwd uit één enkele codebasis.

De nieuwe release valt op door de toevoeging van het commando "jsii-rosetta transliterate", waarmee transliteratie van ".jsii"-bestanden met tussencoderepresentatie in een of meer doelprogrammeertalen mogelijk is.

Bijvoorbeeld, gebaseerd op JavaScript/TypeScript-code: export class HelloWorld { public zegHello(naam: string) { return `Hallo, ${naam}`; } publieke fibonacci(num: getal) {let array = [0, 1]; for (laat i = 2; i < num + 1; i++) { array.push(array[i - 2] + array[i - 1]); } return array[num]; } }

jsii genereert Python-code: class HelloWorld: def zeg_hello(self, name): return 'Hallo, ' + naam def fibonacci(self, n): table = [0, 1] for i in range(2, n + 1) : tabel.append(tabel[i - 2] + tabel[i - 1]) retourneert tabel[n]
Bron: opennet.ru

Voeg een reactie