Це повністю залежить від ваших потреб
Опублікувавши свій перший додаток кілька місяців (рідний Android, керований базою даних, спокійний підключаючий додаток), я вирішив переписати свій додаток, використовуючи phonegap (оскільки я хочу клонувати додаток до iOS, тож замість того, щоб робити це в ObjC, чому б не JavaScript ?)
Коли я працював на Android, це коштувало мені, розробнику Java, 3 тижні, щоб навчитися та кодувати все з нуля. Кілька разів вдарившись головою об стіну про те, як зробити синхронізацію ListAdapter із службою Restful з мого сервера, як тематизувати програму (на мій погляд, досить складно, особливо коли мова йде про спеціальні ефекти, такі як прозорі, рамки, ... ), а також, як ефективно структурувати свою базу коду (якщо ви знайомі з Java, то виявите, що всі класи дуже тісно пов'язані між собою, оскільки саме про це пише більшість навчальних посібників)
На Фонегапі все робиться за 1 тиждень. CSS, html, з розробкою графічного інтерфейсу onsenui
та angular
зробити його так само, як завдання студента 1 курсу та тематизація - це просто шматочок. Мені не потрібно запускати його на реальному пристрої, досить використовувати браузер під час розробки, досить змінити код та оновити. Angular
забезпечує двосторонній зв'язок з DOM, і це робить величезну дивовижність під час збору та показу даних. Наприклад:
<ul ng-each="for sentence in sentences" >
<li>{{ sentence.title }} </li>
</ul>
Коли змінна sentences
змінюється (отримується з сервера), DOM також автоматично змінюється. Однак javascript - це лише javascript. Я багато разів боровся під час налагодження програми, особливо при виконанні функцій MapReduce за допомогою PouchDB (велика помилка, до якої потрібно повернутися ), і вам доведеться відстоювати її, якщо ви не можете знайти хороший плагін.cordova-sqlite-plugin
сьогоднішнього вечора), і більшу частину часу мені доводиться читати журнал, щоб з’ясувати проблему ( Інструменти Chrome і Firebug не можуть зрозуміти точку зупинки). Крім того, важко реструктуризувати свій додаток (знову ж таки javascript), тому, якщо ви не ретельно організуєте свою базу коду за першим знаком, у вас може виникнути безлад (і налагодження - це справжній біль). PhoneGap також заснований на Інтернеті, тому іноді ви почуєте, що "оскільки на цій платформі він не підтримує це бла-бла-бла" (наприклад,localStorage
Висновок За винятком обмежень веб-сховища, PhoneGap досить добре працює з простою програмою графічного інтерфейсу, керованою базою даних (і більшість програм, керованих базою даних, в даний час має простий графічний інтерфейс). Якщо ви збираєтеся розробити такий додаток, дотримуйтесь його