Amazon wis nerbitake kompiler jsii 1.31, yaiku modifikasi kompiler TypeScript sing ngidini sampeyan ngekstrak informasi API saka modul sing dikompilasi lan ngasilake perwakilan universal API iki kanggo ngakses kelas JavaScript saka aplikasi ing macem-macem basa program. Kode proyek ditulis ing TypeScript lan disebarake miturut lisensi 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]
Source: opennet.ru