developpement mobile vs open source

74
Algeria 2011

Upload: korteby-farouk

Post on 22-Dec-2014

1.158 views

Category:

Technology


1 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Developpement mobile vs open source

Algeria 2011

Page 2: Developpement mobile vs open source

Développement Mobile

versus Open Source

Présenté par farouk korteby

Page 3: Developpement mobile vs open source

3

Sommaire

C'est quoi un mobile ?

Quelques chiffres

Développement natifs

Développement multi-plates-formes

Développement Framework web mobiles

L'avenir : HTML5 & CSS3

Les Ateliers : Android & J2ME

Page 4: Developpement mobile vs open source

4

C'est quoi un mobile ?

Page 5: Developpement mobile vs open source

5

C'est quoi un mobile ?

Un appareil mobile est un appareil de petite taille doté de capacité de traitement.

OS, Processeur, RAM, ROM …

Possédant un écran d’affichage et une interface tactile ou un clavier miniaturisé.

Page 6: Developpement mobile vs open source

6

C'est quoi un mobile ?

Téléphone portableNokia, LG, Samsung, Sony Ericsson, Motorola, Siemens

Smartphone ou téléphone intelligent Android, IOS, Symbian S60, BB, Brew …

Un assistant numérique personnel ou PDA

Windows Mobile, HP WebOS

Tablette : Ipad, Galaxy Tab, Kindle

Console de jeux portable, GPS, Baladeur MP3

Page 7: Developpement mobile vs open source

7

Quelques chiffressur le

Développement Mobile

Page 8: Developpement mobile vs open source

8

Sommaire

C'est quoi un mobile ?

Quelques chiffresDéveloppement natifs

Développement multi-plates-formes

Développement Framework web mobiles

L'avenir : HTML5 & CSS3

Les Ateliers : Android & J2ME

Page 9: Developpement mobile vs open source

9

Quelques chiffres

Page 10: Developpement mobile vs open source

10

Quelques chiffres

En 2001 :

Pays développés 47,1%

Les pays émergents 7,9%

Dans le Monde15,5%

En 2011 :

Pays développés 117,8%

Les pays émergents 78,8 %

Dans le Monde 86,7 %

Page 11: Developpement mobile vs open source

11

Quelques chiffres OS mobile

En 2011 :

Android : 36MU

Symbian : 27MU

BlackBerry : 13MU

Apple : 16MU

Page 12: Developpement mobile vs open source

12

Quelques chiffres Mobile Store 2010

Apple App Store

1782 M$

Blackberry App World

$165 M$

Nokia Ovi Store

$105 M$

Google Android Market

$102 M$

Total $2155 M$

Page 13: Developpement mobile vs open source

13

Quelques chiffres Constructeur

Ventes mondiales de téléphones mobiles En 2011 :

1. Nokia : 107 MU (25,1%)

2. Samsung : 68 MU (16,1%)

3. LG : 23 MU (5,6%)

4. Apple : 16 MU (3,9%)

5. BlackBerry : 13 MU (3,0%)

Page 14: Developpement mobile vs open source

14

Quelques chiffres Algérie

Le nombre de clients des opérateurs fixes et mobiles est passé de 30,1 millions en 2008 à 35,3 millions en 2009.

Une progression de 17,3%.

Dans le même contexte, les revenus générés par les réseaux mobiles en2009

Plus de 221,2 milliards de dinars

Page 15: Developpement mobile vs open source

15

Développements sur des systèmes

natifs

Page 16: Developpement mobile vs open source

16

Sommaire

C'est quoi un mobile ?

Quelques chiffres

Développement natifsDéveloppement multi-plates-formes

Développement Framework web mobiles

L'avenir : HTML5 & CSS3

Les Ateliers : Android & J2ME

Page 17: Developpement mobile vs open source

17

Développements natifs

Un programme natif ou code natif est composé d’instructions directement reconnues par un processeur langage machine

Les programmeurs n’écrivent pas de code natif directement

Ils rédigent des « programmes sources » en suivant les conventions d’un langage de programmation (C++, C#, Pascal, Basic …).

La traduction de ces programmes sources en code natif est faite en assemblage/compilation.

Page 18: Developpement mobile vs open source

18

Développements natifs

Technologies propriétaires:

IOS, Apple.

Windows Mobile, Microsoft.

Symbian, Nokia.

BlackBerry OS, RIM.

Technologies Open source:

Android, Google.

Page 19: Developpement mobile vs open source

19

iOS

Développements natifs

Page 20: Developpement mobile vs open source

20

IOS ou iPhone OS

Crée par Apple en 2007.

Famille BSD (Unix) + Noyau Hybride.

Plateformes : iPhone, iPod Touch, iPad, Apple TV

Fonctionnalités :

Un écran multitouches.

Wifi, EDGE et 3G

GPS ou triangulation Wifi

Un appareil photo.

Un accéléromètre.

Page 21: Developpement mobile vs open source

21

IOS ou iPhone OS

IOS SDK (nécessite un Mac OS).

Environnement de développement : Xcode.

Langage Objective-C : extension du C.

Interface Builder : interfaces glisser-déposer.

iPhone Simulator : iPhone virtuel.

iPhone Developer Program à $99/ans.

Page 22: Developpement mobile vs open source

22

Windows Mobile

Développements natifs

Page 23: Developpement mobile vs open source

23

Windows Mobile

Crée par Microsoft en 2000.

Famille Windows CE + Noyau fermé.

Plateformes : WinCE, 2003, 5.0, 6.0, 7.5.

Constructeurs : Nokia, HTC, LG, Dell, HP …

Fonctionnalités :

Interface utilisateur Metro

Microsoft Office Mobile

Windows Phone Marketplace.

Page 24: Developpement mobile vs open source

24

Windows Mobile

Visual Studio SDK 2010.

À partir de 1 099,00 €

Microsoft Visual Studio Express Windows Phone Developper (gratuit).

SDK Windows Mobile.

Les émulateurs Windows Mobile/ActiveSync.

Langages : C++, C# ou VB.

MSDN Library.

Page 25: Developpement mobile vs open source

25

Symbian OS

Développements natifs

Page 26: Developpement mobile vs open source

26

Symbian OS

Crée par Symbian ltd en 1997.

100 millions en 2006.

Nokia, Sony Ericsson, Siemens, Samsung, Panasonic.

Racheté par Nokia en 2008.

Système d'exploitation embarqué.

Architecture ARMx86 (RISC 32 bits).

En 2009 Nokia a décidé Open source.

En 2011 Nokia abandonne officiellement le projet.

Les interfaces utilisateurs : S60, S80, S90, UIQ.

Page 27: Developpement mobile vs open source

27

Symbian OS

Qt Creator, Carbide C++, Code Warrior.

Langage C++,  Python, Ruby, .NET.

Symbian 3 :

Multitouches.

Wifi, EDGE ou 3G.

USB on the go

Digital Video Broadcasting – Handheld

Flash, Silverlight , Java ME et OpenGL ES.

Page 28: Developpement mobile vs open source

28

BlackBerry OS

Développements natifs

Page 29: Developpement mobile vs open source

29

Black Berry OS

Crée par Research In Motion en 1999.

En 2010 BlackBerry Tablet OS.

Basé sur QNX un système d'exploitation UNIX commercial

Qui devra remplacer à terme BlackBerry OS

Spécificités :

BlackBerry  support natif des courriels.

Trackwheel,Trackball, Touchpad et Touchscreen.

Page 30: Developpement mobile vs open source

30

Black Berry OS

BlackBerry Native SDK (BB Tablet OS)

Langage : Natif C/C++.

Native SDK simulator.

BlackBerry Java Plugin for Eclipse (OS7)

Langage : Natif Java.

BlackBerry Smartphone Simulators.

BlackBerry Plugin for Android (BB Tablet OS).

Pour faire le portage des applications Android sur Black Berry Tablet OS

Page 31: Developpement mobile vs open source

31

Android OS

Développements natifs

Page 32: Developpement mobile vs open source

32

Android

Un système d'exploitation open source.

Pour Smartphone, tablette tactile, netbooks, GPS, Baladeurs MP3…

Lancé en 2007 par l’Open Handset Alliance.

Google, ASUS, Alcatel, Acer, HTC, LG, Motorola …

Fondé sur un noyau Linux

Basé sur l’architecture ARM

Intègre Java VM Dalvik 

Page 33: Developpement mobile vs open source

33

Android

Stratégie Open source d’Android : 

Plateforme mobile ouverte

API riche

Développeursnombreux

Utilisateursnombreux

Plus de revenus

Page 34: Developpement mobile vs open source

34

Android

Versions d’Android :

4.0 Ice Cream Sandwich 0%

3.x.x Honeycomb 1.9%

2.3.x Gingerbread 44.4%

2.2.x Froyo 40.7%

2.1.x Eclair 10.7%

1.6 Donut 1.4%

1.5 Cupcake 0.9%

Page 35: Developpement mobile vs open source

35

Android

Android SDK :

Langage Java / C++ (Core Libraries).

NB Android Plugin for NetBeans.

ADT Plugin for Eclipse.

Page 36: Developpement mobile vs open source

36

Architecture d’Android

Page 37: Developpement mobile vs open source

37

Architecture d’Android

Linux Kernel :

Drivers, Gestion mémoire, Gestion de processus, Réseau

Libraries :

C/C++ libraries, 2D and 3D graphics, codecs, SQLite, Browser engine …

Android Runtime :

Dalvik VM, Core Libraries.

Application Framework :

API interface, Activity manager

Page 38: Developpement mobile vs open source

38

Développements avec des

Frameworks Multi-Plates-Formes

Page 39: Developpement mobile vs open source

39

Sommaire

C'est quoi un mobile ?

Quelques chiffres

Développement natifs

Développement multiplateformes Développement Framework web mobiles

L'avenir : HTML5 & CSS3

Les Ateliers : Android & J2ME

Page 40: Developpement mobile vs open source

40

Développements multi-plates-formes

Une Framework multiplateforme est une technologie conçue pour fonctionner sur plusieurs OS 

En anglais « cross-platform software » 

Différentes solutions techniques

les langages compilés avec des bibliothèques multiplateforme (wxWidgets).

les langages interprétés (Web applications).

les langages semi-interprétés (Java, Flash …).

Page 41: Developpement mobile vs open source

41

Développements multi-plates-formes

Technologies propriétaires :

Adobe AIR.

Technologies Open source :

Java ME.

Appcelerator Titanium.

Page 42: Developpement mobile vs open source

42

Adobe Air

Développements multi-plates-formes

Page 43: Developpement mobile vs open source

43

Adobe AIR

Adobe Integrated Runtime (Apollo)

Une machine virtuelle multiplateforme

Crée par Adobe en 2008.

C’est une technologie Gratuit mais pas open source

Selon une statistique avancée par Adobe, Adobe Air est supporté par :

132 million de Smartphone en 2011

Qui veut dire 36% du marché 

Page 44: Developpement mobile vs open source

44

Adobe AIR

Adobe Dreamweaver :

Pour le developpement HTML/JavaScript.

 Adobe Flex Builder, Adobe Flash :

Pour l’ActionScript et flash

JavaScript et SQLite sont supportées.

OS supportés :

Microsoft Windows, Mac OS X, Android, iOS, BlackBerry Tablet OS, Linux …

Page 45: Developpement mobile vs open source

45

Java ME

Développements multi-plates-formes

Page 46: Developpement mobile vs open source

46

Java ME

 Java Micro Edition est le Framework Java spécialisé dans les applications mobiles.

Crée par SUN, devient Open source en 2006.

KVM : une machine virtuelle capable d'exécuter une application Java.

Configuration : API donnant accès aux fonctions de base du système : CLDC, CDC.

Profil : API donnant accès aux fonctions spécifiques de la plate-forme : MIDP 1.0/2.0/2.1.

Page 47: Developpement mobile vs open source

47

Java ME

 Architecture Java ME :

Packages Optionnels :Wireless Messaging API

Mobile Media API

JDBC, RMI …

Page 48: Developpement mobile vs open source

48

Java ME

 Java Wireless Toolkit :

Langage Java.

NetBeans avec le pack Mobility.

Eclipse + plugin EclipseME.

Une Midlet : c’est une applications créées avec MIDP.

Elle permet le dialogue entre le système et l'application.

Elle le même cycle de vie d'une applet.

Page 49: Developpement mobile vs open source

49

Appcelerator Titanium

Développements multi-plates-formes

Page 50: Developpement mobile vs open source

50

Appcelerator Titanium

  Appcelerator Titanium est un Framework libre multiplateformes pour développer des applications mobiles.

Elle génère des applications natives pour chaque plateforme.

Elle support les technologies web HTML, CSS et JavaScript.

PHP, Python et Ruby pour plateformes de bureau.

Support des populaires Frameworks JavaScript et AJAX dont :jQuery, YUI, MooTools, Prototype ...

Accès de l'API aux fonctions natives du mobile.

Page 51: Developpement mobile vs open source

51

Appcelerator Titanium

  OS supportés :

Desktop : Windows, Mac OS, Linux.

Mobile : Android, iOS et BlackBerry.

Remarque :

 La compilation pour mobile est sujette à des exigences supplémentaires :

Pour l'iPhone: Mac OS X et le SDK iPhone

Pour Android: le SDK Android.

Page 52: Developpement mobile vs open source

52

Appcelerator Titanium

 Titanium Studio.

Mobile SDK de la plateforme souhaitée.

Langage :

Web : HTML, CSS et JavaScript.

Desktop : PHP, Python et Ruby.

Une API indépendante de la plateforme pour accéder aux composants UI natifs.

Page 53: Developpement mobile vs open source

53

Développements avec des

Frameworks Web pour Mobiles

Page 54: Developpement mobile vs open source

54

Sommaire

C'est quoi un mobile ?

Quelques chiffres

Développement natifs

Développement multi-plates-formes

Développement Framework web mobilesL'avenir : HTML5 & CSS3

Les Ateliers : Android & J2ME

Page 55: Developpement mobile vs open source

55

Framework web mobile

Un Framework web mobile est un kit de composants web, qui servent à créer des parties d'une application web mobile.

Une application web mobile est un logiciel applicatif manipulable grâce à un navigateur Web d’un mobile.

Technologies Open source :

Phonegap.

jQTouch.

jQuery Mobile.

Page 56: Developpement mobile vs open source

56

Phonegap

Framework web mobile

Page 57: Developpement mobile vs open source

57

Phonegap

PhoneGap est un framework open-source de développement mobile :

Développé par Nitobi Software, racheté par Adobe.

 Il utilise les standards HTML5 et CSS3.

Les applications qui en résultent sont hybrides, ce qui signifie qu'ils ne sont ni vraiment natif ni purement basée sur le Web.

Plateformes supportées :

Android, iOS, BlackBerry, Windows Mobile, Symbian …

Page 58: Developpement mobile vs open source

58

Phonegap

PhoneGap SDK

Mobile SDK de la plateforme souhaitée.

Langage : HTML5, CSS3 et JavaScript.

Page 59: Developpement mobile vs open source

59

JQTouch

Framework web mobile

Page 60: Developpement mobile vs open source

60

JQTouch

jQTouch est un plugin JQuery Open Source.

Il support des animations natives, navigation automatique et themes pour les mobile WebKit.

WebKit est une bibliothèque logicielle permettant  la création de navigateurs Web.

Safari de iOS et Chrome d’Android sont supportés.

Page 61: Developpement mobile vs open source

61

JQTouch

Quelques exemples réalisés avec JQTouch :

Page 62: Developpement mobile vs open source

62

JQuery Mobile

Framework web mobile

Page 63: Developpement mobile vs open source

63

jQuery Mobile

jQuery Mobile est un framework web et open source pour des composants tactiles optimisés pour les Smartphones et tablettes.

Compatible avec toutes les plateformes mobiles principales:

iOS, Android, Blackberry, WebOS, Symbian, Windows Phone 7, MeeGo, Opéra Mobile/Mini, Firefox Mobile, Kindle …

Poids lèger et une dépendance minimale aux images pour la vitesse.

Page 64: Developpement mobile vs open source

64

jQuery Mobile

Exemples réalisés avec jQuery Mobile :

Page 65: Developpement mobile vs open source

65

L'avenir HTML5 & CSS3

Page 66: Developpement mobile vs open source

66

Sommaire

C'est quoi un mobile ?

Quelques chiffres

Développement natifs

Développement multi-plates-formes

Développement Framework web mobiles

L'avenir : HTML5 & CSS3Les Ateliers : Android & J2ME

Page 67: Developpement mobile vs open source

67

L'avenir : HTML5 & CSS3

Rappel :

HTML, est le format de données conçu pour représenter les pages web (Langage de balise).

<title>titre</title>

<p>paragraphe</p>

CSS est un langage qui sert à décrire la présentation des documents HTML.

title { font-family: Helvetica; }

p { font-size: 110%; font-family: sans-serif; }

Page 68: Developpement mobile vs open source

68

L'avenir : HTML5 & CSS3

HTML5 (HyperText Markup Language 5) est la prochaine révision majeure d'HTML.

HTML + JS = HTML5.

Ses spécifications techniques sont ouvertes.

Il est Développé par W3C.

W3C est chargé de promouvoir la compatibilité des technologies du World Wide Web (xHTML, CSS …).

Page 69: Developpement mobile vs open source

69

L'avenir : HTML5 & CSS3

Les principales évolutions du HTML5

Audio et vidéo.

Drag & Drop.

Canvas & SVG.

Web Sockets.

WebGL.

Page 70: Developpement mobile vs open source

70

L'avenir : HTML5 & CSS3

Les principales évolutions du CSS3 :

Polices exotiques

Ombrages

Transparence

Coins arrondis

Positionnement avancé

Rotation

Page 71: Developpement mobile vs open source

71

L'avenir : HTML5 & CSS3

HTML5 et les mobiles :

Mémoire locale (AppCache).

Dessin 2D avec Canvas.

Flux vidéo et audio sans flash.

Géo localisation

Formulaires avancés

Les écrans tactiles

Page 72: Developpement mobile vs open source

72

L'avenir : HTML5 & CSS3

Frameworks web mobile basés sur HTML5 :

jQuery Mobile

Sencha Touch

SproutCore

jQTouch

DHTMLX Touch

WorkLight

Page 73: Developpement mobile vs open source

73

Conclusion

Page 74: Developpement mobile vs open source

74

Sommaire

C'est quoi un mobile ?

Quelques chiffres

Développement natifs

Développement multi-plates-formes

Développement Framework web mobiles

L'avenir : HTML5 & CSS3

Les Ateliers : Android & J2ME