Выпуск jsii 1.31, генератора кода C#, Go, Java и Python из TypeScript

Материал из Викиновостей, свободного источника новостей

10 июля 2021 года

Компания 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]

Источники[править]


Creative Commons
Creative Commons
Эта статья содержит материалы из статьи «Выпуск jsii 1.31, генератора кода C#, Go, Java и Python из TypeScript», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
Эта статья загружена автоматически ботом NewsBots и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии[править]

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.