Людям нравится пользоваться своими смартфонами, потому что они могут выполнять многие задачи на ходу, такие как чтение электронной почты, социальные сети, просмотр фильмов и множество других действий. Нам нравятся смартфоны, потому что у них есть много приложений, которые облегчают повседневную деятельность.
Если вы думаете о разработке для рынка мобильных приложений, важно выбрать между разработкой нативного или гибридного приложения.
Это старый вопрос, который отказывается уходить, мы подумали, что пришло время вернуться… Что лучше?
Родной над Гибридом
Создание собственных приложений означает использование родного языка платформы, Objective-C для iOS и Java для Android. Основным преимуществом нативных приложений является их производительность . Нативные приложения скомпилированы в машинный код (байт-код Dalvik под Android), который обеспечивает наилучшую производительность, которую вы можете получить с мобильного телефона.
Наилучшая производительность включает быструю и плавную анимацию, а также полный доступ к аппаратному обеспечению телефона, поддержку мультитач и новейшие API.
Нативное развитие далеко не просто. Несмотря на большое количество ресурсов, которые могут быть найдены, это не может быть понятным для всех. Поскольку код должен быть написан специально для каждой платформы, один и тот же код должен быть в значительной степени переписан с небольшим количеством возможностей для совместного использования. Логика может быть одинаковой, но язык, API и процесс разработки отличаются. Этот процесс может быть относительно длительным для сложных приложений.
Собираюсь родной
Если вы новичок в разработке для мобильных устройств и хотите создавать мобильные приложения, критичные для производительности, и / или использовать преимущества собственных API, вам понадобится хороший ресурс для изучения собственной разработки для мобильных устройств.
Давайте возьмем iOS для примера. Если вы хотите стать разработчиком iOS, сначала приобретите Mac. Вы можете написать код где угодно, но для встраивания кода в приложение необходим Mac, как и учетная запись разработчика iOS ($ 99 в год).
Вы можете получить отличное введение в Objective-C, создав собственную игру Flappy Bird в своем браузере . Хотя одно онлайн-руководство не поможет, Apple предоставляет собственный учебник, который будет полезен для начинающих и опытных разработчиков. Это руководство знакомит с дизайном приложений, структурой и реализацией кода при создании приложения ToDoList (списки ToDo, похоже, являются приложениями Hello, World! Для разработки мобильных приложений).
Что касается разработки под Android, я бы порекомендовал Learning Android, 2nd Edition от O’Reilly. Это дает хорошее представление о разработке Android при создании мобильного клиента, похожего на Twitter.
И, конечно же, SitePoint предлагает множество статей по разработке для iOS и Android !
Гибрид над родным
Гибридные приложения — это веб-приложения (или веб-страницы) в собственном браузере, такие как UIWebView
WebView
Гибридные приложения разрабатываются с использованием HTML, CSS и Javascript, а затем помещаются в собственное приложение с использованием таких платформ, как Cordova . Это позволяет вам использовать любой веб-фреймворк по вашему желанию, и их множество.
Разработка приложений происходит быстрее, проще , быстрее и приложение проще в обслуживании. Вы можете менять платформы в любое время, когда вам нужно. Cordova позволяет создавать приложения для более чем одной платформы, просто добавив строку кода. Что касается аппаратного обеспечения телефона, такого как камера или Bluetooth, Cordova имеет большой репозиторий плагинов, которые вы можете использовать.
Основная проблема с гибридными приложениями заключается в том, что они по-прежнему зависят от собственного браузера, что означает, что они не так быстры, как собственные приложения.
Собирается гибрид
Если вы решили разрабатывать гибридные приложения, то вам следует знать, что в этой области есть два основных «конкурента». Одним из них является Cordova (и основанные на Cordova инструменты, такие как PhoneGap), а другим — Appcelerator Titanium . Они оба нацелены на мобильные платформы, но работают по-разному.
Разработка с Cordova — это то же самое, что разработка веб-страницы. Вы создаете локальные файлы HTML, CSS и JavaScript, тестируете их в браузере, а затем оборачиваете их в собственное веб-представление с помощью Cordova (для этого шага вам все еще понадобятся собственные SDK и инструменты разработки).
Использование Titanium немного отличается, вы не создадите файлы HTML и CSS, если только вы не захотите создать приложение, которое использует как собственный, так и основанный на HTML пользовательский интерфейс. Titanium предоставляет очень полезный набор мобильных инструментов, который помогает вам эмулировать (или имитировать) ваше приложение на реальной платформе, а не в браузере. Когда ваше приложение запускается на устройстве, оно не включается в веб-представление, а интерпретируется движком Javascript ( JavaScriptCore
Rhino
Appcelerator предоставляет хороший учебник (на удивление, не приложение ToDo).
Есть также несколько других менее известных вариантов гибридной разработки, таких как Xamarin , Rho , Corona и MoSync . Все они работают немного по-разному и могут принести вам больше пользы в зависимости от вашего текущего опыта программирования.
Вывод
И нативные, и гибридные являются способами удовлетворения различных потребностей и предпочтений пользователей и разработчиков, и ни один из них не может считаться идеальным решением. У них есть свои сильные и слабые стороны, и вам решать, какой из них вам больше подходит, а какой вы будете использовать в своем приложении.
Что вы думаете и думаете о разработке Hybrid vs Native?