Выпуск 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. Інструментарый выкарыстоўваецца ў AWS Cloud Development Kit для пастаўкі бібліятэк для розных моў праграмавання, якія фарміруюцца з адной кодавай базы.

Новы выпуск адметны даданнем каманды "jsii-rosetta transliterate", які дазваляе правесці транслітарацыю файлаў ".jsii"c прамежкавым прадстаўленнем кода ў адну або некалькі мэтавых моў праграмавання.

Напрыклад, на аснове JavaScript/TypeScript-кода: export class HelloWorld { public sayHello(name: string) { return `Hello, ${name}`; } public fibonacci(num: number) { let array = [0, 1]; for (let i = 2; i < num + 1; i++) { array.push(array[i - 2] + array [i - 1]); } return array[num]; } }

jsii згенеруе Python-код: class HelloWorld: def say_hello(self, name): return 'Hello, ' + name def fibonacci(self, n): table = [0, 1] for i in range(2, n + 1) : table.append(table[i - 2] + table[i - 1]) return table[n]
Крыніца: opennet.ru

Дадаць каментар