Amazon์ ์ปดํ์ผ๋ ๋ชจ๋์์ API ์ ๋ณด๋ฅผ ์ถ์ถํ๊ณ ๋ค์ํ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ก ์ ํ๋ฆฌ์ผ์ด์ ์์ JavaScript ํด๋์ค์ ์ก์ธ์คํ๊ธฐ ์ํด ์ด API์ ๋ฒ์ฉ ํํ์ ์์ฑํ ์ ์๊ฒ ํด์ฃผ๋ TypeScript ์ปดํ์ผ๋ฌ์ ์์ ๋ฒ์ ์ธ jsii 1.31 ์ปดํ์ผ๋ฌ๋ฅผ ์ถ์ํ์ต๋๋ค. ํ๋ก์ ํธ ์ฝ๋๋ TypeScript๋ก ์์ฑ๋์์ผ๋ฉฐ Apache 2.0 ๋ผ์ด์ ์ค์ ๋ฐ๋ผ ๋ฐฐํฌ๋ฉ๋๋ค.
Jsii๋ฅผ ์ฌ์ฉํ๋ฉด ๋์ผํ API๋ฅผ ์ ๊ณตํ๋ ์ด๋ฌํ ์ธ์ด์ ๋ํ ๊ธฐ๋ณธ ๋ชจ๋๋ก ๋ณํํ์ฌ C#, Go, Java ๋ฐ Python์ ํ๋ก์ ํธ์์ ์ฌ์ฉํ ์ ์๋ TypeScript์์ ํด๋์ค ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์์ฑํ ์ ์์ต๋๋ค. ๋๊ตฌ๋ AWS Cloud Development Kit์์ ๋จ์ผ ์ฝ๋ ๊ธฐ๋ฐ์ผ๋ก ๊ตฌ์ถ๋ ๋ค์ํ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์ฉ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ ๊ณตํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค.
์ ๋ฆด๋ฆฌ์ค์๋ ์ค๊ฐ ์ฝ๋ ํํ์ด ํฌํจ๋ ".jsii" ํ์ผ์ ํ๋ ์ด์์ ๋์ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ก ์์ญํ ์ ์๋ "jsii-rosetta transliterate" ๋ช ๋ น์ด ์ถ๊ฐ๋ ์ ์ด ์ฃผ๋ชฉํ ๋งํฉ๋๋ค.
์๋ฅผ ๋ค์ด JavaScript/TypeScript ์ฝ๋๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ๋ฉด ๋ค์๊ณผ ๊ฐ์ต๋๋ค. import 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]); } ๋ฐํ ๋ฐฐ์ด[์ซ์]; } }
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]) ํ
์ด๋ธ[n] ๋ฐํ
์ถ์ฒ : opennet.ru