redfabriq - meetup xamarin paris - session d'ouverture

59
Reproduction prohibited without authorization

Upload: zaak

Post on 14-Dec-2014

336 views

Category:

Mobile


0 download

DESCRIPTION

Présentation de XAMARIN, solution de développement mobile multi-plateformes sous DotNet, lors de la session d'ouverture du MEETUP XAMARIN PARIS.

TRANSCRIPT

Page 1: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

Page 2: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

GET YOUR C#

SHIRT TODAY!

Page 3: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

Largest Mobile Developer Conference of the Year!

www.xamarin.com/evolve

Page 4: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

Sommaire

Problématique du développement multiplateforme mobile

Les solutions

La solution

Approche et architecture

Implémentation

Démonstration 1

Démonstration 2

Xamarin

Questions et réponses

4

Page 5: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

PROBLÉMATIQUE DU DÉVELOPPEMENT MULTIPLATEFORME MOBILE

5

Page 6: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

Les piles technologiques pour développer des applications mobiles

Base de données API RestServers / SI Réseaux Cache

Le fun ????

Et après

6

Page 7: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

Fragmentation du marché mobile : Un lourd défit pour les développeurs

7

Les terminaux s’élargissent et se diversifient

4 -> 5 -> 6 pouces pour les smartphones

9 -> 11 -> 13 pouces pour les tablettes

Laptop hybrides (mi-laptop & mi-tablette)

Plusieurs écrans

Page 8: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

Support des différentes tailles d’écrans

8

Page 9: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

La Fragmentation sur mobile: un vrai challenge

2 versions d’OS, des standards stricts pour les fabricants, un langage

7 versions d’OS, un seul fabricant et peu d’écrans différents, un langage

8 versions d’OS, plusieurs fabricants, 20 langages, plus de 27 formats d’écrans

9

Page 10: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

Qualité des réseaux : Impact sur les applications mobiles

Les zones mortes sont nombreuses, en réseau mobile (3G, H, H+, 4G).

Dans vos développements d’applications mobiles, il est impératif de prendre en considération la qualité des réseaux afin de proposer des apps disponibles et utilisables.

10

Page 11: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

SmartPhone ? Tablette ? Ou PC ?

A cela, il faut rajouter les utilisateurs itinérants dans leurs lieux de travail (Hôtels, lieux de vente, supports à domicile, transports, chantiers…)

11

Page 12: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

Quid du développement après toutes les contraintes citées plus haut ?

Combien de plateformes cibles ?

L’intégration au système d’information est capitale, quelles solutions ?

Les procédures et protocoles de tests

Tester sur tous les OS ?

Tester sur toutes les versions d’OS ?

Tester sur tous les fabricants ?

Tester sur tous les formats d’écran ?

Tester sur tous les types de réseau ?

Les filières de développements

Objective C ?

Java ?

C# ?

L’approche multiplateforme est incontournable

Que propose le marché ?

12

Page 13: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

LES SOLUTIONS

13

Page 14: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

Les applications Web « responsive » (HTML 5 + responsive)

14

En mode connecté ou déconnecté (très limité)

Interface uniforme sans spécificité OS

Page 15: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

Hybride : L'approche à écriture unique et exécution partout

Page 16: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

L’expérience du responsive

Facebook et LinkedIn sont passés du responsive aux applications natives!

Pourquoi?

Vitesse d’exécution en natif

Utilisation en mode déconnecté

Cache des images

Exploitation des capacités des terminaux(GPS, photo, connectivité)

Tout ceci rend l’expérience utilisateur peu pertinente face aux apports des interfaces tactiles des terminaux mobiles

Mark Zuckerberg said: “Our Biggest Mistake Was Betting Too Much On HTML5”

16

Page 17: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

Hybride

Technologies:

HTML/CSS/JavaScript

Mobile développement framework

Les produits

Phone Gap

App Accelerator

Avantages:

Simplicité des technologies de développement

Permet un mode déconnecté

Le résultat est une application web encapsulée dans un exécutable natif

Désavantages

Ne donne pas la performance du natif

Ne donne pas une expérience utilisateur native

Ne peut pas gérer les graphiques lourds

Nécessite d’être familier avec le Framework

17

Page 18: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

Les applications natives (développement spécifique à chaque technologie IOS, Android, Windows phone, Windows 8, …)

18

Technologie et filière de

développement spécifique

Respect de l’expérience utilisateur

Online

et

Offline

Objective C

+ XIB

Java + XMLC# + XAML

Native UI Native UINative UI

Page 19: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

L'approche cloisonnée: Créez des applications natives autant de fois que vous disposez de supports

+

+

-

Page 20: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

LA SOLUTION

20

Page 21: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

La cible idéale pour la réussite des projets mobiles en entreprise

+

+

-

Page 22: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

C# and Xamarin : Une approche unique

Page 23: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

Faites le choix d’utiliser UNE SEULE FILIERE DE DEVELOPPEMENT

Microsoft vous propose sa technologie pour développer des applications Windows 8/RT (Metro) et Windows Phone

XAMARIN vous propose sa technologie et son savoir-faire pour développer des applications iOS et Android

L’écosystème Microsoft DotNet vous permet donc de déployer des solutions natives sur les plateformes suivantes :

Windows 7

Windows 8 / RT

Windows Phone

Windows Azure

iOS

Android

Microsoft a toujours prôné l’ouverture urbi ou orbi.

Windows AZURE n’est que le dernier exemple en date, ainsi que l’intégration de XAMARIN.

23

Une seule filière de développement, une seule ingénierie, du code partagé, du code spécifique à chaque plateforme et l’accès aux système existants

Page 24: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

XAMARIN architecture

24

Xamarin Ecosystem

Page 25: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

Nos solutions mobiles - XAMARIN

25

C# + XAMARIN

Microsoft Visual Studio

Réutilisation de code C#

Continuité des compétences

Code Métier

Réutilisation et partage du code

Moins d’erreurs

Plus robuste

Interfaces natives

Performance

Accès aux services du mobile

Respect de l’expérience utilisateur

Développement d’application mobile universelle

XAMARIN – La solution

Page 26: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

Nos solutions mobiles - XAMARINXAMARIN - Les bénéfices

26

Solution pérenne

+ 20 000 clients

+ 375 000 développeurs

+ 2,6 milliards de machines

Partenaires Coûts réduits

Conception

Développement

Déploiement

Maintenance

Page 27: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

Aucun compromis dans l'implémentation d‘IHM

27

Page 28: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

Accélération du développement par le partage de codeStatistiques du code partagé depuis les applications PREBUILD de Xamarin

Source : Xamarin

28

Page 29: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

Exemple de solution

Mobile CRM

Mobile Field Service

Consumer Brand Loyalty

Retail POS solutions

Supply chain management

Consumer media & entertainment

Booking

mCommerce and Catalog

Games

OK

29

Page 30: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

Ecosystem XAMARINExemple de solution tiers

Des outils de codes barres qui fonctionnent en tenant compte des problèmes du mobile comme par exemple la qualité des photos des codes barres

30

Page 31: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

XAMARIN Component store

Développer rapidement

- Vous disposez de PREBUILD App utilisables directement depuis Visual Studio

- Retrouvez des superbes composants UI, des services cloud et des outils d’intégration aux backend des entreprises….

31

Page 32: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

Tests de vos applications : Un vrai enjeux pour les développeurs !

Test de votre application et plus particulièrement des IHM

Exécution très rapide de vos tests

Exécution de vos tests sur de vrais matériels

Résistant aux charges

Interface accessible et simple d’usage

32

Page 33: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

APPROCHE ET ARCHITECTURE

33

Page 34: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

Intégration à Visual Studio

C# and F# support

Reuse your Visual Studio and DotNet Experience

Une seule solution pour iOS, Android et Windows

Préserver votre écosystème Microsoft :ReSharper

Team Foundation Server (TFS)

Your favorite code coverage and profiling tools

34

Page 35: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

Comment ça marche ?

Xamarin. Android tire profit du Just In Time (JIT) sur le périphérique Android du fait qu’il implémente sa propre machine virtuelle DotNet. Cette dernière exécute le code plus rapidement que la machine Java. Permettant à la VM Xamarin d’obtenir des performances globalement similaires, voire plus rapides dans certains cas.

Produit un binaire approprié pour l’Apple Store. Il utilise l’approche AOT (Ahead of Time Compilation) du compilateur MONO.

35

Page 36: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

SmartLink et Binding : le concept principal

SmartLink

Permet d’intégrer dans votre binaire le stricte nécessaire du framework Xamarin

Le principe : Consommer des API natives depuis votre code C#

Intégrer du code existant

Obtenir des performances significatives

Adopter des librairies tiers

Adopter des contrôles et framework tiers

0100 000200 000300 000400 000500 000

ATM

Hu

d

Be

eble

SDK

Co

uch

bas

e

Dat

atra

ns

Dro

pB

oxS

ync

-…

Dro

pB

oxS

ync

-…

Flu

rryA

nal

ytic

s

GC

Dis

cre

etN

oti

fica

Go

ogl

eAn

alyt

ics

Go

ogl

eMap

s

MB

Pro

gres

sHu

d

MG

Split

Vie

wC

on

tr…

Re

dLa

ser

SDSe

gme

nte

dC

on

t…

Test

Flig

ht

Tim

esS

qu

are

WEP

op

ove

r

Zip

Arc

hiv

e

Savings

36

Page 37: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

Comprendre le « Binding » : Exemple avec le contrôle bouton

Sous IOS

Sous Android

• Sous Android

37

Page 38: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

Designer Android

Accessible depuis Visual Studio

Créer une interface utilisateur via drag & drop

Cibler plusieurs tailles d'écran, les résolutions et les versions Android

38

Page 39: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

Designer iOS Designer (sous xCode)

Bientôt Visual Studio

Familier aux idiomes de conception Visual Studio

Prend en charge tous les éléments de l’UIKit

39

Page 40: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

Proposer une chaîne de développement homogène et qui s’intègre aux legacydes entreprises

Visual Studio and TFS

TargetUI

DesignCode &

Share

Unit

Testing

Xamarin

Test cloud

iOSAndroidXAMARIN

Project architecture & methodologies

Deploy

Windows Store

iTunesGoogle Play, …

Page 41: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

Les tests

Tests unitaires

Tests fonctionnels avec Test Cloud

Plus de 300 devices sont proposés

Tests basés sur l’UI

Des rapports complets

Intégré à votre ALM

41

Page 42: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

IMPLEMENTATIONDÉMONSTRATION AVEC VS 2013

42

Page 43: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

DÉMONSTRATION 1Exemple d’une application PREBUILD

43

Page 44: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

DÉMONSTRATION 2Exemple d’une application spécifique

44

Page 45: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

ETUDE DE CAS

45

Page 46: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

Partager plus de 50.000 lignes de code

A propos de Rdio

Rdio est le leader de la musique en streaming et de partage de service lancé par les fondateurs de Skype.

Rdio est déjà dans 30 pays avec plus de 20 millions de titres.

Disponible dans 31 pays.

« L’Application mobile de Rdio est aussi le plus beau et mieux implémentée des trois solutions de streaming de music » . Wired Magazine

46

Page 47: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

Challenge et résultat

Challenge

Impossible de remettre les fonctionnalités sur toutes les plateformes simultanément en raison de multiples bases de code spécifiques à la plateforme.

Les coûts élevés pour développer et maintenir des applications.

Enorme difficulté à maintenir une feuille de route commune avec comme impact des écarts significatifs sur les versions.

Impossible de rationaliser les tests.

Résultat

Avec le passage des applications sous Xamarin, Rdio partage maintenant plus de 50.000 lignes de code en C # dans iOS, Android et Windows.

Ce qui leur permet de se concentrer sur les fonctions et l'expérience utilisateur.

Les tests ont été harmonisés.

Les sorties sont communes facilitant ainsi la communication et le marketing autour des produits.

47

Page 48: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

LICENCES

48

Page 49: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

MSDN subscriber offers

Page 50: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

MSDN subscriber offers

Page 51: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

Tarifs classic (-10% via RedFabriQ)

51

STARTER INDIE BUSINESS ENTERPRISE

FREE $299 / year $999 / year $1899 / yearPer platform, per developer Per platform, per developer Per platform, per developer

Permitted use (Companies or incorporated entities with more than five

employees must purchase a Business or Enterprise plan)Individual Individual Organization Organization

Deploy to Device (Xamarin enables you to build, debug and ship to devices)

Deploy to App Stores (Deploy to the Apple App Store, Google Play Store,

Amazon Appstore, and any public app marketplace)

Xamarin Studio (Xamarin Studio is a cross-platform IDE for Windows and

Mac that allows you to write mobile apps in C #)

Unlimited App Size (Starter edition will give you a taste for Xamarin by

letting you build small apps that cannot P/Invoke third-party librairies. When

your app outgrows starter edition, you will be offered to upgrade to a paid

plan)

Visual Studio Support (Use Visual Studio to build, deploy and debug iOS and

Android apps. Leverage the Microsoft ecosystem, including TFS and plugins

such as Resharper)

Business Features (Support for in-house deployment, headless builds, WCF,

and System.Data.SqlClient)

Prime Components (Over $ 500 in pre-built app components including UI

controls and themes to help you get your app done faster)

Email Support (Private, expert email support directly from Xamarin support

engineers)

One Business Day SLA (For our Enterprise customers, we offer a guaranted

response time of one business day)

Hotfixes (Xamarin Enterprise customers blocked by verified bugs that do not

have a reasonable workaround have access to patched builds of our current

stable releases once a fix is available)

Technical Kick-off Session (Spend one hour with a Xamarin success engineer

getting all the information you need to start your project on the right foot)

Technical Account Manager (A technical Account Manager who is dedicated

to make your mobile projects successful)

Code Troubleshooting At Extra Cost At Extra Cost

Page 52: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

QUI EST XAMARIN ?

52

Page 53: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

XAMARIN

Originellement issu des travaux du projet MONO (Machine virtuelle sous Linux)

Un projet Open Source : MonoCross

Une équipe et une croissance fulgurante

Une validation par le Gartner, des clients et un réseau de partenaires

53

Page 54: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

Xamarin: Croissance explosive en 2 ans

430,000 développeurs enregistrés en 2 ans

Plus de 30,000 développeurs s’inscrivent tous les mois

Des clients dans 70 pays

Recognized as Mobile “Visionary” in 2013 Magic Quadrant for MADP

Winner—2013 Visual Studio Integration Partner of the Year Award

54

Page 55: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

“Xamarin's architectural approach provides completely native UIs with better performance than other cross-platform techniques... Xamarin uses

multifaceted technology built by a cohesive team with a solid long-term track record.”

Le Gartner soutient fermement la technologie Xamarin

Gartner, August 2013

55

Page 56: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

Les références

56

Page 57: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

XAMARIN et Microsoft

Les deux équipes collaborent ensemble sur de nombreux évènements et travaux d’intégration

Evangélisation : DPE

Développement : équipes Visual Studio et Xamarin

Notre présence ici

Etc….

Rapports de niveau exécutif

Partenariat Entreprise

Roadmap produite en commun

Travaux communs en marketing et événements

D’ailleurs XAMARIN est présent dans les évènements majeurs depuis 2013

57

Page 58: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

XAMARIN et RedFabriQ

Premier Consulting Partner

Près de 3 ans d’expériences sur nos deux activités

Consulting / Service (Forfait et Régie)

Editeur logiciel

58

Page 59: RedFabriQ - meetup Xamarin Paris - Session d'ouverture

Reproduction prohibited without authorization

QUESTIONS / RÉPONSES

59