СПОДЕЛИ

Со цел да останат конкурентни и да се прилагодат на барањата на пазарот, компаниите за развој на мобилни апликации се обидуваат да ни понудат што е можно повеќе платформи. Меѓутоа, притоа се соочуваат со потешкотии, особено кога треба да се задржат до одреден буџет и во исто време да им парираат на конкурентите со брзина и квалитет.

Мобилниот пазар главно го диктираат iOS, Android и Windows, па затоа, ако сакате да развиете одредена апликација, најмалку што треба да направите е да ја развиете истата за овие три платформи, освен ако можете  финансиски да си дозволите  да игнорирате некоја од нив. Знаеме дека стандардниот пристап на компаниите кои развиваат апликации е матичен/локален развој, но, при таков развој не може да очекувате брзина и ефикасност на трошоци, бидејќи тоа од вас бара да имате соодветна опрема за развој на софтвер и алатки, да ангажирате развивачи за секоја платформа, да креирате повеќе бази со код и да дизајнирате  UI/UX за секоја платформа поединечно.

Во овој случај, пологично е да го следите она што го прават модерните компании и развивачи на апликации, т.е. да напишете еднаш и да го употребувате секаде со развивање апликација кој одговара и работи на повеќе платформи. Така ќе го намалите трошокот за развој во однос на вкупната сума која би ја потрошиле за развој на апликација за секоја платформа.

Кога зборуваме за развој на мобилни апликации врз повеќе платформи, најпопуларните работни рамки во моментов се  Appcelerator Titanium, Xamarin и PhoneGap. Сите овие ја имаат истата цел – развој на една апликација за повеќе плетформи. Меѓутоа, постојат огромни технички, деловни и филозофски разлики помеѓу нив.

Која од овие треба да ја изберете? Која е полесна, подобра и одговара на вашите барања?

Ајде детално да продискутираме за секоја од овие работни рамки и да се обидеме да откриеме што е она што ви треба.

PhoneGap

Споредена со Xamarin и Titanium, PhoneGap е наједноставна open-source работна рамка. Таа дозволува креирање на мобилни апликации со употреба на Web API, односно ги става апликациите во обвивка која е матична на апликацијата и потоа  имплементира на различни платформи. Употребува услуга на облак наречена ‘Build’ со која може да компајлирате апликации за неколку различни оперативни системи, без да мора да инсталирате алатки за развој на софтвер за секоја платформа.

Секоја PhoneGap апликација е збирка на HTML страници која визуелно се обработува како Web приказ. За да развивате апликации во PhoneGap, треба да употребите HTML5, CSS и JavaScript.

Предности
  • Мали и едноставни сетови на API кои овозможуваат лесно пренесување во различни околини.
  • Може да се реупотребува со HTML5, CSS и JavaScript. Сé што е напишано за веб страница лесно може да се префрли во мобилна апликација.
  • Ги поддржува сите платформи и оперативни системи како iOS, Android, Windows Phone 8, Blackberry, Firefox OS и Ubuntu.
  • Развивачите на веб кои се навикнати на HTML/CSS/JavaScript, многу полесно почнуваат да работат со PhoneGap.
Негативности
  • Послаби перформанси на апликацијата бидејќи оригиналниот код на апликацијата во основа е кодот на веб апликацијата и се вчитува преку веб прелистувач. Ова значи дека неговата изведба не може ни од далеку да се спореди со матичните апликации.
  • Премногу фрагментирани библиотеки и работни рамки на основно ниво.
  • Корисничкиот интерфејс на апликацијата варира во зависност од квалитетот на Web приказот кој ќе се рендерира.

Titanium

Titanium е JavaScript-базирана платформа за развој. Таа употребува JavaScript за да ги пишува кодовите на апликациите со сопствени API и UI конвенции за секоја платформа. Тоа значи дека не се обидува да го постигне она ‘напиши еднаш и употребувај секаде’ туку се обидува да напише апликации реупотребувајќи ја JavaScript со опции и перформанси специфични за платформата.

Малку е покомплицирана од Xamarin и PhoneGap . Треба да ги научите UI API за секоја од платформите, и се разбира JavaScript, која и самата е комплексна. Titanium во моментов нуди поддршка само за Android и iOS.

Предности

  • Подобри перформанси заради употребата на матични API , што исто така дава пристап до елементи и опции на iOS и Android
  • Изгледот на Titanium апликациите е подобар од изгледот на апликациите изградени на други платформи бидејќи UI е матичен за платформата.
  • Со Javascript, ви обезбедува брз и лесен развој

Недостатоци

  • Нема поддршка за библиотеки
  • Потешкотии при развојот на комплексни апликации
  • Бидејќи не употребува HTML5 и CSS, анимациите и DOM елементите се со задоцнување и се помалку прилагодливи

Xamarin

Xamarin, првично наречен  MonoTouch, е работна рамка која успеа на пазарот за развој со сопствен IDE. Работи на C# во .NET работна рамка и ви дозволува да изградите матични апликации употребувајќи API и UI својствени за секоја платформа.

Xamarin доаѓа со Xamarin.Forms библиотека која ви дозволува да напишете матичен UI и да го споделувате и конвертирате во UI специфичен за дадена платформа. Во моментов Xamarin ги поддржува iOS, Android и Windows платформите. Ви дозволува да креирате апликации и за Blackberry преку компајлирање на апликациите за Android.

Предности

  • Xamarin има TestCloud кој ви дозволува автоматски да ги тестирате апликациите
  • Ви обезбедува 100% реупотреба на кодот со Xamarin.Forms UI развојот, употребувајќи основен код  и логистика. Ова заштедува многу време и ресурси
  • Поддржува модели како  MVC и MVVM
  • Xamarin.Android поддржува Google Glass уреди, Android Wear, и Firephone
  • Кривата на учење е релативна. Ако вашиот тим знае C#,  многу полесно ќе може да се прилагоди и да почне да работи со Xamarin

Негативности

  • Не обезбедува пристап до одредени UI контроли специфични за Аndroid
  • Влијае на времето на вчитување бидејќи си има сопствено време на работа
  • Не поддржува споделување на кодови надвор од Xamarin околина за локален или HTML5 развој

Оваа основна анализа на техничките разлики помеѓу  PhoneGap, Titanium и Xamarin јасно ни дава до знаење дека ништо не е совршено. Изборот сепак зависи од целите, обемот на работа и ресурсите кои се на располагање.

Во табелата подолу може детално да ги споредите сите три работни рамки ставени една до друга.

PhoneGap-or-Titanium-or-Xamarin

Заклучок

Од споредбата, јасно е дека сите три платформи имаат сопствен придонес во однос на опции и поддршка и дека сите тие се важни во мобилната околина.

Како компанија или развивач, треба да ја изберете онаа опција која одговара на барањата и целите на вашето решение. Ниедна од овие работни рамки не е погрешен избор.

Ако сте девелопер кој развива апликации за мобилни уреди, кој е Вашиот избор? Што користите за развој?

Ти се допадна овој напис?
Стани член на клубот на веб професионалци Еверест и прв добивај информации кои можат да ти помогнат за твојот натамошен професионален развој.
И ние како и ти ги мразиме спамерите. Твојата email адреса никогаш нема да биде (про)дадена некому. Чесен збор.
  • Даниел Димов

    Ke komentiram za Titanium .

    Titanium во моментов нуди поддршка само за Android и iOS
    — + Windows Phone + Mobile Web

    Треба да ги научите UI API за секоја од платформите, и се разбира JavaScript, која и самата е комплексна
    — JavaScript e najnekompliciraniot jazik

    Нема поддршка за библиотеки
    http://gitt.io/ – Sekoja iOS ili Android biblioteka moze da se pretvore vo Titanium Modul

    Потешкотии при развојот на комплексни апликации
    — So ova se slozuvam, no se sto moze da se napravi so native development, moze i so Titanium.

    http://mobidonia.com e generator na mobilni aplikacii baziran na Titanium.

    Pozdrav