Hybrid development unatumia same codebase kwenye platform zote, ni idea nzuri lakini kwa set flani ya applications, mostly zile ambazo sio performance critical, Hybrid apps kiundani zinarun kwenye browser, so ni kama website ya kawaida tu, tofauti ni ile unapewa baadhi ya native features juu yake kama camera, gps e.t.c. Mfano app ya kikuu wanatumia HTML5, Soka nao version yao ya zamani walikua wanatumia HTML5 app naona wakaswitch kwenda native nadhani waliona performance hit.
Pros:
- Same codebase, all platforms
- Quick prototyping
- Easily updatable, ukiandika code unaweza push updates moja kwa moja kwenye app bila kupitia check ya app store ambayo inachukua muda hasa kwenye iOS.
Cons
- Its JavaScript, hii kitu ni single threaded, utakua na locks kibao
- Poor performance
- Lack of some great native features, mfano kuimplement tabs au navigation panel kwa HTML5 is a joke, sijaona hata kampuni moja ambayo imeweza pull this off at 60fps, DOM rendering is freaking expensive
- Anyone can read your code, APK ikiwa expanded mtu anaweza ona code yako yote, unaweza jaribu obsfucate JavaScript ndio ila kwa hizi online tools nyingi mtu anaweza reverse tu kirahisi akapata original code. Au hata asipopata anaweza edit ontop of obsfucated code akaongeza features anazotaka akacompile na kuitupia playstore kama app yake.
Kama unapenda kutumia JavaScript/HTML/CSS mimi ningeshauri ujaribu kuangalia pia na React-Native, kama unajua ReactJS its even easier. Yenyewe sio write once run everywhere, ila unaweza kua na shared components nyingi kwa hiyo still unaandika less code kurun kwenye platform zote, yenyewe unlike tools nyingine nyingi hairun in a webview, ina port your javascript into native code, kwa hiyo performance yake ni sawa na ile ya native apps tu. na inakuja na pros zote za HTML5 apps, Cons its still in early stage, japo kuna watu wamedevelop apps nyingi tu, kuna muda utahitaji kuport your own native code kupata some functionalities, which isn't that hard, ila kama hujui native language ya hizi platforms umeumia.
Framework unaweza jaribu IONIC pia, yenyewe lakini lazima uwe unajua AngularJS, performance sio kama native ila its very close.