URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 86471
[ Назад ]

Исходное сообщение
"Компания Google представила J2ObjC, открытый транслятор из J..."

Отправлено opennews , 14-Сен-12 13:46 
Компания Google представила (http://google-opensource.blogspot.com/2012/09/j2objc-java-to...) новый открытый проект J2ObjC (https://code.google.com/p/j2objc/), в рамках которого развивается транслятор, преобразующий исходные тексты на языке Java в представление на языке Objective-C, пригодное для использования в приложениях для iPhone и iPad. Код транслятора написан на языке Java и распространяется под лицензией Apache.


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


Что касается разработки для 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.

URL: http://google-opensource.blogspot.com/2012/09/j2objc-java-to...
Новость: http://www.opennet.me/opennews/art.shtml?num=34840


Содержание

Сообщения в этом обсуждении
"Компания Google представила J2ObjC, открытый транслятор из J..."
Отправлено Rikkit , 14-Сен-12 13:46 
Это чтобы изначально для андроида писали чтоли?

"Компания Google представила J2ObjC, открытый транслятор из J..."
Отправлено Аноним , 14-Сен-12 14:03 
Поражаюсь вашей проницательности.

"Компания Google представила J2ObjC, открытый транслятор из J..."
Отправлено Vernat , 14-Сен-12 14:21 
Расстроен Вашей язвительностью

"Компания Google представила J2ObjC, открытый транслятор из J..."
Отправлено анон , 14-Сен-12 14:21 
да а потом коряво портировали под иос, что в итоге приведет к их кривости XD

"Компания Google представила J2ObjC, открытый транслятор из J..."
Отправлено Ограждение , 14-Сен-12 14:25 
Яблоко не пропустит, у них там строго, как в КНДР.

"Компания Google представила J2ObjC, открытый транслятор из J..."
Отправлено Аноним , 14-Сен-12 14:54 
Яблоко даже и не узнает.

"Компания Google представила J2ObjC, открытый транслятор из J..."
Отправлено анон , 14-Сен-12 15:09 
тогда возникает вопрос зачем гугл вкладывал в этот инструмент деньги, раз все так бесперспективно

"Компания Google представила J2ObjC, открытый транслятор из J..."
Отправлено другой аноним , 14-Сен-12 17:26 
в любой крупной компании есть "стрельнувшие" и "не стрельнувшие" проекты.  В "не стрельнувшие" тоже сначала вкладывают деньги, пока не убедятся что они "холостые" или "очень не меткие". Это без всякой привязки к этой новости, просто не надо так категорично кидаться утверждениями

"Компания Google представила J2ObjC, открытый транслятор из J..."
Отправлено анон , 14-Сен-12 17:48 
нуну, перед тем как чтото делать очевидно рассмотреть возможные варианты последствия и перспектив чем вслепую начать пилить неизвестно что, так что про стрельнувшее и нестрельнувсшее ненадо, они там наверняка 10 раз подумали что из этого получится и чем им это грозит

"Компания Google представила J2ObjC, открытый транслятор из J..."
Отправлено XoRe , 14-Сен-12 18:38 
> нуну, перед тем как чтото делать очевидно рассмотреть возможные варианты последствия и
> перспектив

Выстрелит или нет - однозначно сможет сказать только машина времени, и даже она ошибается (влияние предсказания на будущее).
Все остальное - вероятностное.

> они там наверняка 10 раз подумали что из этого получится и чем им это грозит

Подумали.
Поэтому и "стреляют")
Грубо говоря, полезность стреляния подтвердит расчет с точки зрения минимакса из теории игр.
Есть шанс потерять стоимость разработки(правда, он 100%ный).
Есть шанс получить миллиарды.


"Компания Google представила J2ObjC, открытый транслятор из J..."
Отправлено all_glory_to_the_hypnotoad , 15-Сен-12 00:17 
на счёт топика однозначно можно сказать что не выстрелит, так же, как и не выстрелил NaCl. Так же, как и не выстрелило дерьмо типа адобе эйр и хромеос вечно будет в убогом состоянии. Не нужно быть гением или провидцем чтобы это понять.

А причина очень проста - никому не нужны лишние прослойки-костыли, всё.

Особенно костыль уровня топика, который для нормальной бесшовной реализации требует окуенную кучу человеко-часов и сомнительный конечый результат.


"Компания Google представила J2ObjC, открытый транслятор из J..."
Отправлено Crazy Alex , 15-Сен-12 03:35 
> на счёт топика однозначно можно сказать что не выстрелит, так же, как
> и не выстрелил NaCl. Так же, как и не выстрелило дерьмо
> типа адобе эйр и хромеос вечно будет в убогом состоянии. Не
> нужно быть гением или провидцем чтобы это понять.
> А причина очень проста - никому не нужны лишние прослойки-костыли, всё.
> Особенно костыль уровня топика, который для нормальной бесшовной реализации требует окуенную
> кучу человеко-часов и сомнительный конечый результат.

Напомните, в каком это месте NaCl прослойка? А лучше - не несите чушь. Это ж надо - единственную технологию, позволяющую эффективно и безопасно гнать недоверенный нативный код обзывать прослойкой :-)


"Компания Google представила J2ObjC, открытый транслятор из J..."
Отправлено kurokaze , 15-Сен-12 19:25 
>на счёт топика однозначно можно сказать что не выстрелит,

Как iOS/Android разработчик смотрю на тебя как на... профана


"Компания Google представила J2ObjC, открытый транслятор из J..."
Отправлено XoRe , 17-Сен-12 19:21 
> на счёт топика однозначно можно сказать что не выстрелит,

Я в общем говорил)

> так же, как и не выстрелил NaCl.

Если все же выстрелит, согласитесь пересмотреть свою точку зрения?


"Компания Google представила J2ObjC, открытый транслятор из J..."
Отправлено Tav , 14-Сен-12 15:32 
Они могут попробовать запретить использовать транслятор. Но как они проверят?

В любом случае, лучше вообще не иметь дел с Эпплом и не разрабатывать под iOS, чем потом ныть в блоге о том, что твое прекрасное приложение забанили. А если забанили, то сам виноват, знал же с кем связался.


"Компания Google представила J2ObjC, открытый транслятор из J..."
Отправлено Ограждение , 14-Сен-12 15:36 
Ну ёёё, не транслятор распознавать будут, а всегда распознавали кривые приложения. Будет кривоту транслировать - не пропустят.
С Яблоком связываться нужно, если деньги хочешь заработать, увы и ах.

"Компания Google представила J2ObjC, открытый транслятор из J..."
Отправлено Tav , 15-Сен-12 13:27 
Зарабатывать *достаточно* можно и не связываясь с Эпплом и вообще оставаясь верным своим принципам. Зарабатывать максимально много — зачем?

"Компания Google представила J2ObjC, открытый транслятор из J..."
Отправлено kurokaze , 15-Сен-12 19:26 
> В любом случае, лучше вообще не иметь дел с Эпплом и не
> разрабатывать под iOS, чем потом ныть в блоге о том, что
> твое прекрасное приложение забанили. А если забанили, то сам виноват, знал
> же с кем связался.

Походу ты даже требования к публикуемым в аппсторе приложениям не читал. Наверняка у тебя даже нету id разработчика


"Компания Google представила J2ObjC, открытый транслятор из J..."
Отправлено XoRe , 14-Сен-12 18:39 
> да а потом коряво портировали под иос, что в итоге приведет к
> их кривости XD

Вы раскрыли тайный замысел - увеличить кривизну приложений в иосе! :)


"Компания Google представила J2ObjC, открытый транслятор из J..."
Отправлено Аноним , 14-Сен-12 17:23 
java писана на си. java опять перепиливается в каой-то си.
Где-то тут обман.

"Компания Google представила J2ObjC, открытый транслятор из J..."
Отправлено VoDA , 15-Сен-12 00:35 
Если под java называть компилятор, то он написан на самой java. Если библиотеки, то большая часть опять же java. На си только часть JVM. В JVM еще и ассемблерный код бывает, правда его постепенно выпиливают.

PS JVM может быть полностью переписана на java, только это не окупится, потому и не сделано.


"Компания Google представила J2ObjC, открытый транслятор из J..."
Отправлено evgeny_t , 14-Сен-12 17:47 
сначала гугл нае обманули оракл теперь яблоко )
android это не java
это не java это objC
)

"Компания Google представила J2ObjC, открытый транслятор из J..."
Отправлено Anon2k , 14-Сен-12 17:56 
Это выглядит определенно выгодней изначально убогого Monotouch.

"Компания Google представила J2ObjC, открытый транслятор из J..."
Отправлено A.N.Onim , 14-Сен-12 22:59 
Мне кажется, или логичнее было бы выпустить обратный транслятор (ObjC -> Java-Android)?

"Компания Google представила J2ObjC, открытый транслятор из J..."
Отправлено VoDA , 15-Сен-12 00:36 
> Мне кажется, или логичнее было бы выпустить обратный транслятор (ObjC -> Java-Android)?

Кажется. Программистов на Java много больше программистов на ObjC.


"Компания Google представила J2ObjC, открытый транслятор из J..."
Отправлено Кирилл , 18-Сен-12 14:34 
> Программистов на Java много больше программистов на ObjC.

"Программист на Java" понятие очень уж растяжимое.


"Компания Google представила J2ObjC, открытый транслятор из J..."
Отправлено Аноним , 14-Сен-12 23:11 
А есть Java2C ? Ну или хотябы Java2C++ ?

"Компания Google представила J2ObjC, открытый транслятор из J..."
Отправлено VoDA , 15-Сен-12 00:38 
> А есть Java2C ? Ну или хотябы Java2C++ ?

А зачем, если не секрет?

Компиляторы собирающие из java кода бинарь (exe) есть, только они ну очень нишевые. А преобразователь в С или С++ код какой бонус может принести?


"Компания Google представила J2ObjC, открытый транслятор из J..."
Отправлено Аноним , 15-Сен-12 12:03 
gcj

"Компания Google представила J2ObjC, открытый транслятор из J..."
Отправлено Аноним , 17-Сен-12 00:12 
Запускать бинарь там где нет жабы - чёж не понятного?

При этом С есть подо всё, но писать на нем что то внятное могут только достаточно опытные прогеры. А это дорого. На жабе же быдлокодить может любая мартышка, и это как то даже работать будет. Скрестить ежа с ужом - и нате вам профит :)


"Компания Google представила J2ObjC, открытый транслятор из J..."
Отправлено Кирилл , 18-Сен-12 14:06 
> При этом С есть подо всё, но писать на нем что то
> внятное могут только достаточно опытные прогеры. А это дорого. На жабе
> же быдлокодить может любая мартышка, и это как то даже работать
> будет. Скрестить ежа с ужом - и нате вам профит :)

Довольно предвзятое и обывательское мнение. Порог входа в деятельную разработку на Яве для новичка сейчас крайне высок. Скажем на том же Obj-С создавать что-то для iPhonе-а как раз может ну если не каждая мартышка, то через одну точно. А под Андроид писать не то чтоб сложнее -- тут вопрос не сложности самого процесса -- сложнее въехать что куда и зачем. Кривая обучения куда более крутая.


"Компания Google представила J2ObjC, открытый транслятор из J..."
Отправлено Кирилл , 18-Сен-12 14:10 
>> А есть Java2C ? Ну или хотябы Java2C++ ?
> А зачем, если не секрет?
> Компиляторы собирающие из java кода бинарь (exe) есть, только они ну очень
> нишевые. А преобразователь в С или С++ код какой бонус может
> принести?

"Бинарь" собирает любой джит. Любой, а не какие-то "ну очень нишевые решения". Любой современный ЕЕ-сервак наиболее востребованный код компилит в память в бинарь.


"Компания Google представила J2ObjC, открытый транслятор из J..."
Отправлено Кирилл , 18-Сен-12 14:01 
> А есть Java2C ? Ну или хотябы Java2C++ ?

Есть. Вот хотя бы сабж. Obj-C это Си и есть, только с присобаченным синтаксисом смолтолка.



"Компания Google представила J2ObjC, открытый транслятор из J..."
Отправлено kurokaze , 15-Сен-12 19:30 
Отлично!
Значение новости может понять только тот кто одновременно и под iOS и под Android разрабатывает.
Даже если делить проект между несколькими людьми - логику можно на java вынести - уже экономия ресурсов.
Это намного более приятный и удобный вариант чем глючные PhoneGap/Titanium


"Компания Google представила J2ObjC, открытый транслятор из J..."
Отправлено Кирилл , 18-Сен-12 12:12 
Я разрабатываю и считаю подобные приблуды абсолютно бесполезными и даже вредными.

"Компания Google представила J2ObjC, открытый транслятор из J..."
Отправлено Кирилл , 18-Сен-12 12:12 
Бесполезный костыль. Да и фаундэшэн обеспечивает только базовый функционал. Зачем его вообще упомянули? Самый верный путь это делать логику вообще не зависимой от  реализации -- хорошо проектировать, а не хвататься сразу лабать код на том, что сердцу ближе.