Upload
frontdays
View
168
Download
3
Embed Size (px)
Citation preview
Лисовский Артем
Чтоэтоисчемедят
Область применения AngularJS. Откуда такая популярность?
• Идеален для Single Page Application (SPA) приложений («богатое» приложение, генерирующее и изменяющее большой объем DOM’а «на лету» без перезагрузки страницы)
• «Умный». Возможность директив • Код более сложный, но его в разы меньше • Никакой привязки к #id и .class для работы с элементами
Ionic<ion-header-barclass="bar-posi?ve">
<h1class="?tle">Haha</h1></ion-header-bar><ion-content>
<ion-list> <ion-itemng-repeat="iteminitems">
Item{{item.id}} </ion-item></ion-list>
</ion-content>angular.module('ionicApp',['ionic']).controller('MyCtrl',func?on($scope){
$scope.items=[{id:0},{id:1},{id:2}…];
});
Ge^ngstartedInstall$sudonpminstall-gionicStartproject$ionicstarttodoblankRun&debug$ionicserve$ionicserve--labAddpladormfordeployorna?verun$ionicpladormaddios$ionicbuildios$ionicemulateios
Чтовкоробке?
Стилиииконкиhmp://ionicframework.com/docs/components/
Директивыhmp://ionicframework.com/docs/api/direc?ve/ionTabs/hmp://ionicframework.com/docs/api/direc?ve/ionScroll/
Кудадальше?• МодулиCordova
– Ac?onSheet– AdMob– AppAvailability– AppRate– AppVersion– Badge– BackgroundGeoloc– BameryStatus– BarcodeScanner– Calendar– Camera– Capture– Clipboard– Contacts– DatePicker– Device– DeviceMo?on
– DeviceOrienta?on– Dialogs– EmailComposer– Facebook– File– FileTransfer– FileOpener2– Flashlight– Geoloca?on– Globaliza?on– GoogleAnaly?cs– HealthKit– ImagePicker– InAppBrowser– Instagram– Keyboard– Keychain– LocalNo?fica?on– Media– Na?veAudio– Network
– OAuth– PinDialog– Preferences– Printer– ProgressIndicator– PushNo?fica?ons– SMS– SocialSharing– SpinnerDialog– Splashscreen– SQLite– StatusBar– Toast– TouchID– Vibra?on– ZIP
hmp://ngcordova.com/docs/plugins/
Итог:плюсы
БыстроПросто-легкаясборка-легкаяотладка
Чтоугодно,любойсложностиАвтоматическаягенерацияподлюбуюплатформуБольшоекомьюнити,многоинфы,плагиныБесплатно
Проблемыwebview-based
ВозможныеразличияввёрсткеТормозаилагиНевозможностьуправлятьпамятьюитпUIнеNa?ve(аэтоглавное)hmps://www.youtube.com/watch?v=juWhxCz1Wmg
Ктоещё?
EnyoJSSenchaMeteorPhoneGapOnsenUIIntelXDK
KendoUIJqueryMobileFramework7Famo.usMonacaMeteor.js…
Окей.ХочуNa?ve.Какэтобудетработать?
• Пишемкоднаjs• Происходитпреобразованиеjsto<pladorm-code>
Какиепроблемы?• Неultra-crosspladorm,таккак:
– укаждойплатформысвоикосяки– частонеобходимразныйкодподразныеплатформы(работасView’хамиитп)
• Нужночто-тоизучатьдополнительно• Порогвхода
Ктоестькто?• Na?veSсript• TabrisJS• Appcelerator• Fuse(FuseTools)• Trigger.io• ReactNa?ve
Минусы• нетмногихкомпонент• маленькоекоммьюнити
Tabris
Appcelerator
Минусы
• баги• ide–Aptana• прайс• коммьюнити
ReactNa?ve
Плюсы:• Facebook• коммьюнити• react
Минусы:• разныйкодподразныеплатформы
кодим
НЕJS
• Xamarin• unity• Coronalabs
Вывод
• JSкакЯПдлямобильнойразработкиэтовозможно
• возможнописатькроссплатформенныенативныеприложения
• реальнаявозможностьдляweb-разработчиков