Задать вопрос
  • Занимаюсь веб-разработкой и хочу делать небольшие приложения под мобильные платформы. С чего начать?

    AMar4enko
    @AMar4enko
    Я бы посоветовал вам качественно изучить хотя бы одну технологию от и до.
    PhoneGap это тупик. Лучше не стоит, правда.
    Вот вы сделаете приложение для iPhone, реализуете там свой тулбар на css + html. В аппстор сунете, а вам пропишут reject и скажут "Друг, у нас для тулбаров нативные элементы управления есть".
    Вы начнете искать, а можно ли как-то из под PhoneGap использовать нативные элементы управления. Найдете.
    Окажется, что там нужно будет в phonegap-проектике покопаться под XCode (вы же в курсе, что вам OS X нужна будет для сборки проекта для iPhone?)
    Потом вам понадобится простенькая база данных в приложении. Вы попробуете использовать in-browser SQL database storage. Окажется, что из-за особенностей хранения данных браузером из-под PhoneGap она у вас периодически будет пропадать. Вы пойдете искать бесшовную замену, найдете. Опять надо в XCode идти проект править, чтобы он собрался правильно.
    В итоге вы вместо разработки будете искать пути решения проблем, с разработкой никак не связанных.
    Так что мой вам совет: хотите малой кровью начать делать мобильные приложения - возьмите Android и делайте на здоровье. А нервы поберегите, пригодятся.
    Ответ написан
    1 комментарий
  • Занимаюсь веб-разработкой и хочу делать небольшие приложения под мобильные платформы. С чего начать?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    1) если приложение не большое, то да, phonegap подойдет. Но сразу предупрежу что без опыта оптимизации под мобильные девайсы, ваша верстка/js скорее всего будут подтормаживать на большинстве девайсов. Правда есть еще штуки типа steroids.js, которые являются ответвлением phonegap, предоставляя возможность использовать некоторые фишки нативного ui... Правда проект этот с закрытыми исходниками, сборка происходит на их cloud сервере сразу под нужные вам платформы. Для вас это может быть плюсом, но я допустим только по этой причине не могу использовать оный проект при коммерческой разработке.

    2) phonegap ничего не конвертирует. По сути phonegap представляет собой ничто иное как отдельный компоненты webview с api для взаимодействия нативного кода и js, и набора дефолтных проектов под каждую из платформ, где уже настроено все (как грузить webview, как подключать файлики, что загружать а что нет...). Ваше же приложение будет представлять собой

    3) обязательно использовать html и css. Что оттуда вы используете - решать вам. Но вам так или иначе придется верстать. Есть правда проект для построения приложения исключительно на нативном ui, но он сырой и там не так много возможностей.

    И да, без некоторых фишек css3 вы никак не обойдетесь (css анимации, если нужны хоть какие-то плавные анимации, штуки типа bordeer-raduis... словом не так важно знать весь стандарт). А html5 это скорее dom api, а не сама спецификации разметки.

    4) нет. Вы будете реализовывать приложения смутно напоминающее web-сервис, но локальный. Почитайте про single-page apps, про angular.js... про фонгап в конце концов. web сервис вам нужен доступные по сети, только если вам нужен этот сервис (api для приложения, хранение базы данных пользователей или какого-то контента).

    Если смотреть на вашу задачу (чат), почитайте как реализуют чаты для браузеров, и перенесите это в phonegap (у вас страничка клиент находится на девайсе и подключается через websockets к серверу для обмена сообщениями).

    5) mysql нужен только для хранения каких-то данных. Нужна она вам или нет зависит от задачи. Для простого чата она не нужна.

    6) вы ни в коем случае не должны так делать. Если вы будете делать все в отрыве от phonegap и без проверки как это работает на девайсе, то в итоге вам придется потом все переделывать. phonegap-приложения разрабатываются сразу, тоесть на самых ранних этапах разработки вы должны проверять результат на девайсе. Разработка в браузере, особенно с эмуляторами, сильно упрощают процесс разработки, но уж поверьте, иногда такие забавные баги на девайсах воспроизводятся...

    7) ответ на это был приведен выше.

    Вообще больше гуглите и пробуйте. Начать писать на phonegap легко, есть миллион уроков и статей. Пробуйте и ищите. Правда возможно сначала вам стоит задаться вопросом "а надо ли это мне?".

    И да, писать phonegap приложения худо бедно юзабельные на начальном уровне во frontend-разработке довольно тяжело. Иногда кажется что некоторые вещи нативно реализовать проще.
    Ответ написан
    Комментировать