Компания Google представила J2ObjC, открытый транслятор из Java в Objective-C

Компания Google представила новый открытый проект J2ObjC, в рамках которого развивается транслятор, преобразующий исходные тексты на языке Java в представление на языке Objective-C, пригодное для использования в приложениях для iPhone и iPad. Код транслятора написан на языке Java и распространяется под лицензией Apache.

По задумке разработчиков, J2ObjC позволит унифицировать процесс разработки приложений на языке Java, ориентированных на использование в различных мобильных платформах. В частности, предлагается основу приложения, не связанную с обеспечением работы пользовательского интерфейса, разрабатывать на языке Java, а обвязку с реализацией интерфейса с использованием родных средств платформы. Например, базовый Java-код, определяющий логику работы приложения и методы обработки данных, может быть использован в программах для платформы Android, iOS или в web-приложениях (трансляция Java в JavaScript осуществляется при помощи инструментария GWT).

Что касается разработки для iOS, то в процессе сборки приложения компоненты на языке Java будут прозрачно транслироваться при помощи J2ObjC в код на Objective-C, позволяя сформировать итоговый проект целиком на Objective-C. J2ObjC не является эмулятором и позволяет формировать полноценные итоговые проекты на языке Objective-C, что полностью соответствует требованиям компании Apple в отношении используемых средств разработки. Интересной особенностью J2ObjC является то, что транслятор осуществляет преобразование Java-классов в соответствующие классы Objective-C, позволяя напрямую использовать iOS Foundation Framework.

В J2ObjC поддерживаются все возможности языка Java 6 и большая часть runtime-функциональности, используемой в клиентских приложениях, включая исключения, внутренние и анонимные классы, generic-типы, потоки и отражения. Также поддерживается трансляция в Objective-C и запуск тестов JUnit. Для сборки могут быть использованы штатные инструменты, такие как Xcode и Make. В рамках проекта J2ObjC не планируется предоставление унифицированного платформонезависимого тулкита для разработки пользовательского интерфейса, т.е. для создания интерфейса для iOS требуется создание обвязки на Objective-C и Objective-C++, использующей Apple iOS SDK, для Android требуется использование Android SDK, а для web-приложений - GWT.

Источник:
http://www.opennet.ru/opennews/art.shtml?num=34840

<= Назад
Комментарии
]]> ipv6 ready Kiev LUGLinux4MeНостальгияЛичный сайт skeletora ]]>