Кроссплатформенная раработка мобильных приложений
А теперь про фреймворки: изучал этот вопрос когда хотел написать игрушку для развлечения. сервер я быстро налабал, а вот сделать что-то кросплафторменное для мобильного - эта задача меня и убила. Выбирали мы фреймворк вместе с моим коллегой который в качестве небольшого приработка по вечерам лабает приложения для айпадов на objective-C. Во-первых под айдевайсы реально писать приложения только под макосью. Если ты делаешь кросплатформенное и отлаживаешься в основном под андройдом то в целом для доводки приложения под ios можно обойтись и хакинтошем или виртуалкой с макосью. В целом не сильно большая проблема.
А вот что реальная проблема это то что все эти фреймворки тормознутые. Мы попробовали cocos, titanium и корона. Набросали простейшее приложение где можно таскать квадратик по экрану. Долго стартуют, подлагивают, память жрут.
Ещё хотели но не успели qt - по идее он должен быть лишен этих недостатков. Ну и говорят xamarin под андроид компилируется в байткод нативный - должно быть тоже производительно. Ну и сейчас вроде активно развивается http://godoc.org/golang.org/x/mobile - может там будет всё хорошо.
Но хочется прошариться и сделать одно приложение.Выбор технологии сильно зависит от того, хочешь ли ты написать игровое или не игровое приложение.
Правильно ли я понимаю, что для разработки приложений под айфоны и айпады нужно обязательно использовать тулчейн Mac+Xcode? Если да, то можно ли как-нибудь виртуально это делать. Например, через виртуалку с макосью и в ней уже заниматься девелопментом. Или же это породит какие-то неудобства?Для компиляции можно использовать hackintosh. Но разрабатывать на виртуалке ты замучаешься.
Приложение не игровое и самый сложный момент, который я сейчас вижу - это считывание QR кода. Его хочется сделать максимально однообразно и удобно. Остальное кажется вполне тривиальным. Относительно IOS-а - получается, что можно отлаживаться на виртуалке с хакинтошем, но если приложение созреет до публикации, то его там надо будет еще подписывать. Возможно ли это на хакинтоше? Или же в итоге один хрен надо будет покупать макбук и его регать где-нибудь? Вообще не хочется что бы приложение ушло в бан, так как его собрали на хакинтоше или что-нибудь в этом роде.
Ещё хотели но не успели qt - по идее он должен быть лишен этих недостатков.На первый взгляд интересно смотрится.
Приложение не игровое и самый сложный момент, который я сейчас вижу - это считывание QR кода. Его хочется сделать максимально однообразно и удобно.Тут я не смогу дать рекомендаций. Знаю, что многие приложения получают много негативных отзывов из-за того, что не native технологии достаточно сильно тормозят. (Если бы ты писал игру, то однозначно её стоило бы сделать на Unity.)
Относительно IOS-а - получается, что можно отлаживаться на виртуалке с хакинтошем, но если приложение созреет до публикации, то его там надо будет еще подписывать. Возможно ли это на хакинтоше? Или же в итоге один хрен надо будет покупать макбук и его регать где-нибудь? Вообще не хочется что бы приложение ушло в бан, так как его собрали на хакинтоше или что-нибудь в этом роде.Подписать и опубликовать можно. В бан приложение не уйдёт. Я бы на твоём месте вообще мало беспокоился на счёт iOS, почти наверняка приложение получит около тысячи скачиваний за всю историю существования. Если только твоя идея не очередной шедевр.
Я веб разработкой не занимался, но вроде жава есть под обе системы. iOS позволяет в бандл запихивать jvm, а андройд до какой-то степени совместим с жавой и конвертацией байткода решается проблема.
Ещё хотели но не успели qt - по идее он должен быть лишен этих недостатков.На Qt ничего не тормозит, очень удобно разрабатывать, но фреймворк ещё сыроват в части гуи-контролов, в сложном гуи бывают небольшие проблемы.
Мне, как человеку избалованному высокоуровневыми и простыми питонами, джаваскриптами и рубями, очень тяжело писать на плюсах.
Мне, как человеку избалованному высокоуровневыми и простыми питонами, джаваскриптами и рубями, очень тяжело писать на плюсах.Весь гуй в Qt сейчас пишется на диалекте JS. Да и в целом современный Qt\c++ ненамного сложней питона.
Весь гуй в Qt сейчас пишется на диалекте JS.Когда запилят http://www.npmjs.com/package/react-qml то вообще норм будет
Когда запилят http://www.npmjs.com/package/react-qml то вообще норм будетНе вижу особого смысла в этой библиотеке. Норм будет только тем, кто привык на реакте писать. На чистом QML всё это же пишется легче и читабельней.
Основная проблема - фреймворк заточен под разработку игр и нету поддержки нативного гуя (для игр, как правило пишется собственный гуй, не использующий нативные контролы)
Плюсы: один код под все платформы (ну может надо будет немного подпилить под каждую, но реально немного много возможностей, производительность
Короче, если пилишь игру и собственный движок, то альтернатив нету.
Короче, если пилишь игру и собственный движок, то альтернатив нету.Не читал, но осуждаю? =)
Qt - вполне себе неплохая альтернатива, для написания игр тоже подходит.
Qt - вполне себе неплохая альтернатива, для написания игр тоже подходит.а всякие модули для работы с GameCenter, Billing, Fb - самому писать?
хотя там вроде бы можно миксовать с++ и obj-c и юзать нативные sdk
Оставить комментарий
stm8860478
В мире форнтенда (как веб, так и мобайл) знания у меня нулевые. Но хочется прошариться и сделать одно приложение. Конечно же заморачиваться и лабать его N раз под N разные платформ желания нет, так что хочется, что бы можно было заюзать какой-нибудь фреймворк и собирать одно приложение под win, ios, android. Нагуглил это - habr. Может кто сталкивался с такими фреймворками и может сказать как оно на практике. Есть как посты радости, так и боли и отчаяния. Отдельный вопрос - IOS. Адекватного ответа на вопрос можно ли нормально разрабатываться не под маком нагуглить мне не удалось. Правильно ли я понимаю, что для разработки приложений под айфоны и айпады нужно обязательно использовать тулчейн Mac+Xcode? Если да, то можно ли как-нибудь виртуально это делать. Например, через виртуалку с макосью и в ней уже заниматься девелопментом. Или же это породит какие-то неудобства?