Développer des applications iOS et Android avec C# grâce à Xamarin par Cyril Cathala
A l’ère des smartphones et tablettes, le développement multiplateforme se révèle être un challenge : quelle solution choisir et comment minimiser les coûts, tout en optimisant l’expérience utilisateur ?
Parmi les solutions disponibles sur le marché, Xamarin s’adresse aux développeurs C# pour la création d’applications compatibles avec Windows 8, iOS et Android. Son approche multiplateforme permet de développer des applications natives de qualité en mutualisant jusqu’à 75% de code entre les différents OS.
Ce petit déjeuner sera l’occasion de faire un tour d’horizon des outils du marché, d’apprécier toutes les possibilités offertes par Xamarin et d’en explorer les pistes pour aller plus loin.
Professionnel informatisé orienté vers le détail avec quatre ans d'expérience en tant que spécialiste du support logiciel et système information et industrielle.
Compétence à fonctionner dans une large gamme de plates-formes. Excellentes compétences technique et en communication écrite et orale; Capable d'expliquer des problèmes logiciels complexes dans des termes faciles à comprendre
Cette présentation a été créée dans le cadre de l'enseignement du module "Framework Web côté serveur" au sein du département TI de l'ISET de Bizerte en Tunisie
Professionnel informatisé orienté vers le détail avec quatre ans d'expérience en tant que spécialiste du support logiciel et système information et industrielle.
Compétence à fonctionner dans une large gamme de plates-formes. Excellentes compétences technique et en communication écrite et orale; Capable d'expliquer des problèmes logiciels complexes dans des termes faciles à comprendre
Cette présentation a été créée dans le cadre de l'enseignement du module "Framework Web côté serveur" au sein du département TI de l'ISET de Bizerte en Tunisie
Coaching cv : écrire un cv gagnant, conseils et exemples d'un coach CV Yves GAUTIER
Conseils de rédaction pour un CV gagnant. Les erreurs à éviter pour écrire un CV. La forme du CV à privilégier.
Conseils CV pour débutant : l'erreur de base à éviter. Conseil CV pour expérimenté : comment ne pas se disqualifier.
La forme du CV. Le titre du CV et les sous-titres. Faut-il parler de ses qualités personnelles dans un CV ? Faut-il utiliser une case "compétences" dans un CV ? Que penser des CV par compétences ?
Le danger du CV "Fiche de poste" les attentes du recruteur et comment faire la différence dans la rédaction de votre curriculum vitae.
Yves GAUTIER est coach emploi et coach CV, spécialiste du CV et de la lettre de motivation. Il propose du coaching CV, ainsi que des Kits " CV + Lettre de motivation + Profil Linkedin"
COACHING CV :
https://www.entretienembauche.tv/coaching-cv-lettre-de-motivation/
KIT CV + Lettre + Linkedin
https://www.entretienembauche.tv/modele-cv-lettre-de-motivation/
CONTENUS SPECIFIQUES :
https://www.entretienembauche.tv/yves-gautier-pdf-coach-cv-emploi/
Objectif général : Prendre en main l’un des frameworks PHP les plus utilisés
Objectifs spécifiques
Faire correspondre une URL donnée à un traitement précis grâce au routage
Regrouper des traitements connexes grâce aux contrôleurs
Récupérer les données d’une requête http grâce à Request
Retourner des contenus aux formats texte, HTML, JSON, etc. grâce à Response
Intégrer des données dans des templates grâce à Blade
Interagir avec l’utilisateur grâce aux formulaires
Créer, mettre à jour et suivre les évolutions d’un schéma de base de données grâce aux migrations
Faciliter la communication avec une base de données grâce à Eloquent
Objectif général :
Prendre en main l’une des bibliothèques JavaScript les plus utilisés pour créer des interfaces utilisateurs
Objectifs spécifiques :
Découper l’interface utilisateur avec les composants
Passer des informations (données ou instructions) d’un composant à son composant fils avec « props »
Gérer l’état local d’un composant avec « state »
Afficher une listes de composants avec map()
Afficher un composant en fonction de l’état de l’application
Interagir avec un utilisateur grâce à la gestion des événements
Interagir avec un utilisateur par le biais des formulaires
Communiquer avec un serveur HTTP avec AJAX
Afficher des vues en fonction de l’URL avec le routage
Mettre en forme un composant
Ce cours introduit aux trois langages de programmation du Web que sont l'HTML, le CSS et le Javascript. L'HTML est un langage de balisage qui permet de décrire un document et sa structure. Le CSS est un langage qui permet de définir des règles de style à appliquer à un document. Enfin, Javascript est un langage permettant d'ajouter un aspect dynamique à une page web.
Connaitre les techniques de la gestion d'un projet. Les notions nécessaires pour structurer, gérer et conduire d'un projet quelconque. On met toutes les ingrédients néccéssaires liés à la démarche d'un projet. On définit les risques, la planification, etc.
Xamarin : DevOps Cloud, Re-Build et retour d'expérienceEdwige Seminara
Présentation du 3ème meetup du Xamarin User Group Lyon. Rappels sur les fondamentaux du développement natif et de Xamarin native vs Xamarin Forms.
Rappels sur les fondamentaux de DevOps et les outils Cloud à mettre en oeuvre pour le développement Xamarin.
Retour sur la build 2017 et sur les nouveautés annoncées pour Xamarin.
Conférence sur le développement d'applications mobiles natives sur plateformes mobiles iOS et Android.
En collaboration avec Nicolas GOUTALAND de TeachOnMars pour la partie iOS.
Tech Conf n°1 organisée par la Telecom Valley, 4 juin 2014 au Campus SophiaTech
Coaching cv : écrire un cv gagnant, conseils et exemples d'un coach CV Yves GAUTIER
Conseils de rédaction pour un CV gagnant. Les erreurs à éviter pour écrire un CV. La forme du CV à privilégier.
Conseils CV pour débutant : l'erreur de base à éviter. Conseil CV pour expérimenté : comment ne pas se disqualifier.
La forme du CV. Le titre du CV et les sous-titres. Faut-il parler de ses qualités personnelles dans un CV ? Faut-il utiliser une case "compétences" dans un CV ? Que penser des CV par compétences ?
Le danger du CV "Fiche de poste" les attentes du recruteur et comment faire la différence dans la rédaction de votre curriculum vitae.
Yves GAUTIER est coach emploi et coach CV, spécialiste du CV et de la lettre de motivation. Il propose du coaching CV, ainsi que des Kits " CV + Lettre de motivation + Profil Linkedin"
COACHING CV :
https://www.entretienembauche.tv/coaching-cv-lettre-de-motivation/
KIT CV + Lettre + Linkedin
https://www.entretienembauche.tv/modele-cv-lettre-de-motivation/
CONTENUS SPECIFIQUES :
https://www.entretienembauche.tv/yves-gautier-pdf-coach-cv-emploi/
Objectif général : Prendre en main l’un des frameworks PHP les plus utilisés
Objectifs spécifiques
Faire correspondre une URL donnée à un traitement précis grâce au routage
Regrouper des traitements connexes grâce aux contrôleurs
Récupérer les données d’une requête http grâce à Request
Retourner des contenus aux formats texte, HTML, JSON, etc. grâce à Response
Intégrer des données dans des templates grâce à Blade
Interagir avec l’utilisateur grâce aux formulaires
Créer, mettre à jour et suivre les évolutions d’un schéma de base de données grâce aux migrations
Faciliter la communication avec une base de données grâce à Eloquent
Objectif général :
Prendre en main l’une des bibliothèques JavaScript les plus utilisés pour créer des interfaces utilisateurs
Objectifs spécifiques :
Découper l’interface utilisateur avec les composants
Passer des informations (données ou instructions) d’un composant à son composant fils avec « props »
Gérer l’état local d’un composant avec « state »
Afficher une listes de composants avec map()
Afficher un composant en fonction de l’état de l’application
Interagir avec un utilisateur grâce à la gestion des événements
Interagir avec un utilisateur par le biais des formulaires
Communiquer avec un serveur HTTP avec AJAX
Afficher des vues en fonction de l’URL avec le routage
Mettre en forme un composant
Ce cours introduit aux trois langages de programmation du Web que sont l'HTML, le CSS et le Javascript. L'HTML est un langage de balisage qui permet de décrire un document et sa structure. Le CSS est un langage qui permet de définir des règles de style à appliquer à un document. Enfin, Javascript est un langage permettant d'ajouter un aspect dynamique à une page web.
Connaitre les techniques de la gestion d'un projet. Les notions nécessaires pour structurer, gérer et conduire d'un projet quelconque. On met toutes les ingrédients néccéssaires liés à la démarche d'un projet. On définit les risques, la planification, etc.
Xamarin : DevOps Cloud, Re-Build et retour d'expérienceEdwige Seminara
Présentation du 3ème meetup du Xamarin User Group Lyon. Rappels sur les fondamentaux du développement natif et de Xamarin native vs Xamarin Forms.
Rappels sur les fondamentaux de DevOps et les outils Cloud à mettre en oeuvre pour le développement Xamarin.
Retour sur la build 2017 et sur les nouveautés annoncées pour Xamarin.
Conférence sur le développement d'applications mobiles natives sur plateformes mobiles iOS et Android.
En collaboration avec Nicolas GOUTALAND de TeachOnMars pour la partie iOS.
Tech Conf n°1 organisée par la Telecom Valley, 4 juin 2014 au Campus SophiaTech
Xamarin et le développement natif d’applications Android, iOS et Windows en C#SOAT
Une mise à jour de cette présentation est disponible ici : http://fr.slideshare.net/soatexpert/dvelopper-des-applications-i-os-et-android-avec-c-grce-xamarin
*********************
Les slides de la conférence présentée par Cyril Cathala chez Soat le 04/03/2014 sur le thème : Xamarin et le développement natif d’applications Android, iOS et Windows en C#
La vidéo de la présentation est visible ici : http://youtu.be/0BF9NqLYNvQ
L'histoire d'HTML5 pour les développeurs Windows Phone 8Microsoft
Dans cette session, nous parcourons ensemble l’histoire HTML5 pour les développeurs Windows Phone 8. Nous verrons d’abord comment utiliser des morceaux d’HTML5 dans certaines applications natives, ce qui peut s’avérer dans certains cas exceptionnels être assez pratique. Ensuite, grâce aux possibilités d’IE10, nous verrons qu’il est également possible de créer de vraies applications vivant uniquement dans le navigateur. Pour finir, nous jetterons un œil aux possibilités d’intégration dans l’OS grâce au template de projet HTML5 de Visual Studio 2012 ou grâce à des frameworks comme PhoneGap ou Sencha Touch 2.
Let's Go dans l'univers mobile multiplateforme avec Xamarin Christian Hissibini
Cette session a été présentée à Polytechnique de Montréal (04/14/2016).
Il s'agissait de d'explorer la plateforme Xamarin, qui permet de créer des applications mobiles destinées pour les plateformes iOS, Android et Windows à l'aide d'une seule base de code C# partagé, tout en offrant toute une palette d'outils et de services rendant trivial des opérations tels que l'inspection du code en live, des tests d'UI automatisés et du monitoring détaillé.
L'histoire d'html5 pour les développeurs windows phone 8davrous
Dans cette session, nous parcourons ensemble l'histoire HTML5 pour les développeurs Windows Phone 8. Nous verrons d'abord comment utiliser des morceaux d'HTML5 dans certaines applications natives, ce qui peut s'avérer dans certains cas exceptionnels être assez pratique. Ensuite, grâce aux possibilités d'IE10, nous verrons qu'il est également possible de créer de vraies applications vivant uniquement dans le navigateur. Pour finir, nous jetterons un oeil aux possibilités d'intégration dans l'OS grâce au template de projet HTML5 de Visual Studio 2012 ou grâce à des frameworks comme PhoneGap ou Sencha Touch 2.
Jouée pendant les MS Techdays 2013: http://www.microsoft.com/france/mstechdays/programmes/2013/fiche-session.aspx?ID=2d81322e-6ab2-4840-a4b1-568f1bd370f4
Uwp + Xamarin : Du nouveau en terre du milieuMicrosoft
"Après une période de calme relatif, la Terre du Milieu est à nouveau en proie à l’émoi : Un seul code pour les gouverner tous, tel semble être le nouveau crédo des bâtisseurs des contrées d’UWP, depuis que le peuple Xamarin a créé de nouveaux passages vers les terres d’Android et d’iOS.
Avec de nouvelles forges et de nouvelles armes permettant aux guerriers de s’aventurer sur tablette, PC et même en Holographie, le régent Windows 10 est devenu le symbole de l’universalité du royaume.
Il est donc temps de passer en revue vos troupes ! Armez C#, Windows Inking, Microsoft Composition, Centenial !
Découvrez comment Xamarin, grande cité récemment conquise, propose d’intégrer de nouvelles techniques de combat pour faire du language .Net le verbiage parfait des mondes mobiles, quelle que soit votre contrée d’origine (Android, IOS, ou Windows)"
Du 7 au 9 mai aura lieu la conférence Microsoft //Build, LA conférence des développeurs Microsoft.
A peine le temps de digérer les nombreuses sessions proposées par Microsoft que nos MVP vous présentent une synthèse des principales annonces.
L’« entreprise libérée », buzzword du moment, fait couler beaucoup d’encre ces dernières années. Libérée ? De qui, de quoi ? Mais que cache cette expression ?
Nous retracerons l’évolution de l’organisation des hommes et du management, pour s’intéresser à cette nouvelle forme d’organisation qui remet l’humain au centre de l’entreprise.
Quelles sont les caractéristiques de celle-ci ? Quelles pratiques diffèrent des entreprises classiques ? Et surtout comment faire pour devenir une entreprise libérée et pour quels bénéfices ?
Que vous soyez développeurs, managers, chefs de projet, Scrum Master, RH, commerciaux ou dirigeants, je vous invite à découvrir ce nouveau paradigme d’organisation et de management, qui veut réconcilier deux concepts a priori incompatibles : Bonheur et Travail. Alors, info ou intox ?
Amélioration continue, c'est l'affaire de tous !SOAT
Popularisée par Toyota dans les années 50, est au cœur du processus Agile. L’idée majeure est de se dire qu’il y a toujours moyen, quel que soit le processus utilisé, de le rendre plus performant. Tout processus, aussi optimal soit-il, s’inscrit dans un contexte évolutif et perd donc de son efficacité avec le temps s’il n’est pas continuellement revu ou amélioré.
Reste que dans l’univers informatique, on a trop souvent tendance à cantonner cette démarche aux seules équipes de développement alors qu’elle peut être élargie à toutes les fonctions stratégiques d’une organisation. Nous allons voir lors de cette conférence, comment élargir cette approche en y impliquant toutes les étapes d’un projet et en travaillant sur les interactions entre ses différents acteurs.
L’amélioration continue ne pouvant se réduire à une maîtrise optimisée des processus, nous verrons dans quelle mesure elle induit également une nouvelle politique de partage des connaissances pour faire émerger une véritable « intelligence collective ».
JAVA 8 : Migration et enjeux stratégiques en entrepriseSOAT
La sortie de Java 8 est une véritable révolution dont l’enjeu dépasse de loin la simple évolution d’un langage et de ses APIs. Rdv sur notre chaîne Youtube pour revoir la conférence :
Après une version 7 peu convaincante, la version 8 replace Java au premier rang des langages objets actuels.
En parfaite adéquation avec les besoins des projets et les possibilités offertes par les environnements matériels actuels, cette nouvelle version apporte une modernisation du langage et de ses API, un suivi des performances des processeurs et des améliorations de la JVM.
Quels sont les nouveaux concepts introduits par Java 8 ? En quoi les expressions lambdas et l’API Stream représentent une avancée majeure de la plateforme ? Quelle stratégie adopter pour migrer vers Java 8 en toute sécurité et en diminuant au maximum sa dette technique ?
ARCHITECTURE MICROSERVICE : TOUR D’HORIZON DU CONCEPT ET BONNES PRATIQUESSOAT
Les systèmes distribués ont largement évolués ces 10 dernières années, passant d’énormes applications monolithiques à de petits containers de services, apportant plus de souplesse et d’agilité au sein des systèmes d’information.
Le terme « Architecture microservice » a vu le jour pour décrire cette manière particulière de concevoir des applications logicielles.
Bien qu’il n’y ait pas de définition précise de ce style d’architecture, elles ont un certain nombre de caractéristiques communes basées autour de l’organisation de l’entreprise, du déploiement automatisé et de la décentralisation du contrôle du langage et des données.
Seulement, développer ces systèmes peut tourner au véritable casse-tête. Je vous propose donc un tour des concepts et différentes caractéristiques de ce type d’architecture, des bonnes et mauvaises pratiques, de la création jusqu’au déploiement des applications.
3/3 : The path to CDI 2.0 - Antoine Sabot-DurandSOAT
Allez plus Loin avec CDI
En moins de 5 ans d’existence, Contexts and Dependency Injection (CDI) est devenue l’une des principale spécification de Java EE. Néanmoins, CDI est bien souvent perçu comme une simple solution d’injection de dépendance enrichie alors que cette spécification est bien plus riche que ça. Lors de cette présentation, après un rapide rappel des fonctionnalités de base de CDI, nous montrerons comment son utilisation avancée permet Java EE en intégrant des technologies legacy ou plus récent de manière naturelle. Nous finirons avec le travail en cours sur CDI 2.0 qui a commencé début septembre.
1/3 : introduction to CDI - Antoine Sabot-DurandSOAT
Allez plus Loin avec CDI
En moins de 5 ans d’existence, Contexts and Dependency Injection (CDI) est devenue l’une des principale spécification de Java EE. Néanmoins, CDI est bien souvent perçu comme une simple solution d’injection de dépendance enrichie alors que cette spécification est bien plus riche que ça. Lors de cette présentation, après un rapide rappel des fonctionnalités de base de CDI, nous montrerons comment son utilisation avancée permet Java EE en intégrant des technologies legacy ou plus récent de manière naturelle. Nous finirons avec le travail en cours sur CDI 2.0 qui a commencé début septembre.
Allez plus Loin avec CDI
En moins de 5 ans d’existence, Contexts and Dependency Injection (CDI) est devenue l’une des principale spécification de Java EE. Néanmoins, CDI est bien souvent perçu comme une simple solution d’injection de dépendance enrichie alors que cette spécification est bien plus riche que ça. Lors de cette présentation, après un rapide rappel des fonctionnalités de base de CDI, nous montrerons comment son utilisation avancée permet Java EE en intégrant des technologies legacy ou plus récent de manière naturelle. Nous finirons avec le travail en cours sur CDI 2.0 qui a commencé début septembre.
Javascript s’est depuis longtemps imposé comme le principal langage pour développer des écrans web dynamiques. L'émergence des SPA (Single Page Application) est en fait l'aboutissement logique du succès de ces outils au premier rang desquels on compte jQuery et AJAX.
AngularJS fait partie d’une nouvelle génération de frameworks qui propose d’aller plus loin afin d’avoir non seulement des SPA améliorant l’expérience utilisateur mais aussi un code mieux organisé, plus modulaire et donc facilement testable.
Au cours de cette soirée, vous verrez d’abord la manière dont AngularJS étend le HTML à travers les directives puis le binding bidirectionnel, ensuite, la programmation asynchrone avec AngularJS. Enfin pour finir, nous allons voir ces petits plus qui expliquent la popularité du framework : les filtres, l’injection de dépendance et les tests.
RxJava, Getting Started - David Wursteisen - 16 Octobre 2014SOAT
Les applications sont de plus en plus interconnectées. Une architecture type WOA (Web Oriented Archiecture) et l’utilisation des micros-services nécessitent de faire de plus en plus appel à différents services web.
Comment composer un résultat à partir de ces différents services, sans avoir à ce soucier de l’ordre dans lequel les serveurs vont répondre ?
RxJava offre une manière élégante de faire de l’asynchrone et de la composition au sein de son application. David vous exposera les concepts de Rx (Reactive eXtension) avant de vous montrer une mise en application avec des exemples de code venant d’une application Android.
L'impact du Responsive Web Design sur vos équipes projet - Mathieu Parisot - ...SOAT
Plus de 50% des internautes français utilisent un support mobile pour naviguer sur le web. Il est donc temps de repenser votre stratégie mobile et le Responsive Web Design, consistant à ne faire qu’un seul site adapté au périphérique qui l’affiche, constitue une approche possible.
Après une introduction à ses principes, nous verrons qu’au-delà des défis techniques, le RWD suppose de revoir entièrement le processus de développement d’un site web et les méthodes de travail des équipes, que ce soit en phase de conception ou lors des tests.
Cette conférence sera l’occasion de découvrir les nouveaux challenges à relever par vos équipes lors de la conception de vos prochains sites internet.
Nio sur Netty par Mouhcine Moulou - 3 avril 2014SOAT
La vidéo de cette conférence est visible ici : http://youtu.be/T7r7UlSoe7k
La croissance continue du Web a accru la nécessité pour les applications Client/serveur de gérer la monté en charge et la performance. Heureusement, Java est livré avec les outils nécessaires pour créer des applications performantes, et scalables ! Les premières versions de Java incluent le support des communications réseau avec la jdk 1.4 qui a introduit l'API NIO. La nouvelle version, NIO 2, introduite dans Java 7, a été conçue pour permettre l'écriture asynchrone en réseau, Aujourd'hui, encore peu de gens s'intéressent au développement d'applications réseaux, car l'API Jdk reste complexe.
Netty est une bibliothèque Java pour l'écriture d'applications et de services réseau hautement concurrent et scalable. Netty est une API complétement asynchrone : l'Api vous propose une nouvelle façon de développer vos applications réseau en assurant un découplage entre votre logique métier et les traitements réseau grâce à son modèle basé sur une architecture "event-driven".
Dans cette conférence, vous comprendrez l'architecture de Netty, et comment des entreprises comme Twitter, Facebook, RedHat et autres l'utilisent pour répondre à leurs problématiques de communication réseau.
- le niveau : développeurs Java débutants et expérimentés
- la durée : 2h
Amazon Web Service par Bertrand Lehurt - 11 mars 2014SOAT
Attention, soirée spécial cloud computing!
IAAS, PASS, SAAS... Perdu avec autant d'acronyme qui représente des types de cloud computing?
Ça tombe bien, Bertrand Lehurt vous propose une soirée d'introduction à l'IAAS (Infrastructure As A Service) avec Amazon Web Services, suivi d'une séance les mains dans le cambouis.
Vous allez apprendre à déployer une petite application en utilisant les services nécessaires dans la jungle de ceux proposés (plus de 37). Au cours de la soirée, nous aborderons donc l'utilisation d'EC2, S3, ELB, EBS, Cloudfront et Auto scaling et les architectures types qui sont utilisées dans le cloud computing.
La vidéo de la présentation est visible ici : http://youtu.be/0AUJ_hcMNhQ
ASP.Net Web API - Léonard Labat (18 février 2014)SOAT
HTTP est un protocole simple à comprendre, simple à utiliser et c’est cette simplicité qui le rend disponible sur un grand nombre de plate-forme. REST, de son côté, est un style d’architecture qui permet d’exposer facilement une API en utilisant HTTP et différents types de représentations de données tels que JSON ou XML.
ASP.NET Web API est une évolution de WCF pour écrire une couche d’API REST, en utilisant un modèle de programmation proche d’ASP.NET MVC. Cette soirée 3T sera l’occasion pour vous de découvrir les fonctionnalités offertes par ASP.NET Web API qui font que c’est une technologie qu’il faut envisager d’utiliser lorsque vous devez créer une API REST.
12. • Support multiplateforme (BYOD)
• Expérience riche et native
• Bonnes performances
• Time-to-market rapide
• Code facilement maintenable
• Flexible aux évolutions
• Coût raisonnable
A la recherche du bonheur
14. Applications mobiles
Android iOS Windows
5 versions d’OS
x 8 Fabricants
x 20 Langues
x 27 Tailles d’écran
3 versions d’OS
x 8 Devices
x 20 Langues
2 versions d’OS
x 17 Devices
x 20 Langues
15. Outils multiplateformes
Technologies Distribution Package Acteurs connus
Mobile Browser
HTML, CSS,
JavaScript
www Pages Web Safari – Chrome – IE
Web Wrapper
HTML, CSS,
JavaScript
App Store Package hybride PhoneGap
Web-to-native Javascript App Store Package natif Titanium
API JavaScript
Native
HTML, CSS,
JavaScript
App Store Package natif BlackBerry, Windows
Cross compilation C# App Store Package natif Xamarin
35. iOS Designer
• Beta
• Xamarin Studio
• Mac uniquement
• UI Native
• Gestion des
storyboards
36. Environnement de dév
OS Mac OS X Windows
IDE
Xamarin
Studio
Xamarin
Studio
Visual Studio
iOS ✓ - ✓(1)(2)
Android ✓ ✓ ✓(1)
Windows
Phone
- - ✓(1)
(1) License business minimum
(2) Mac requis
37. Pourquoi utiliser Xamarin ?
- Développer en C# pour tous les OS
- Performances optimales
- API native
- Réutilisation de code
- Respect de l’expérience utilisateur
38. Prix
Licences par développeur, par plateforme, par an
• Starter – Gratuit, package limité
• Indie - $299, Xamarin Studio Uniquement
• Business - $999, Visual Studio, Support Mail
• Enterprise - $1899, 1 jour SLA
39. Version d’essai
• 30 jours version d’essai
• MSDN
• 90 jours avec un abonnement MSDN
• 1 Licence Business pour iOS + Android : $1399 ($1998)
• 5 Licences Enterprise pour iOS + Android : $9900 ($18900)
42. • Implémentation open source du framework .NET
• Compatible avec Linux & Mac
• Projet démarré en 2001 par Miguel de Icasa
• Version 3.0
• Support de C# 5.0
• Fondation de Xamarin
Mono
43. • Manifest de configuration
• Compilation
• ARM / IL
• Mono runtime
• Linked assemblies
• Signature (device / store)
Packaging
44. • Machines virtuelles
• Mono + Dalvik
• S’exécutent côte à côte
• VM Mono plus rapide que Dalvik
• Pont à 2 niveaux
• Android Callable Wrapper
• Managed Callable Wrapper
Runtime Android
60. File Linking
• Symboles prédéfinis
#if __MOBILE__
#if __ANDROID__
#if __IOS__
#if WINDOWS_PHONE
#if SILVERLIGHT
• Pour en avoir plus : Build Settings
61. Portable Class Libraries
• 1 assembly
• Plusieurs plateformes
• Xamarin.Android, Xamarin.iOS
• Centralise le code partagé
• Pas de symboles conditionnels
62. Shared Projects
• Introduit avec les Universal Apps
• Entre PCL et File Linking
• Copie les fichiers à la compilation
• Compatible avec les symboles conditionnels
73. Implémentation multiplateforme du pattern MVVM
• Support du Data Binding
• ValueConverter
• ViewModels
• Navigation
• Cycle de vie
• Inversion de contrôle
• Simplification de l’UI
MvvmCross en résumé
78. Ressources
• http://xamarin.com/getting-started
• Guide pour développer une app en 10mn
• http://docs.xamarin.com
• Documentation, Recettes
• http://github.xamarin.com
• Exemples de code
• http://mvvmcross.blogspot.fr
• Documentation MvvmCross
79. Conclusion
• Partenariat Microsoft
• Intégration Visual Studio
• Prix pour les abonnés MSDN
• Accélérer les développements
• Microsoft Build 2014
• Keynote + session
With Xamarin, developers combine all of the
productivity benefits of C#, Visual Studio 2013 and
Windows Azure with the flexibility to quickly build
for multiple device targets.”
S. Somasegar, Corporate Vice President, Microsoft
80. Conclusion
• Applications natives
• Look & feel
• Performances
• Le choix des armes
• Visual Studio
• Xamarin Studio
• Partage de code
• Communauté grandissante
• 600 000+ développeurs
81. Conclusion
• Oui mais …
• Bonnes connaissances en architecture d’application
• Paradigmes de chaque plateforme à apprendre
• Besoin d’un Mac pour iOS
• Packages plus lourds
• Coût de la licence
• Effet boîte noire
82. DES QUESTIONS ?
DES RÉPONSES !
Cyril CATHALA
@CyrilCathala
http://cyril.cathala.org