إصدار jsii 1.31 ومولد الأكواد البرمجية C# وGo وJava وPython من TypeScript

قامت أمازون بنشر مترجم jsii 1.31، وهو تعديل لمترجم TypeScript الذي يسمح لك باستخراج معلومات API من الوحدات المترجمة وإنشاء تمثيل عالمي لواجهة برمجة التطبيقات هذه للوصول إلى فئات JavaScript من التطبيقات في لغات البرمجة المختلفة. كود المشروع مكتوب بلغة TypeScript ويتم توزيعه بموجب ترخيص Apache 2.0.

يتيح Jsii إمكانية إنشاء مكتبات فئة في TypeScript يمكن استخدامها في مشاريع في C# وGo وJava وPython من خلال الترجمة إلى وحدات أصلية لهذه اللغات التي توفر نفس واجهة برمجة التطبيقات. يتم استخدام الأدوات في AWS Cloud Development Kit لتوفير مكتبات للغات البرمجة المختلفة، والتي تم إنشاؤها من قاعدة تعليمات برمجية واحدة.

يتميز الإصدار الجديد بإضافة الأمر "jsii-rosetta transliterate"، والذي يسمح لك بالترجمة الصوتية لملفات ".jsii" مع تمثيل التعليمات البرمجية المتوسطة إلى واحدة أو أكثر من لغات البرمجة المستهدفة.

على سبيل المثال، استنادًا إلى كود 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]); } إرجاع المصفوفة[num]; } }

سيقوم jsii بإنشاء كود بايثون: 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

إضافة تعليق