32. Native mode (wikipedia)
• The term native mode or native code is used in computing in two
related senses:
• to describe something running on a computer natively
or in native mode meaning that it is running without
any external support as contrasted to running in
emulation (i.e. browser)
• Native operating system, native instruction set, etc., in
application to a computer processor means that the
corresponding item was implemented specifically for
the given model of the computer or microprocessor,
as opposed to emulation or compatibility mode.
Tuesday, 22 May 2012 32
33. Conceito
• Native App:
• An application that is specifically
written for a device platform.
Tuesday, 22 May 2012 33
34. Devices
• Feature-phones
• Smart-phones What else?
• Tablets
• TV
Tuesday, 22 May 2012 34
35. Plataformas Nativas
• Plataformas e suas Linguagens de
Programação
• iOS => Objective-C, C
• Android => Java
• BlackBerry => Java
• Windows Mobile (Nokia) => .Net
Tuesday, 22 May 2012 35
40. Android => Java + Dalvik
• Java é uma linguagem familiar para
muitos desenvolvedores, muitas vezes é
a primeira linguagem
• Gustav’s Moto:
“Anybody can cook”
• Android fornece uma excelente API
Tuesday, 22 May 2012 40
41. Objective-C
• Objective-C criada na decada de 90
(NeXT) e possui uma vasta API =>
produtos Apple
• Runtime C orientado a objetos
• Ganhou muita popularidade com o
lançamento do iPhone e do iOS SDK
Tuesday, 22 May 2012 41
42. C/C++
• Diversos Devices
• Possivel desenvolver em C/C++ para
iOS e Android
• Projetos Open-Source!!!
• UI???
Tuesday, 22 May 2012 42
43. Características Apps
Nativas
• Aparência Nativa (Native look & feel):
impossível para Web por definição
• APIs: video, alarm clock, file access,
push notification, ...
• Integração com aplicações: maps, mail,
camera, youtube, gallery, agenda, ...
Tuesday, 22 May 2012 43
44. Características Apps
Nativas
• Integração com SO: concorrência,
system events
• Melhor Performance e uso da Bateria
• Web engines, plugins (e.g. <video>
codecs)
• Desenvolvimento: debugging
Tuesday, 22 May 2012 44
45. Características Apps
Nativas
• Uso “off-line”
• In-App Purchase: CC cadastrado +
billing (e.g. High Noon)
• Tratamento de diferentes tamanhos e
resoluções de tela (i.e. Android)
Tuesday, 22 May 2012 45
46. Human Interface Guidelines
Fonte:
http://developer.android.com/guide/practices/ui_guidelines/index.html
http://developer.apple.com/library/ios/documentation/userexperience/conceptual/mobilehig/MobileHIG.pdf
Tuesday, 22 May 2012 46
48. Principais Características
“ordenadas” para App Nativas
1. offline mode
2. uso dos recursos (+hardware) do device
3. experiência de uso
4. centralização das aplicacoes (base de potenciais usuários)
5. integração com outras apps
6. notificações (push) e recursos de sistema (e.g. alarme)
7. “monetization” das lojas (busca e faturamento)
8. performance e uso da bateria
Tuesday, 22 May 2012 48
49. Domínio de Aplicações
• GAMES
• Acesso a recursos nativos:
ACCELEROMETER, CAMERA,
COMPASS, CONTACTS,
GEOLOCATION, NETWORK,
NOTIFICATION, STORAGE
• NFC??????
Fonte: Google Images (http://goo.gl/7ZQLS)
Tuesday, 22 May 2012 49
51. $$$
• $32,639 for a simple app
• 2 months to create
• 2 weeks per feature = 4 features
• $8,160 per feature
Fonte: Pinch/Zoom (Seatle)
Tuesday, 22 May 2012 51
52. App Store, Market, etc
• “o um lugar" para encontrar aplicações
Fonte: Google Images (http://goo.gl/cKArV)
• modelo de revenue share
70/30
Tuesday, 22 May 2012 52
53. Apple Store
Preço #Apps Games Total % TOTAL
Free 160.705 27,670 188,375 39.97%
$0.99 101.451 29,491 130,942 27.78%
$1.99 47.028 7,999 55,027 11.68%
79.43%
Fonte: http://148apps.biz/app-store-metrics/?mpage=appprice
Tuesday, 22 May 2012 53
55. Cases
• Games: angry birds, plats vs zombies
• Facebook, Twitter
• Shazan
• Flipboard
• Narizinho, AutoEsporte, Fibria,
QuemCarnaval :D
Tuesday, 22 May 2012 55
56. Cases
• “We bet everything on Apple and iOS
and then Apple killed us by changing
the rules in the middle of the game”
• Finantial Times (ft.com)
• Primeiro: Nativo
• Depois: Web
Tuesday, 22 May 2012 56
57. Resumindo...
• Web
- portabilidade
- padrões abertos
- simplicidade
• Nativas
- integração hardware/plataforma
- APIs novas
- experiência + rica
Tuesday, 22 May 2012 57