SlideShare une entreprise Scribd logo
1  sur  38
Du RIA pour mon SI : Microsoft
      Silverlight vs Adobe Flex

                       David Alia
                   Djamel Zouaoui
Introduction

L’évolution des applications web
Une évolution naturelle…
Modèle classique d’application web
Modèle web 1.x
Modèle Full Ajax
Modèle RIA
L’évolution des applications web




              Modèle classique                                                                 Modèle 100%
                                                       Modèle « web 1.x »                                                          Modèle RIA
              d’application web                                                                   Ajax


              • Navigation page à page          • Ajout de comportements             • Rafraichissement partiel de la     • IHM vectorielles
              • Rechargement complet de la      asynchrones                          page en cours                        • Graphismes riches, animations
              page (effet « page blanche »      • Quelques composants riches         • Les échanges asynchrones           • Fluidité
              accompagné d’une attente)                                              donnent une impression de            • Ergonomie similaire à celle du
              • Eléments graphiques simples                                          fluidité                             client lourd
                                                                                     • La navigation se fait de plus en   • Démocratisé sur le web mais
Expérience                                                                           plus au sein de la même page         moins dans les SI
utilisateur



                • HTML, ASP/JSP : facile à écrire mais une horreur à faire évoluer   • Utilisation de librairies (ex :    • Paradigmes de
                • Componentisation faible                                            yahoo UI) mais maintenabilité        développement proches du
                • Mélange IHM & code métier                                          Javascript complexe                  client lourd
                •…                                                                   • CSS mais gestion multi-            • Langages puissants et outillés
 Expérience                                                                          navigateur
développeur
L’évolution des applications web




              Modèle classique                               Modèle 100%
                                        Modèle « web 1.x »                 Modèle RIA
              d’application web                                 Ajax




Expérience
utilisateur




 Expérience
développeur
Les enjeux de la RIA

• Selection naturelle… Darwin… mais encore ?

• L’ergonomie n’est plus une option, elle fait partie
  intégrante des critères de valorisation d’une application

• La productivité et la pérennité des développements dans
  la création d’interfaces riches


                       Réconcilier les deux mondes
                                    ou
       Comment produire des applications “aussi agréables à utiliser
                           qu’à construire”
Tour d’horizon de la RIA
Expérience
                                                  Les concepts RIA
utilisateur




   • Des interfaces novatrices
          – Plus intuitives et adaptives
          – Adaptées aux gestes métiers
          – Disposant d’un meilleur look & feel


   • Les avantages des deux mondes
          – Du client lourd
              • Fluidité
              • Vectoriel
          – Du web
              • Distribution de l’applicatif côté serveur
              • Diffusion maximale

                      Le navigateur se fait oublier au profit de l’application
Expérience
                                              Les concepts RIA
développeur


 • Multi-plateformes
       – Coté client : plugin navigateur
       – Coté serveur : pas d’adhérence à la technologie serveur




 • Paradigmes de développement
       – La partie graphique n’est pas générée côté serveur mais distribuée
       – L’exécution est totalement déléguée au plugin navigateur
              • Plus de gestion de sessions
              • Plus de problématique d’état à conserver…


       – Architecture orientée services
Les acteurs




Et aussi…
            GWT       HTML 5
Zoom sur les technologies

Microsoft Silverlight et Adobe Flex
La plateforme
L’industrialisation des développements
Du code : Flex

var auteurs =                                                            E4X
<auteurs>
<auteur>
  <nom>Pennac</nom>
  <prenom>Daniel</prenom>
  <genre>M</genre>
</auteur>
<auteur>
  <nom>Barbery</nom>
  <prenom>Muriel</prenom>
  <genre>F</genre>
</auteur>
</auteurs>;                                                                      API Flash
                                 <mx:Script>
                                       <![CDATA[
document.write(auteurs.auteur.(genre == ”M").nom);
                                             protected var cam:Camera;

                                            public function init():void {
                                                   cam = Camera.getCamera();
                                                   videoBox.attachCamera(cam);
                                            }
                                     ]]>
                                </mx:Script>
Du code : Silverlight
Du code : Silverlight




private void txtFilter_TextChanged(object sender, TextChangedEventArgs e)                         C#
    {
      <TextBox x:Name="txtFilter" TextChanged="txtFilter_TextChanged" />
       if (authors != null)                                                                         Xaml
       {
              <data:DataGrid x:Name="datagridAuthors" AutoGenerateColumns="False" Height="200" Margin="5"
          datagridAuthors.ItemsSource = from author in authors
      Width="500"> where author.Name.ToLower().Contains(txtFilter.Text.ToLower())
                <data:DataGrid.Columns>
                       select author;
       }          <data:DataGridTextColumn Header="Nom" Binding="{Binding LastName}" CanUserSort="True"/>
    }             <data:DataGridTextColumn Header="Prénom" Binding="{Binding Name}"/>
                  <data:DataGridTextColumn Header="Genre" Binding="{Binding Genre}"/>
                </data:DataGrid.Columns>
              </data:DataGrid>
Du code : Silverlight




private void txtFilter_TextChanged(object sender, TextChangedEventArgs e)                         C#
    {
      <TextBox x:Name="txtFilter" TextChanged="txtFilter_TextChanged" />
       if (authors != null)                                                                         Xaml
       {
              <data:DataGrid x:Name="datagridAuthors" AutoGenerateColumns="False" Height="200" Margin="5"
          datagridAuthors.ItemsSource = from author in authors
      Width="500"> where author.Name.ToLower().Contains(txtFilter.Text.ToLower())
                <data:DataGrid.Columns>
                       select author;
       }          <data:DataGridTextColumn Header="Nom" Binding="{Binding LastName}" CanUserSort="True"/>
    }             <data:DataGridTextColumn Header="Prénom" Binding="{Binding Name}"/>
                  <data:DataGridTextColumn Header="Genre" Binding="{Binding Genre}"/>
                </data:DataGrid.Columns>
              </data:DataGrid>
Les avantages de chaque plateforme

    Microsoft Silverlight                          Adobe Flex
• Plateforme de                          • Flash Player 9 est déployé
  développement performante                dans 94% des navigateurs
   – Outillage pour le                      – Et compatible multi-
     développement : Visual Studio            plateformes
   – Outillage pour le design :
     Gamme Expression
                                         • Intégration avec les outils
                                           Adobe
• Capitalisation                            – Passerelle naturelle avec
   – Des connaissances                        Creative Suite
   – Des ressources et codes déjà           – Un seul code pour Flex / Air
     existants
                                         • Une orientation opensource
• Les Langages .NET                         – VM Flash, SDK
   – Technologie : rapidité de mise en        Flex, BlazeDS…
     œuvre via Linq, Generics…              – Publication des spécifications
   – Dynamique : Python, Ruby…                du format SWF, AMF et RTMP
Microsoft Silverlight vs Adobe Flex

                           Le match
Une grille de lecture…


                                 Silverlight     Flex
Contexte .net
Contexte Java
Productivité des devs
Ouverture au web
Performance
Courbe d’apprentissage
Disponibilité des ressources
...
Une grille de lecture…


                                 Silverlight     Flex
Contexte .net
Contexte Java
Productivité des devs
Ouverture au web
Performance
Courbe d’apprentissage
Disponibilité des ressources
...
Cas d’utilisation n°1

                                     • Enjeux
       • Roger d’Ubontaba               – Intégration dans les SI
       •   Directeur technique            des filiales : COM, .NET,
       •   Société Philippe Boris         Access, SQL Server…
                                        – Time to market
                                        – Budget alloué faible
• Contexte et objectifs
   – SI full Microsoft
   – Réalisation d’une
     application centralisée
     (multi-filiales) de reporting
     sur la logistique
   – Diffusion : 80 utilisateurs
     authentifiés                    Difficulté : ★
Cas d’utilisation n°1

• Notre réponse
  – Microsoft Silverlight
  – ASP.NET (oui, mais non)

• Notre argumentation
  – Pour les deux réponses :
      – Homogénéité des technologies du SI
      – Coût d’entrée faible
  – En faveur de Silverlight :
      – Du mouf-mouf pour pas cher
      – Meilleure productivité des développements / maintenance facilitée
Cas d’utilisation n°2

                                   • Enjeux
       • Désiré Sponsable             – Vaincre l’habitude de
       •   JEE Technical Leader         l’AS/400
       •   Bank Lehman Sisters        – Interface graphique
                                        dynamique et ergonomie
                                        avancée
• Contexte et objectifs               – Réutilisation de services
   – Equipe à forte culture             existants (GED, comptes,
     Java (anti-Kro$oft)                CRM…)
   – Réalisation d’une
     application dédiée au call-
     center
   – Diffusion : 50 utilisateurs
     authentifiés                  Difficulté : ★
Cas d’utilisation n°2

• Notre réponse
  – Adobe Flex
  – GWT (oui mais non)

• Notre argumentation
  – Pour les deux réponses :
     – Interaction Java avancée
     – Culture des développeurs
  – En faveur de Flex :
     – Du mouf-mouf pour pas cher
     – Meilleure productivité des développements / maintenance facilitée

                                              Ca ne vous
                                            rappelle rien ?
Cas d’utilisation n°3

                                   • Enjeux
       • Eddy Teurdetexte             – Connectivité avec les
       •   Chef de projet               services du Back Office
       •   Clémentine (Télécom)       – Ergonomie
                                      – Temps de réponse courts
• Contexte et objectifs
   – Back Office 100% PHP
   – Refonte de l’application
     vieillissante de gestion
     des abonnements
   – Diffusion : 50 utilisateurs
     authentifiés
                                   Difficulté : ★★
Cas d’utilisation n°3

• Notre réponse
  – Adobe Flex
  – Microsoft Silverlight

• Notre argumentation
  – Pour les deux réponses :
      – Connectivité immédiate aux services du Back Office
      – Performances et ergonomie équivalentes
      – Coût d’entrée sur la technologie
  – (Peut-être) en faveur de Flex :
      – Ouverture de l’application sur Internet : accessibilité à Mme Michu
  – (Peut-être) en faveur de Silverlight :
      – Disponibilité des compétences liées à la proximité technologie Microsoft
Cas d’utilisation n°4

                                   • Enjeux
      • Jean Tourloupe               – Haute performance
      •   Architecte                 – Compatibilité avec 100%
      •   Ministère des finances       des internautes français
                                     – Bling-bling pour
                                       l’application de gestion de
• Contexte et objectifs                budget
   – Etendre la déclaration des      – Navigation assistée
     impôts à la gestion de
     budget en ligne
   – Diffusion sur le web
   – Pics d’utilisation pendant
     deux mois
                                   Difficulté : ★★★
Cas d’utilisation n°4

• Notre réponse
  – Adobe Flex



• Notre argumentation
  – Performances
      – Protocole de transfert Flex : format AMF natif
      – Back Office : on n’imagine pas une plateforme sous x86/Windows
  – Diffusion multi-plateformes : maturité des plugins navigateur
  – Intégration avec des applications Back Office hétérogènes
Cas d’utilisation n°5

                                  • Enjeux
       • Marc Héting                 – Mode 100% ASP
       •   Directeur                 – Temps de réponse faibles
       •   Editeur Dentaface
                                     – Ergonomie proche du
                                       client lourd
• Contexte et objectifs
   – Réalisation « from
     scratch » d’une
     application intégrée de
     gestion de clients pour
     dentistes
   – Diffusion sur le web
                                  Difficulté : ★★
Cas d’utilisation n°5

• Notre réponse
  – Microsoft Silverlight



• Notre argumentation
  –   Productivité des développements et maintenance facilitée
  –   Courbe d’apprentissage faible
  –   Disponibilité des compétences
  –   Simplicité de l’infrastructure nécessaire
  –   Environnements client maîtrisés
Conclusion
Ce qu’il faut retenir

• La RIA se dote de nouveaux paradigmes
   – Dépassez la phase transitoire actuelle

• Basculez !
   – La RIA, c’est une meilleure expérience utilisateur
   – La RIA, c’est une meilleure expérience développeur


• Silverlight et Flex sont matures
   – Cherchez votre cas d’utilisation plutôt qu’une comparaison grille
     ou passionnelle
   – Et industrialisez, les outils le permettent !

• Et ensuite… la mobilité ?
                                                     Crédits photo : http://gombinoscope.free.fr/
Questions ?

Contenu connexe

Tendances

Identity as a Service (IDaaS), un service prêt à l’usage avec Windows Azure AD
Identity as a Service (IDaaS), un service prêt à l’usage avec Windows Azure ADIdentity as a Service (IDaaS), un service prêt à l’usage avec Windows Azure AD
Identity as a Service (IDaaS), un service prêt à l’usage avec Windows Azure AD
Microsoft
 
#nwxtech6 Frédéric Bisson - SVG pour le web
#nwxtech6 Frédéric Bisson - SVG pour le web#nwxtech6 Frédéric Bisson - SVG pour le web
#nwxtech6 Frédéric Bisson - SVG pour le web
Normandie Web Xperts
 
Architectures et application hybrides selon vos termes et à votre propre rythme
Architectures et application hybrides selon vos termes et à votre propre rythmeArchitectures et application hybrides selon vos termes et à votre propre rythme
Architectures et application hybrides selon vos termes et à votre propre rythme
Microsoft
 
Front end, une île qui mérite d'être visitée
Front end, une île qui mérite d'être visitéeFront end, une île qui mérite d'être visitée
Front end, une île qui mérite d'être visitée
Ouadie LAHDIOUI
 

Tendances (19)

eServices-Chp6: WOA
eServices-Chp6: WOAeServices-Chp6: WOA
eServices-Chp6: WOA
 
Les frameworks flashlike javascript
Les frameworks flashlike javascriptLes frameworks flashlike javascript
Les frameworks flashlike javascript
 
Introduction aux Technologies Web élaborée par Marouan OMEZZINE
Introduction aux Technologies Web élaborée par Marouan OMEZZINEIntroduction aux Technologies Web élaborée par Marouan OMEZZINE
Introduction aux Technologies Web élaborée par Marouan OMEZZINE
 
Identity as a Service (IDaaS), un service prêt à l’usage avec Windows Azure AD
Identity as a Service (IDaaS), un service prêt à l’usage avec Windows Azure ADIdentity as a Service (IDaaS), un service prêt à l’usage avec Windows Azure AD
Identity as a Service (IDaaS), un service prêt à l’usage avec Windows Azure AD
 
Les données on-premise et dans le cloud. Quelles options ?
Les données on-premise et dans le cloud. Quelles options ?Les données on-premise et dans le cloud. Quelles options ?
Les données on-premise et dans le cloud. Quelles options ?
 
Création de visuels personnalisés avec Power BI Visuals CLI
Création de visuels personnalisésavec Power BI Visuals CLICréation de visuels personnalisésavec Power BI Visuals CLI
Création de visuels personnalisés avec Power BI Visuals CLI
 
#nwxtech6 Frédéric Bisson - SVG pour le web
#nwxtech6 Frédéric Bisson - SVG pour le web#nwxtech6 Frédéric Bisson - SVG pour le web
#nwxtech6 Frédéric Bisson - SVG pour le web
 
L'histoire d'html5 pour les développeurs windows phone 8
L'histoire d'html5 pour les développeurs windows phone 8L'histoire d'html5 pour les développeurs windows phone 8
L'histoire d'html5 pour les développeurs windows phone 8
 
Introduction au développement windows 8 modern ui avec html5 et javascript
Introduction au développement windows 8 modern ui avec html5 et javascriptIntroduction au développement windows 8 modern ui avec html5 et javascript
Introduction au développement windows 8 modern ui avec html5 et javascript
 
Introduction au développement Windows 8 et Windows Phone 8
Introduction au développement Windows 8 et Windows Phone 8Introduction au développement Windows 8 et Windows Phone 8
Introduction au développement Windows 8 et Windows Phone 8
 
Hello AngularJS - Back to the future
Hello AngularJS - Back to the futureHello AngularJS - Back to the future
Hello AngularJS - Back to the future
 
Programmer en html5, css 3 et java script (70 480)
Programmer en html5, css 3 et java script (70 480)Programmer en html5, css 3 et java script (70 480)
Programmer en html5, css 3 et java script (70 480)
 
Flex, une techno RIA incontournable pour les futures app web ?
Flex, une techno RIA incontournable pour les futures app web ?Flex, une techno RIA incontournable pour les futures app web ?
Flex, une techno RIA incontournable pour les futures app web ?
 
Développer son site internet et optimiser son référencement
Développer son site internet et optimiser son référencementDévelopper son site internet et optimiser son référencement
Développer son site internet et optimiser son référencement
 
Angluars js
Angluars jsAngluars js
Angluars js
 
Architectures et application hybrides selon vos termes et à votre propre rythme
Architectures et application hybrides selon vos termes et à votre propre rythmeArchitectures et application hybrides selon vos termes et à votre propre rythme
Architectures et application hybrides selon vos termes et à votre propre rythme
 
Ajax en Java - GTI780 & MTI780 - ETS - A09
Ajax en Java - GTI780 & MTI780 - ETS - A09Ajax en Java - GTI780 & MTI780 - ETS - A09
Ajax en Java - GTI780 & MTI780 - ETS - A09
 
Front end, une île qui mérite d'être visitée
Front end, une île qui mérite d'être visitéeFront end, une île qui mérite d'être visitée
Front end, une île qui mérite d'être visitée
 
Comment intégrer Dynamics CRM 2011 dans son système d'information?
Comment intégrer Dynamics CRM 2011 dans son système d'information?Comment intégrer Dynamics CRM 2011 dans son système d'information?
Comment intégrer Dynamics CRM 2011 dans son système d'information?
 

En vedette

Cartes postales pourquoi l'ump
Cartes postales  pourquoi l'ump  Cartes postales  pourquoi l'ump
Cartes postales pourquoi l'ump
Alexandre Houpert
 
Ppt phillipe jurain
Ppt phillipe jurain Ppt phillipe jurain
Ppt phillipe jurain
Marion Jandin
 
Trimestriel Septembre 2014
Trimestriel Septembre 2014Trimestriel Septembre 2014
Trimestriel Septembre 2014
Maison Africaine
 
Power point (carrière informatique) a rendre
 Power point (carrière informatique) a rendre  Power point (carrière informatique) a rendre
Power point (carrière informatique) a rendre
yamakuzayan1
 
retail-Articles de Paris
retail-Articles de Parisretail-Articles de Paris
retail-Articles de Paris
ap-slideshare
 
Valence entre futur et tradition. programme 4 jours 2012
Valence entre futur et tradition. programme 4 jours 2012Valence entre futur et tradition. programme 4 jours 2012
Valence entre futur et tradition. programme 4 jours 2012
RTAdmcSPAIN
 
Mes vacances
Mes vacancesMes vacances
Mes vacances
JasmineFB
 
Vers une Autonomie constitutionnalisée
Vers une Autonomie constitutionnaliséeVers une Autonomie constitutionnalisée
Vers une Autonomie constitutionnalisée
Jo Anis
 
Rac fnh-diesel-v6
Rac fnh-diesel-v6Rac fnh-diesel-v6
Rac fnh-diesel-v6
RAC-F
 
Le Progressiste 2243
Le Progressiste 2243Le Progressiste 2243
Le Progressiste 2243
Jo Anis
 
Programme 2009 Ecoterritoires
Programme 2009 EcoterritoiresProgramme 2009 Ecoterritoires
Programme 2009 Ecoterritoires
regionalpartner56
 

En vedette (20)

Cartes postales pourquoi l'ump
Cartes postales  pourquoi l'ump  Cartes postales  pourquoi l'ump
Cartes postales pourquoi l'ump
 
Plaquette Institutionnelle Exprom Facilities
Plaquette Institutionnelle Exprom FacilitiesPlaquette Institutionnelle Exprom Facilities
Plaquette Institutionnelle Exprom Facilities
 
Par#13
Par#13Par#13
Par#13
 
Vivre à la Réunion - L'attractivité de la Réunion
Vivre à la Réunion - L'attractivité de la RéunionVivre à la Réunion - L'attractivité de la Réunion
Vivre à la Réunion - L'attractivité de la Réunion
 
Ppt phillipe jurain
Ppt phillipe jurain Ppt phillipe jurain
Ppt phillipe jurain
 
Trimestriel Septembre 2014
Trimestriel Septembre 2014Trimestriel Septembre 2014
Trimestriel Septembre 2014
 
Power point (carrière informatique) a rendre
 Power point (carrière informatique) a rendre  Power point (carrière informatique) a rendre
Power point (carrière informatique) a rendre
 
PRE transition
PRE transitionPRE transition
PRE transition
 
Présentation2
Présentation2Présentation2
Présentation2
 
retail-Articles de Paris
retail-Articles de Parisretail-Articles de Paris
retail-Articles de Paris
 
Valence entre futur et tradition. programme 4 jours 2012
Valence entre futur et tradition. programme 4 jours 2012Valence entre futur et tradition. programme 4 jours 2012
Valence entre futur et tradition. programme 4 jours 2012
 
Services Smart City Marseille
Services Smart City MarseilleServices Smart City Marseille
Services Smart City Marseille
 
EveryonePrint install guide 4.0 FR
EveryonePrint install guide 4.0 FREveryonePrint install guide 4.0 FR
EveryonePrint install guide 4.0 FR
 
S'ILS AVAIENT ÉTÉ PUBLICITAIRES
S'ILS AVAIENT ÉTÉ PUBLICITAIRESS'ILS AVAIENT ÉTÉ PUBLICITAIRES
S'ILS AVAIENT ÉTÉ PUBLICITAIRES
 
Mes vacances
Mes vacancesMes vacances
Mes vacances
 
Model de qualité @ msdevmtl
Model de qualité @ msdevmtlModel de qualité @ msdevmtl
Model de qualité @ msdevmtl
 
Vers une Autonomie constitutionnalisée
Vers une Autonomie constitutionnaliséeVers une Autonomie constitutionnalisée
Vers une Autonomie constitutionnalisée
 
Rac fnh-diesel-v6
Rac fnh-diesel-v6Rac fnh-diesel-v6
Rac fnh-diesel-v6
 
Le Progressiste 2243
Le Progressiste 2243Le Progressiste 2243
Le Progressiste 2243
 
Programme 2009 Ecoterritoires
Programme 2009 EcoterritoiresProgramme 2009 Ecoterritoires
Programme 2009 Ecoterritoires
 

Similaire à USI 2009 - Du RIA pour SI

La caisse à outils de la visualisation d'informations
La caisse à outils de la visualisation d'informationsLa caisse à outils de la visualisation d'informations
La caisse à outils de la visualisation d'informations
ChristopheTricot
 
Html5 par Florent Garin, au Toulouse JUG
Html5 par Florent Garin, au Toulouse JUGHtml5 par Florent Garin, au Toulouse JUG
Html5 par Florent Garin, au Toulouse JUG
JUG Toulouse
 
Wpl53 g formation-developper-des-applications-pour-ibm-websphere-portal-8-0-a...
Wpl53 g formation-developper-des-applications-pour-ibm-websphere-portal-8-0-a...Wpl53 g formation-developper-des-applications-pour-ibm-websphere-portal-8-0-a...
Wpl53 g formation-developper-des-applications-pour-ibm-websphere-portal-8-0-a...
CERTyou Formation
 

Similaire à USI 2009 - Du RIA pour SI (20)

RIA
RIARIA
RIA
 
La caisse à outils de la visualisation d'informations
La caisse à outils de la visualisation d'informationsLa caisse à outils de la visualisation d'informations
La caisse à outils de la visualisation d'informations
 
Introduction aux RIA (Rich Internet Applications)
Introduction aux RIA (Rich Internet Applications)Introduction aux RIA (Rich Internet Applications)
Introduction aux RIA (Rich Internet Applications)
 
Asp.net Présentation de L'application "Organizer"
Asp.net Présentation de L'application "Organizer"Asp.net Présentation de L'application "Organizer"
Asp.net Présentation de L'application "Organizer"
 
Html5 par Florent Garin, au Toulouse JUG
Html5 par Florent Garin, au Toulouse JUGHtml5 par Florent Garin, au Toulouse JUG
Html5 par Florent Garin, au Toulouse JUG
 
L'Open Web en tant que pierre angulaire du développement multi-objets
L'Open Web en tant que pierre angulaire du développement multi-objetsL'Open Web en tant que pierre angulaire du développement multi-objets
L'Open Web en tant que pierre angulaire du développement multi-objets
 
Node.js et les nouvelles technologies javascript
Node.js et les nouvelles technologies javascriptNode.js et les nouvelles technologies javascript
Node.js et les nouvelles technologies javascript
 
Devforumfrancois Tonic
Devforumfrancois TonicDevforumfrancois Tonic
Devforumfrancois Tonic
 
Le Web comme plateforme applicative - comment programme-t-on le Web?
Le Web comme plateforme applicative - comment programme-t-on le Web?Le Web comme plateforme applicative - comment programme-t-on le Web?
Le Web comme plateforme applicative - comment programme-t-on le Web?
 
Les dernières avancées HTML5 & CSS3 en action !
Les dernières avancées HTML5 & CSS3 en action !Les dernières avancées HTML5 & CSS3 en action !
Les dernières avancées HTML5 & CSS3 en action !
 
HTML5 W3C Conference Euratechnologie
HTML5 W3C Conference EuratechnologieHTML5 W3C Conference Euratechnologie
HTML5 W3C Conference Euratechnologie
 
La production cartographique pour les SIG version Web
La production cartographique pour les SIG version WebLa production cartographique pour les SIG version Web
La production cartographique pour les SIG version Web
 
Retour d'experience projet AngularJS
Retour d'experience projet AngularJSRetour d'experience projet AngularJS
Retour d'experience projet AngularJS
 
Aspectize meetup
Aspectize meetupAspectize meetup
Aspectize meetup
 
Wpl53 g formation-developper-des-applications-pour-ibm-websphere-portal-8-0-a...
Wpl53 g formation-developper-des-applications-pour-ibm-websphere-portal-8-0-a...Wpl53 g formation-developper-des-applications-pour-ibm-websphere-portal-8-0-a...
Wpl53 g formation-developper-des-applications-pour-ibm-websphere-portal-8-0-a...
 
Les défis d’une application mobile multi-périphériques avec HTML5
Les défis d’une application mobile multi-périphériques avec HTML5Les défis d’une application mobile multi-périphériques avec HTML5
Les défis d’une application mobile multi-périphériques avec HTML5
 
HTML5... La révolution maintenant!
HTML5... La révolution maintenant!HTML5... La révolution maintenant!
HTML5... La révolution maintenant!
 
HTML5... La révolution maintenant!
HTML5... La révolution maintenant!HTML5... La révolution maintenant!
HTML5... La révolution maintenant!
 
Formation d'architecte logiciel AFCEPF
Formation d'architecte logiciel AFCEPFFormation d'architecte logiciel AFCEPF
Formation d'architecte logiciel AFCEPF
 
ENIB 2013-2014 - CAI Web #1: Côté navigateur 1/3
ENIB 2013-2014 - CAI Web #1: Côté navigateur 1/3ENIB 2013-2014 - CAI Web #1: Côté navigateur 1/3
ENIB 2013-2014 - CAI Web #1: Côté navigateur 1/3
 

Plus de Djamel Zouaoui

Datajob 2013 - Construire un système de recommandation
Datajob 2013 - Construire un système de recommandationDatajob 2013 - Construire un système de recommandation
Datajob 2013 - Construire un système de recommandation
Djamel Zouaoui
 
Usi 2013 - NoSql les defis à relever
Usi 2013 -  NoSql les defis à releverUsi 2013 -  NoSql les defis à relever
Usi 2013 - NoSql les defis à relever
Djamel Zouaoui
 
Microsoft Tech days 2007 - Industrialisation des développements : Retours d'e...
Microsoft Tech days 2007 - Industrialisation des développements : Retours d'e...Microsoft Tech days 2007 - Industrialisation des développements : Retours d'e...
Microsoft Tech days 2007 - Industrialisation des développements : Retours d'e...
Djamel Zouaoui
 
Retour d'expérience TechLead
Retour d'expérience TechLeadRetour d'expérience TechLead
Retour d'expérience TechLead
Djamel Zouaoui
 
Présentation Alt.net - Tests unitaires automatisés
Présentation Alt.net - Tests unitaires automatisésPrésentation Alt.net - Tests unitaires automatisés
Présentation Alt.net - Tests unitaires automatisés
Djamel Zouaoui
 
USI Casablanca 2010 - Industrialisation et intégration continue
USI Casablanca 2010 - Industrialisation et intégration continueUSI Casablanca 2010 - Industrialisation et intégration continue
USI Casablanca 2010 - Industrialisation et intégration continue
Djamel Zouaoui
 
USI 2011 - De l offshore qui fonctionne !
USI 2011 - De l offshore qui fonctionne !USI 2011 - De l offshore qui fonctionne !
USI 2011 - De l offshore qui fonctionne !
Djamel Zouaoui
 

Plus de Djamel Zouaoui (9)

Paris Data Geek - Spark Streaming
Paris Data Geek - Spark Streaming Paris Data Geek - Spark Streaming
Paris Data Geek - Spark Streaming
 
Datajob 2013 - Construire un système de recommandation
Datajob 2013 - Construire un système de recommandationDatajob 2013 - Construire un système de recommandation
Datajob 2013 - Construire un système de recommandation
 
Usi 2013 - NoSql les defis à relever
Usi 2013 -  NoSql les defis à releverUsi 2013 -  NoSql les defis à relever
Usi 2013 - NoSql les defis à relever
 
ParisDataGeek - L amour est dans le graphe
ParisDataGeek - L amour est dans le grapheParisDataGeek - L amour est dans le graphe
ParisDataGeek - L amour est dans le graphe
 
Microsoft Tech days 2007 - Industrialisation des développements : Retours d'e...
Microsoft Tech days 2007 - Industrialisation des développements : Retours d'e...Microsoft Tech days 2007 - Industrialisation des développements : Retours d'e...
Microsoft Tech days 2007 - Industrialisation des développements : Retours d'e...
 
Retour d'expérience TechLead
Retour d'expérience TechLeadRetour d'expérience TechLead
Retour d'expérience TechLead
 
Présentation Alt.net - Tests unitaires automatisés
Présentation Alt.net - Tests unitaires automatisésPrésentation Alt.net - Tests unitaires automatisés
Présentation Alt.net - Tests unitaires automatisés
 
USI Casablanca 2010 - Industrialisation et intégration continue
USI Casablanca 2010 - Industrialisation et intégration continueUSI Casablanca 2010 - Industrialisation et intégration continue
USI Casablanca 2010 - Industrialisation et intégration continue
 
USI 2011 - De l offshore qui fonctionne !
USI 2011 - De l offshore qui fonctionne !USI 2011 - De l offshore qui fonctionne !
USI 2011 - De l offshore qui fonctionne !
 

USI 2009 - Du RIA pour SI

  • 1. Du RIA pour mon SI : Microsoft Silverlight vs Adobe Flex David Alia Djamel Zouaoui
  • 8. L’évolution des applications web Modèle classique Modèle 100% Modèle « web 1.x » Modèle RIA d’application web Ajax • Navigation page à page • Ajout de comportements • Rafraichissement partiel de la • IHM vectorielles • Rechargement complet de la asynchrones page en cours • Graphismes riches, animations page (effet « page blanche » • Quelques composants riches • Les échanges asynchrones • Fluidité accompagné d’une attente) donnent une impression de • Ergonomie similaire à celle du • Eléments graphiques simples fluidité client lourd • La navigation se fait de plus en • Démocratisé sur le web mais Expérience plus au sein de la même page moins dans les SI utilisateur • HTML, ASP/JSP : facile à écrire mais une horreur à faire évoluer • Utilisation de librairies (ex : • Paradigmes de • Componentisation faible yahoo UI) mais maintenabilité développement proches du • Mélange IHM & code métier Javascript complexe client lourd •… • CSS mais gestion multi- • Langages puissants et outillés Expérience navigateur développeur
  • 9. L’évolution des applications web Modèle classique Modèle 100% Modèle « web 1.x » Modèle RIA d’application web Ajax Expérience utilisateur Expérience développeur
  • 10. Les enjeux de la RIA • Selection naturelle… Darwin… mais encore ? • L’ergonomie n’est plus une option, elle fait partie intégrante des critères de valorisation d’une application • La productivité et la pérennité des développements dans la création d’interfaces riches Réconcilier les deux mondes ou Comment produire des applications “aussi agréables à utiliser qu’à construire”
  • 12. Expérience Les concepts RIA utilisateur • Des interfaces novatrices – Plus intuitives et adaptives – Adaptées aux gestes métiers – Disposant d’un meilleur look & feel • Les avantages des deux mondes – Du client lourd • Fluidité • Vectoriel – Du web • Distribution de l’applicatif côté serveur • Diffusion maximale Le navigateur se fait oublier au profit de l’application
  • 13. Expérience Les concepts RIA développeur • Multi-plateformes – Coté client : plugin navigateur – Coté serveur : pas d’adhérence à la technologie serveur • Paradigmes de développement – La partie graphique n’est pas générée côté serveur mais distribuée – L’exécution est totalement déléguée au plugin navigateur • Plus de gestion de sessions • Plus de problématique d’état à conserver… – Architecture orientée services
  • 15. Zoom sur les technologies Microsoft Silverlight et Adobe Flex
  • 18. Du code : Flex var auteurs = E4X <auteurs> <auteur> <nom>Pennac</nom> <prenom>Daniel</prenom> <genre>M</genre> </auteur> <auteur> <nom>Barbery</nom> <prenom>Muriel</prenom> <genre>F</genre> </auteur> </auteurs>; API Flash <mx:Script> <![CDATA[ document.write(auteurs.auteur.(genre == ”M").nom); protected var cam:Camera; public function init():void { cam = Camera.getCamera(); videoBox.attachCamera(cam); } ]]> </mx:Script>
  • 19. Du code : Silverlight
  • 20. Du code : Silverlight private void txtFilter_TextChanged(object sender, TextChangedEventArgs e) C# { <TextBox x:Name="txtFilter" TextChanged="txtFilter_TextChanged" /> if (authors != null) Xaml { <data:DataGrid x:Name="datagridAuthors" AutoGenerateColumns="False" Height="200" Margin="5" datagridAuthors.ItemsSource = from author in authors Width="500"> where author.Name.ToLower().Contains(txtFilter.Text.ToLower()) <data:DataGrid.Columns> select author; } <data:DataGridTextColumn Header="Nom" Binding="{Binding LastName}" CanUserSort="True"/> } <data:DataGridTextColumn Header="Prénom" Binding="{Binding Name}"/> <data:DataGridTextColumn Header="Genre" Binding="{Binding Genre}"/> </data:DataGrid.Columns> </data:DataGrid>
  • 21. Du code : Silverlight private void txtFilter_TextChanged(object sender, TextChangedEventArgs e) C# { <TextBox x:Name="txtFilter" TextChanged="txtFilter_TextChanged" /> if (authors != null) Xaml { <data:DataGrid x:Name="datagridAuthors" AutoGenerateColumns="False" Height="200" Margin="5" datagridAuthors.ItemsSource = from author in authors Width="500"> where author.Name.ToLower().Contains(txtFilter.Text.ToLower()) <data:DataGrid.Columns> select author; } <data:DataGridTextColumn Header="Nom" Binding="{Binding LastName}" CanUserSort="True"/> } <data:DataGridTextColumn Header="Prénom" Binding="{Binding Name}"/> <data:DataGridTextColumn Header="Genre" Binding="{Binding Genre}"/> </data:DataGrid.Columns> </data:DataGrid>
  • 22. Les avantages de chaque plateforme Microsoft Silverlight Adobe Flex • Plateforme de • Flash Player 9 est déployé développement performante dans 94% des navigateurs – Outillage pour le – Et compatible multi- développement : Visual Studio plateformes – Outillage pour le design : Gamme Expression • Intégration avec les outils Adobe • Capitalisation – Passerelle naturelle avec – Des connaissances Creative Suite – Des ressources et codes déjà – Un seul code pour Flex / Air existants • Une orientation opensource • Les Langages .NET – VM Flash, SDK – Technologie : rapidité de mise en Flex, BlazeDS… œuvre via Linq, Generics… – Publication des spécifications – Dynamique : Python, Ruby… du format SWF, AMF et RTMP
  • 23. Microsoft Silverlight vs Adobe Flex Le match
  • 24. Une grille de lecture… Silverlight Flex Contexte .net Contexte Java Productivité des devs Ouverture au web Performance Courbe d’apprentissage Disponibilité des ressources ...
  • 25. Une grille de lecture… Silverlight Flex Contexte .net Contexte Java Productivité des devs Ouverture au web Performance Courbe d’apprentissage Disponibilité des ressources ...
  • 26. Cas d’utilisation n°1 • Enjeux • Roger d’Ubontaba – Intégration dans les SI • Directeur technique des filiales : COM, .NET, • Société Philippe Boris Access, SQL Server… – Time to market – Budget alloué faible • Contexte et objectifs – SI full Microsoft – Réalisation d’une application centralisée (multi-filiales) de reporting sur la logistique – Diffusion : 80 utilisateurs authentifiés Difficulté : ★
  • 27. Cas d’utilisation n°1 • Notre réponse – Microsoft Silverlight – ASP.NET (oui, mais non) • Notre argumentation – Pour les deux réponses : – Homogénéité des technologies du SI – Coût d’entrée faible – En faveur de Silverlight : – Du mouf-mouf pour pas cher – Meilleure productivité des développements / maintenance facilitée
  • 28. Cas d’utilisation n°2 • Enjeux • Désiré Sponsable – Vaincre l’habitude de • JEE Technical Leader l’AS/400 • Bank Lehman Sisters – Interface graphique dynamique et ergonomie avancée • Contexte et objectifs – Réutilisation de services – Equipe à forte culture existants (GED, comptes, Java (anti-Kro$oft) CRM…) – Réalisation d’une application dédiée au call- center – Diffusion : 50 utilisateurs authentifiés Difficulté : ★
  • 29. Cas d’utilisation n°2 • Notre réponse – Adobe Flex – GWT (oui mais non) • Notre argumentation – Pour les deux réponses : – Interaction Java avancée – Culture des développeurs – En faveur de Flex : – Du mouf-mouf pour pas cher – Meilleure productivité des développements / maintenance facilitée Ca ne vous rappelle rien ?
  • 30. Cas d’utilisation n°3 • Enjeux • Eddy Teurdetexte – Connectivité avec les • Chef de projet services du Back Office • Clémentine (Télécom) – Ergonomie – Temps de réponse courts • Contexte et objectifs – Back Office 100% PHP – Refonte de l’application vieillissante de gestion des abonnements – Diffusion : 50 utilisateurs authentifiés Difficulté : ★★
  • 31. Cas d’utilisation n°3 • Notre réponse – Adobe Flex – Microsoft Silverlight • Notre argumentation – Pour les deux réponses : – Connectivité immédiate aux services du Back Office – Performances et ergonomie équivalentes – Coût d’entrée sur la technologie – (Peut-être) en faveur de Flex : – Ouverture de l’application sur Internet : accessibilité à Mme Michu – (Peut-être) en faveur de Silverlight : – Disponibilité des compétences liées à la proximité technologie Microsoft
  • 32. Cas d’utilisation n°4 • Enjeux • Jean Tourloupe – Haute performance • Architecte – Compatibilité avec 100% • Ministère des finances des internautes français – Bling-bling pour l’application de gestion de • Contexte et objectifs budget – Etendre la déclaration des – Navigation assistée impôts à la gestion de budget en ligne – Diffusion sur le web – Pics d’utilisation pendant deux mois Difficulté : ★★★
  • 33. Cas d’utilisation n°4 • Notre réponse – Adobe Flex • Notre argumentation – Performances – Protocole de transfert Flex : format AMF natif – Back Office : on n’imagine pas une plateforme sous x86/Windows – Diffusion multi-plateformes : maturité des plugins navigateur – Intégration avec des applications Back Office hétérogènes
  • 34. Cas d’utilisation n°5 • Enjeux • Marc Héting – Mode 100% ASP • Directeur – Temps de réponse faibles • Editeur Dentaface – Ergonomie proche du client lourd • Contexte et objectifs – Réalisation « from scratch » d’une application intégrée de gestion de clients pour dentistes – Diffusion sur le web Difficulté : ★★
  • 35. Cas d’utilisation n°5 • Notre réponse – Microsoft Silverlight • Notre argumentation – Productivité des développements et maintenance facilitée – Courbe d’apprentissage faible – Disponibilité des compétences – Simplicité de l’infrastructure nécessaire – Environnements client maîtrisés
  • 37. Ce qu’il faut retenir • La RIA se dote de nouveaux paradigmes – Dépassez la phase transitoire actuelle • Basculez ! – La RIA, c’est une meilleure expérience utilisateur – La RIA, c’est une meilleure expérience développeur • Silverlight et Flex sont matures – Cherchez votre cas d’utilisation plutôt qu’une comparaison grille ou passionnelle – Et industrialisez, les outils le permettent ! • Et ensuite… la mobilité ? Crédits photo : http://gombinoscope.free.fr/

Notes de l'éditeur

  1. Rappel des durées : 8-5-12-15 min