La technologie Adobe Flex est aujourd'hui reconnue comme une des solutions les plus productives pour développer rapidement des applications de type RIA (Rich Internet Applications). Le succès de cette technologie repose sur deux notions fondamentales : la portabilité et l’interopérabilité. Cela fait deux ans que nous utilisons la technologie Flex. Je viens partager avec vous mes retours d'expériences concernant le développement des applications RIA basées sur Adobe Flex.
Ahmed El Houari
Exemple d'application qui montre comment utiliser les bonnes pratiques de JEE pour développer un site web de commerce électronique en utilisant les outils :
- Eclipse comme environnement de développement
- Maven comme outil d’intégration
- JUnit comme Framework des tsts unitaire
- Spring IOC pour l'inversion de contrôle
- Spring MVC pour la couche web
- Spring Security pour la sécurité
- JPA, Hibernate
- Web Service SOAP
- Web Service REST
- Service RMI
Exemple d'application qui montre comment utiliser les bonnes pratiques de JEE pour développer un site web de commerce électronique en utilisant les outils :
- Eclipse comme environnement de développement
- Maven comme outil d’intégration
- JUnit comme Framework des tsts unitaire
- Spring IOC pour l'inversion de contrôle
- Spring MVC pour la couche web
- Spring Security pour la sécurité
- JPA, Hibernate
- Web Service SOAP
- Web Service REST
- Service RMI
Introduction aux Technologies Web élaborée par Marouan OMEZZINEMarouan OMEZZINE
Une introduction / ébauche aux technologies Web (Web, évolution, web 2.0, php, ajax...) faite dans le cadre des formations inter-membres du club Junior ENSI (http://www.junior-ensi.org/) de l'école nationale des sciences de l'informatique (http://www.ensi.rnu.tn/).
Présentation sur Ajax en Java dans le cadre du cours combiné GTI780 / MTI780, Sujets spéciaux en TI, donné par Claude Coulombe, à l'École de technologie supérieure, Montréal, Automne 2009
Cette présentation donne une idée bien détaillée sur les web services. Elle présente aussi les types de web services(SOAP, REST), et enfin comment les développer dans le langage de programmation java.
Mes diapositives sur REST. Il s'agit de mon interprétation de ce que REST est devenu avec les années. J'essaie de faire le lien avec SOAP, lorsque possible (mais le thème principal n'est pas SOAP vs RESTful HTTP).
Cloud Computing et changement de modèle de développement sur le web, deux sujets distincts pour certains mais qui vont se confondre et interagir ensemble et ce, dès maintenant. Quels sont les mutations de développement des applications Web ? Comment comprendre et appréhender le Cloud Computing ? 2 enjeux que le développeur doit connaître et maîtriser.
François Tonic (Programmez!, Cloud Magazine)
Introduction aux Technologies Web élaborée par Marouan OMEZZINEMarouan OMEZZINE
Une introduction / ébauche aux technologies Web (Web, évolution, web 2.0, php, ajax...) faite dans le cadre des formations inter-membres du club Junior ENSI (http://www.junior-ensi.org/) de l'école nationale des sciences de l'informatique (http://www.ensi.rnu.tn/).
Présentation sur Ajax en Java dans le cadre du cours combiné GTI780 / MTI780, Sujets spéciaux en TI, donné par Claude Coulombe, à l'École de technologie supérieure, Montréal, Automne 2009
Cette présentation donne une idée bien détaillée sur les web services. Elle présente aussi les types de web services(SOAP, REST), et enfin comment les développer dans le langage de programmation java.
Mes diapositives sur REST. Il s'agit de mon interprétation de ce que REST est devenu avec les années. J'essaie de faire le lien avec SOAP, lorsque possible (mais le thème principal n'est pas SOAP vs RESTful HTTP).
Cloud Computing et changement de modèle de développement sur le web, deux sujets distincts pour certains mais qui vont se confondre et interagir ensemble et ce, dès maintenant. Quels sont les mutations de développement des applications Web ? Comment comprendre et appréhender le Cloud Computing ? 2 enjeux que le développeur doit connaître et maîtriser.
François Tonic (Programmez!, Cloud Magazine)
20091006 Dev Forum Fr 001Introduction à GWT en utilisant AppCase SDKGreenIvory
Nous parlerons dans un premier temps de GWT et GXT qui permettent de créer des interfaces web riches à partir de code Java, puis nous nous intéresserons plus précisément à un produit réalisé à partir de ces deux technologies : le portail AppCase de Greenivory et son SDK.
Jean-Marc Prevost (GreenIvory)
DevCloud - Setup and Demo on Apache CloudStack buildacloud
Hands-on Hacking Session by Amogh Vasekar
1. Demo of CloudStack using DevCloud
2. How we got there -
A) Building CloudStack from scratch
B) Deploying databases
C) Configuring your own DevCloud using Marvin
Le futur du desktop à l'heure des applications web
Le thème de cet évènement indique à quel point le web est devenu important dans notre utilisation de l'informatique. Les applications web remplacent nos applications lourdes, si bien que pour beaucoup le navigateur est la seule à subsister. Nous débatterons de l'avenir des applications desktop et de leur intégration avec le web.
Alexandre Franke
Initiation à la Dégustation des Vins par Jacques Froissant (Altaide) 0214ALTAIDE
Initiation à la Dégustation des Vins par Jacques Froissant (Altaide) :
Bases de la dégustation.
La couleur du vin.
Les aromes.
Les sensations gustatives.
This document discusses DevCloud, a virtual appliance that provides a working CloudStack environment for development and testing purposes. It can be used to try CloudStack in an isolated sandbox, develop CloudStack locally and deploy new versions to DevCloud, or develop and run CloudStack locally using DevCloud as Xen hosts. The steps to install and configure DevCloud in VirtualBox are provided, which include downloading the DevCloud virtual appliance, importing it into VirtualBox, starting the VM, and checking out and deploying the latest CloudStack code. Ways to contribute to the CloudStack community are also listed, such as participating in discussions, reporting bugs, reviewing code, helping with documentation, and contributing code fixes and features.
Les méthodes agiles sont essentiellement basées sur la communication et la proximité entre les personnes. Mais aujourd'hui le télé-travail se répand de plus en plus dans les entreprises. La problématique abordée lors de cette session est donc la suivant : comment être agile tout en faisant du télé-travail.
Valérie Taesch (GreenIvory), Yann Klis (Novelys)
20091008 Tests Interaces Web Riches SeleniumGreenIvory
Cette session présente une solution pour tester de manière efficace et automatisée une interface web riche créée avec GWT / GXT à l'aide de l'outil Selenium.
CloudStack, the world's leading open-source cloud infrastructure platform, was recently donated to the Apache Foundation, and is now an incubated Apache project. Ewan Mellor, Director of Engineering in the Citrix Cloud Platforms Group will describe the CloudStack project and explain why Xen is the pre-eminent hypervisor in public clouds today. He will describe the changes coming in CloudStack in the next 12 months, and how they are going to change the way that Xen is consumed in public and private clouds next year.
Altaide : Les clés de l'ereputation de l'enfance à la vie professionnelleALTAIDE
Conférence "Les clés de l'ereputation de l'enfance à la vie professionnelle" :
L’e-réputation :
Sa définition,
Ses mythes et réalités,
Les différentes utilisations du web et des réseaux sociaux des enfants au cours de leur évolution,
Que faire lorsque l’on commence à rechercher des stages ou un emploi pour soigner et maitriser son e-réputation ?
28 services e-recrutement innovants !
Quelles solutions sont les vraies innovations de rupture en recrutement ?
Quelles nouvelles fonctionnalités faut-il ajouter aux cahiers des charges ?
Voici une liste de services e-recrutement qui pourraient répondre à vos nouveaux besoins et mêmes à ceux insoupçonnés !
28 applications web sélectionnées selon 6 grands axes d'innovation :
- Candidates Relationship Management (CRM) pour l'intégration et l'automation
- Sourcing et recherche sociale des candidats
- Brandification
- Mobile et Cloud RH
- Évaluation des talents et habiletés (Gamification)
- Données prédictives (Analytics, Smart Data, Big Data ou Data Recrutement, Algorithmic Assessement)
Altaide les métiers du numérique, le grand capharnaüm 0316ALTAIDE
Le digital va vite, des métiers apparaissent, d'autres disparaissent aussi vite qu'ils ont été à la mode... comment s'y retrouver ?
Petit point fait à l'occasion du Frenchweb Day RH.
Altaide : Evolution des métiers du digital en 2015ALTAIDE
Présentation au Social Drink Up d'Adobe : Comment les métiers du Digital ont-ils évolué depuis 2 ans ? Quelles sont les tendances pour 2016 ? Face à la révolution digitale qui s'accélère dans les entreprises, quelque soit leur secteur d'activité, comment anticiper ses recrutements ?
Altaide : Les nouveaux métiers du Big Data et Cloud ComputingALTAIDE
Démêlez le vrai du faux sur les métiers du Big Data et du cloud computing
On parle beaucoup des métiers des Big Data et du Cloud computing : « Data Scientist », « Data Analyst », « Data Planneur », ou « Chief Data Officer »… pour n'en citer que quelques uns. Ce sont en effet de nouveaux métiers, en tout cas dans leurs appellations. Ces métiers sont en outre à la croisée des chemins entre le marketing, l’informatique, et les statistiques.
Quand une mode informatique prend son essor on entend beaucoup d'informations contradictoires : définition des profils changeante, indisponibilité de ces profils, tarifs plus ou moins réalistes et pas toujours vérifiés dans les faits, et enfin nombre de recrutements pas toujours en phase avec la réalité.
Quelle est donc la réalité du recrutement du marché du travail, aussi bien du point de vue de l'offre que de celui de la demande ?
Le recrutement des nouveaux métiers des Big Data et du cloud computing vus par un expert du domaine (Jacques Froissant du cabinet de recrutement Altaïde) :
- les profils qui sont demandés ?
- les attentes des entreprises ?
- où va le marché ?
Les apports d'HTML5 pour l'interopérabilité des applications géospatialesGaëtan LAVENU
Cette présentation (réalisées dans le cadre des Rencontres Decryptagéo 2014) parcours les évolutions proposées par HTML 5 et ce quelles apportent en terme d'interopérabilité pour les applications géospatiales. A travers des illustrations concrètes exploitant notamment les technologies HTML5/JavaScript ArcGIS d'Esri.
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
Présentation de Silverlight 3 Beta par Frédéric Queudret lors des MS Days organisés par l'EPITA les 10 & 11 juin 2009.
La présentation contient l'historique de Silverlight et son architecture ainsi que les nouveautés de Silverlight 3.
flex est un très productif cadre libre et open source pour la construction et la maintenance des applications web d'expression qui se déploient systématiquement sur tout les principaux navigateurs , postes de travail et les systèmes d'exploitation
HTML 5 et CSS3, créez, animez et enrichissez vos sites WebMicrosoft
Nous découvrirons ensemble ce que HTML 5 et CSS3 nous apportent dans la dynamique d’un site Web. Que ce soit via des transitions, des animations ou encore des canvas et du média, la plateforme Web devient dynamique et créative. Nous vous invitons donc dans cette session à faire un tour d’horizon sur les apports de ces nouveautés dans nos sites Web.
Similaire à Flex, une techno RIA incontournable pour les futures app web ? (20)
Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)Laurent Speyser
(Conférence dessinée)
Vous êtes certainement à l’origine, ou impliqué, dans un changement au sein de votre organisation. Et peut être que cela ne se passe pas aussi bien qu’attendu…
Depuis plusieurs années, je fais régulièrement le constat de l’échec de l’adoption de l’Agilité, et plus globalement de grands changements, dans les organisations. Je vais tenter de vous expliquer pourquoi ils suscitent peu d'adhésion, peu d’engagement, et ils ne tiennent pas dans le temps.
Heureusement, il existe un autre chemin. Pour l'emprunter il s'agira de cultiver l'invitation, l'intelligence collective , la mécanique des jeux, les rites de passages, .... afin que l'agilité prenne racine.
Vous repartirez de cette conférence en ayant pris du recul sur le changement tel qu‘il est généralement opéré aujourd’hui, et en ayant découvert (ou redécouvert) le seul guide valable à suivre, à mon sens, pour un changement authentique, durable, et respectueux des individus! Et en bonus, 2 ou 3 trucs pratiques!
Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...OCTO Technology
Par Nicolas Bordier (Consultant numérique responsable @OCTO Technology) et Alaric Rougnon-Glasson (Sustainable Tech Consultant @OCTO Technology)
Sur un exemple très concret d’audit d’éco-conception de l’outil de bilan carbone C’Bilan développé par ICDC (Caisse des dépôts et consignations) nous allons expliquer en quoi l’ACV (analyse de cycle de vie) a été déterminante pour identifier les pistes d’actions pour réduire jusqu'à 82% de l’empreinte environnementale du service.
Vidéo Youtube : https://www.youtube.com/watch?v=7R8oL2P_DkU
Compte-rendu :
OCTO TALKS : 4 Tech Trends du Software Engineering.pdfOCTO Technology
En cette année 2024 qui s’annonce sous le signe de la complexité, avec :
- L’explosion de la Gen AI
-Un contexte socio-économique sous tensions
- De forts enjeux sur le Sustainable et la régulation IT
- Une archipélisation des lieux de travail post-Covid
Découvrez les Tech trends incontournables pour délivrer vos produits stratégiques.
L'IA connaît une croissance rapide et son intégration dans le domaine éducatif soulève de nombreuses questions. Aujourd'hui, nous explorerons comment les étudiants utilisent l'IA, les perceptions des enseignants à ce sujet, et les mesures possibles pour encadrer ces usages.
Constat Actuel
L'IA est de plus en plus présente dans notre quotidien, y compris dans l'éducation. Certaines universités, comme Science Po en janvier 2023, ont interdit l'utilisation de l'IA, tandis que d'autres, comme l'Université de Prague, la considèrent comme du plagiat. Cette diversité de positions souligne la nécessité urgente d'une réponse institutionnelle pour encadrer ces usages et prévenir les risques de triche et de plagiat.
Enquête Nationale
Pour mieux comprendre ces dynamiques, une enquête nationale intitulée "L'IA dans l'enseignement" a été réalisée. Les auteurs de cette enquête sont Le Sphynx (sondage) et Compilatio (fraude académique). Elle a été diffusée dans les universités de Lyon et d'Aix-Marseille entre le 21 juin et le 15 août 2023, touchant 1242 enseignants et 4443 étudiants. Les questionnaires, conçus pour étudier les usages de l'IA et les représentations de ces usages, abordaient des thèmes comme les craintes, les opportunités et l'acceptabilité.
Résultats de l'Enquête
Les résultats montrent que 55 % des étudiants utilisent l'IA de manière occasionnelle ou fréquente, contre 34 % des enseignants. Cependant, 88 % des enseignants pensent que leurs étudiants utilisent l'IA, ce qui pourrait indiquer une surestimation des usages. Les usages identifiés incluent la recherche d'informations et la rédaction de textes, bien que ces réponses ne puissent pas être cumulées dans les choix proposés.
Analyse Critique
Une analyse plus approfondie révèle que les enseignants peinent à percevoir les bénéfices de l'IA pour l'apprentissage, contrairement aux étudiants. La question de savoir si l'IA améliore les notes sans développer les compétences reste débattue. Est-ce un dopage académique ou une opportunité pour un apprentissage plus efficace ?
Acceptabilité et Éthique
L'enquête révèle que beaucoup d'étudiants jugent acceptable d'utiliser l'IA pour rédiger leurs devoirs, et même un quart des enseignants partagent cet avis. Cela pose des questions éthiques cruciales : copier-coller est-il tricher ? Utiliser l'IA sous supervision ou pour des traductions est-il acceptable ? La réponse n'est pas simple et nécessite un débat ouvert.
Propositions et Solutions
Pour encadrer ces usages, plusieurs solutions sont proposées. Plutôt que d'interdire l'IA, il est suggéré de fixer des règles pour une utilisation responsable. Des innovations pédagogiques peuvent également être explorées, comme la création de situations de concurrence professionnelle ou l'utilisation de détecteurs d'IA.
Conclusion
En conclusion, bien que l'étude présente des limites, elle souligne un besoin urgent de régulation. Une charte institutionnelle pourrait fournir un cadre pour une utilisation éthique.
Le Comptoir OCTO - Équipes infra et prod, ne ratez pas l'embarquement pour l'...OCTO Technology
par Claude Camus (Coach agile d'organisation @OCTO Technology) et Gilles Masy (Organizational Coach @OCTO Technology)
Les équipes infrastructure, sécurité, production, ou cloud, doivent consacrer du temps à la modernisation de leurs outils (automatisation, cloud, etc) et de leurs pratiques (DevOps, SRE, etc). Dans le même temps, elles doivent répondre à une avalanche croissante de demandes, tout en maintenant un niveau de qualité de service optimal.
Habitué des environnements développeurs, les transformations agiles négligent les particularités des équipes OPS. Lors de ce comptoir, nous vous partagerons notre proposition de valeur de l'agilité@OPS, qui embarquera vos équipes OPS en Classe Business (Agility), et leur fera dire : "nous ne reviendrons pas en arrière".
Le Comptoir OCTO - Équipes infra et prod, ne ratez pas l'embarquement pour l'...
Flex, une techno RIA incontournable pour les futures app web ?
1. Flex
une technologie RIA
incontournable pour
les applications web ?
Developer Forum 5 // Oct 2009
Ahmed EL HOUARI
wenovia.
Email : Ahmed (at) wenovia.com
2. Fin de Ajax, la RIA Incontournable ?
Et quelle technologie RIA choisir pour répondre à ma problématique ?
3. Bilan sur la RIA Flex après 2 ans
d’utilisation
Présentation du Framework Flex 3
Nouveautés dans Flex 4
Perspectives de la RIA Flex
Q/R
4. Le contexte du projet
Pourquoi la RIA
Le choix d’une technologie
La solution actuelle
La nouvelle version 2010
5. Mise en ligne en septembre 2009
Editeur Butterfly Aero Training
Technology Adobe Flash Platform, Zend Framework + Zend_Amf, Apache, MySQL
Lien formations.aero
7. Gain Expérience Utilisateur
Usabilité
Ergonomie
Multimédia
Gain Expérience développeur
Productivité
Déploiement
Performance
Maintenance
8. Les deux acteurs majeurs : Silverlight et Flex.
JavaFX, initiave de Sun, est en retard par rapport aux
autres solutions.
HTML 5 n’avance pas beaucoup.
GWT est intéressant car sans plug-in mais il manque la
gestion du multimédia en particulier la vidéo.
Silverlight et Flex offrent quasiment les mêmes
services mais ne répondent pas aux mêmes
problématiques.
Comment choisir une technologie RIA ?
Son existant et ses enjeux (déploiement, performance,
critique, …)
Son expérience (.Net, Java, ActionScript, Php)
9. Flex + Zend_AMF + Zend Framework
<mx:RemoteObject id="zendRemoteObject"
destination= "zend" source="ArticleService"
endpoint="http://www.domain.org/gateway"
result="Alert.show(event.result.myProperty)"/>
<mx:Button label=« Appel du Service"
click="zendRemoteObject.getArticles()"/>
class GatewayController extends Zend_Controller_Action
{
public function indexAction()
{
$this->getHelper('ViewRenderer')->setNoRender();
$server = new Zend_Amf_Server();
$server->addDirectory( dirname(__FILE__) .
'/../services/' );
echo($server->handle());
}
}
10. Application Flex consommant des
services Java.
Industrialisation avec Maven,
pour un développement
professionnel.
Intégration de Spring-Flex, pour
simplifier la configuration de
BlazeDS.
BlazeDS s'interpose entre le client
Flex et les services Java à la
manière d'un proxy.
Blaze permet de :
localiser et invoquer les services
Java.
désérialiser les données Flex
reçues en instances d'objets Java
et vice-versa.
11. Présentation du Framework Flex
De flash à flex …
Flex en quelques mots
La force et la faiblesse de Flex
L’offre de la plateforme Flex 3
Industrialisation de Flex
Fonctionnement et déploiement
Démo « Hello World »
Communications avec le Client
Communications non persistantes avec le serveur
Communication persistantes avec le serveur
Demo « Streaming »
Le référencement de Flex
L’accessibilité dans Flex
12. Flash a été développé par Macromedia de 1996 à
fin 2005.
Création de Flex en 2004 par Macromédia.
En 2005, la société Macromedia a été racheté
par Adobe.
En 2006, Adobe a commencé a parlé de RIA et a
publié un livre blanc à ce sujet.
Aujourd’hui, Adobe parle de Adobe Flash
Platform pour désigner un ensemble de logiciels
Adobe.
Flex est au cœur de cette stratégie.
13. Flex permet de construire
des applications web qui
s’exécutent:
Dans le navigateur web (Adobe
Flash Player) - RIA
Sur le bureau (AIR Runtime) — RDA
Sur le mobile (Flash Lite / Flash 10)
http://flex.org
Flex s’adresse aux
développeurs d’applications
d’entreprise, habitués à des
Version 3.2 stable 17 nov 2008
langages comme Java, .Net, Version 4 beta 2 (Gumbo)
(Gumbo)
Gumbo
Php 5, Python ou Ruby. V4 sortie officielle prévue pour 2010.
Flex SDK est Open source.
14. Flex nécessite le plug-in Flash Player sur le
navigateur du poste client (ou Air RunTime
pour le desktop)
AS3 100% ECMA-262 (fortement Objet qui répond
au standard ECMA-262 comme C#)
Multiplateforme : Win, Mac et Linux
Performance depuis FP9 : Nouvelle VM (AVM2)
qui cohabite avec la VM1
AVM2 est un projet Open Source
15. Description du code
MXLML (pour décrire une interface en XML), Action Script 3 (standard ECMA
Script 262, proche de Java et C#)
Programmation par évènements
Bibliothèques de composants et de librairie
Nouveau dans la V4 : séparation design et comportement
Accès aux services orientés données grâce à Adobe LiveCyle Data
Services.
Accès aux services REST, SOAP et AMF.
Design composant
CSS, héritage et enrichissement de composant
Nouveau dans la V4 : langage de description graphique des composants (FXG)
DataBinding
Espace de stockage Client avec les ShareObjects
Design Patern Architecture (MVC)
Cairngorm
PureMVC
16. IDE
Flex Builder – Plug-in Eclipse
Development Factory
Plug-in Maven + Flex-Mojo
Tests Factory
Unit : ASUnit, FlexUnit (=JUnit) intégré dans V4
Mock:Mock-AS3, Mock4AS (Integration Test)
GUI:FlexMonkey (Adobe Air App/Flex UI Interactions)
Code coverage :FlexCover
Quality :AS3NCSS, FlexPDM (clone Java), ASDocs
Design Patern Architecture
MVC : Cairngorm ou PureMVC
17. Compilateur AS3 en ligne Flex SDK 3
Compilateur MXML en ligne MXML ActionScript
Debugger en ligne Flex Class Library
Flex Class Library Debuggers
Bibliothèque de composants standards (des
classes AS3 que vous pouvez étendre
comme en Java)
Licence
Mozilla Public License, version 1.1 (MPL)
Adobe Flex SDK license
http://opensource.adobe.com/wiki/display/flexsdk/Flex+SDK
18. Flex Builder IDE
SOURCE MXML et Action Script 3
Flex SDK
MXML ActionScript
Flex Class Library
Compile
20. Local Connections
permet à 2 fichiers SWF de communiquer;
solution aux problèmes d'interopérabilité
entre deux versions de swf chargées dans
un swf parent)
Shared Objects
permet de stocker et de récupérer de la
data persistante sur la machine cliente,
Sauvegarde des préférences.
Les shared object distant permettent la
synchronisation de données en temps réel
sur plusieurs clients, mais ils nécessitent
aussi un logiciel côté serveur tel que Flash
Media Server.)
External Interface
Communication avec l'environnement sur
lequel l’application est hébergée.
Interaction avec le navigateur. Faire appel
à une méthode Javascript.
21. La méthode que vous choisirez dépend d'abord du type de
service que vous avez de disponible.
HTTPService
• Requêtes HTTP(s) countryService.send();
• URLencoding, (couple identifiant/valeur
voir XML) <mx:HTTPService
id="countryService"
• Script / Page ASP, JSP, PHP, ...
url=“data/countries.xml"/>
• Services REST
• Les données échangées ne sont pas <mx:ComboBox id="country"
typées. dataProvider="{countryService.la
• Ou JSON (typage des données) , il faut stResult.countries.country}"/>
adjoindre à votre projet la librairie “corlib” <countries>
: http://code.google.com/p/as3corelib/ <country>Sélectionner</country>
pour sérialiser/désérialiser vos data Json. <country>France</country>
<country>English</country>
</countries>
22. Exemple d’un HTTPService avec un service distant en JSON
import mx.rpc.events.ResultEvent; private function onJSONLoad(event:ResultEvent):void
import com.adobe.serialization.json.JSON; {
//on récupère le résultat Json et on le cast en String
var rawData:String = String(event.result);
<mx:HTTPService id="service"
resultFormat="text" //on convertit cette donnée en un tableau d’objets à l’aide
url=http://www.wenovia.com/mashedwenov de l’API Json.
ia.json var exempleArray :Array = (JSON.decode(rawData) as
result="onJSONLoad(event)"/> Array);
// On peuple le DataGrid avec le résultat
exempleDG.dataProvider = exempleArray ;
service.send();
}
<mx:DataGrid id="exempleDG" right="10" left="10" top="10" bottom="10">
<mx:columns>
<mx:DataGridColumn headerText="Service" dataField="src"/>
<mx:DataGridColumn headerText="Title" dataField="title"/>
</mx:columns>
</mx:DataGrid>
23. Flash Player n'a pas de support natif pour les Web Services SOAP. Cependant,
Flex propose un composant WebService qui utilise le support des
requêtes/réponses HTTP mais aussi le support du XML pour vous permettre de
travailler avec des Web Services SOAP.
Web Services
En utilisant du MXML et en utilisant de statesService.getCountries.send();
l'ActionScript.
Envoie / reçoit SOAP (XML) <mx:WebService id="statesService"
Web Service Definition Language wsdl="http://www.rightactio
(WSDL) nscript.com/states/webservice/StatesS
Echanges de quelques données ervice.php?wsdl">
"typées“: types primitifs AS3 (Boolean, <mx:operation
int, uint, Number, String, ...), Qelques name="getCountries"
types complexes du top level (Array, result="trace(statesService.getCountri
Date) es.lastResult)"/>
Sérialisation/ Désérialisation côté Flex </mx:WebService>
Pas de type personnalisé
24. Remote Object
Remoting : AMF : ActionScript Message Format = AS binaire
Introduit en 2001 avec Flash Player 6
HTTP(S) ou protocoles temps réél (RTMP)
AMF3 = AS3 (Flex), AMF0 = AS1 + AS2
Spécifications ouvertes
Data Mapping avec les objets stockés sur le serveur,
Performance car basé sur les spec AMF, qui est un protocole de transfert
binaire et natif dans la VM,
Besoin d'une passerelle (gateway) capable de recevoir et d'envoyer des
paquets AMF en HTTP, sérialiser et désérialiser de l’AMF, délégué les
requetes vers les services appropriés.
Census RIA Data Loading Benchmarks
Données typées: http://www.jamesward.com/census/
Types primitifs
Types complexes Top Level
(selon passerelle)
Types personnalisés : Value
Objects ([RemoteClass])
25. Voici une liste des principales passerelles Flash Remoting Open
Source :
JAVA : BlazeDS, WebORB, GraniteDS, Cinnamon
.NET : Fluorine, WebORB
PHP : Zend_Amf, AMFPHP, WebORB, SABREAMF
RoR : RubyAMF, WebORB
Python : PyAMF
Spec et implémentation de AMF :
http://download.macromedia.com/pub/labs/amf/amf3
_spec_121207.pdf
http://osflash.org/documentation/amf3/implement
ations
26. Remoting.
Exemple de Service Flash Remoting.
ro.sayHelloTo(inputText.text); package hello;
public class HelloWorld {
<mx:RemoteObject id="ro" public String sayHelloTo(String str) {
destination="helloworld"
System.out.println("Hello " + str);
result="resultHandler(event)" />
return "Hello " + str;
<?xml version="1.0" encoding="UTF-8"?> }
<service id="remoting-service"
class="flex.messaging.services.RemotingService"> }
<adapters>
<adapter-definition id="java-object"
class="flex.messaging.services.remoting.adapters.JavaAdapter Solution basée sur
" default="true"/> Serveur Tomcat
</adapters>
<default-channels> Serveur Blaze-DS (war à configurer dans
<channel ref="my-amf"/>
</default-channels> le projet / Eclipse Flex Builder )
<destination id="helloworld"> Création du fichier de config :
<properties>
<source>hello.HelloWorld</source> WEB-INF/flex/remoting-config.xml
</properties>
</destination> http://www.javabeat.net/articles/print.php
</service>
?article_id=116
27. Flash Player supporte les connections
socket bas-niveau et persistantes (XML
Sockets, Binary Sockets, RTMP).
Vous avez la possibilité de créer :
Des applications multimédia avec diffusion en
continu de vidéo au format HD.
Des applications temps réel ayant un faible
délai de latence (tableau de bord dans la
finance).
Des applications Flex comme des clients mail,
des clients VNC, et bien plus.
29. Adobe travaille avec Google et Yahoo (à suivre ...)
Google sait indexer les fichiers Flash (SWF) .
L’indexation est délicate, les données ne sont pas là !
Solution Adobe, le Deep Linking couplé avec d’autres
techniques traditionnels :
Basé sur la communication entre l’application Flex et le
navigateur. Mais il faut en tenir compte dès la phase de
développement.
Permet de relier une URL à une zone de son application
Flex et de charger des données.
Utilisation des fragments, la partie de l’URL qui se trouve
après le # (ex : http://www.domain.com#view=1)
30. Coder l'application avec des raccourcis clavier
Utiliser des éléments de code en Flex et Flash qui permettent
de rendre accessible l'application (26 éléments sont cités)
Utiliser MSAA (Microsoft Active Accessibility) pour rendre
exploitable l'application par les lecteurs d'ecran
Utiliser les solutions de sous-titrage (à base de xml) pour les
vidéos
Fournir à l'utilisateur une aide sur l'utilisation des dispositifs
spécifiques qui ont été développés en vue d'améliorer
l'accessibilité
Faire appel à des experts en accessibilité
Intégrer l'expérience utilisateur pour éprouver la mise en
place de l'accessibilité.
31. La nouvelle offre RIA de Adobe en2010
Inconvénient du modèle de composant Flex 3
Le nouveau modèle de composant Flex 4
Le FXG : un SVG enrichi …
La chaine de production Adobe des RIA.
Outil de prototypage RIA : Catalyst
Nouveautés dans l’IDE Flash Builder 4
Quelques changements dans le flex SDK 4
Démo de l’approche RAD de Adobe
32. Clients
Adobe Flash Player 10.1
Adobe AIR™ 2.0
Outils
Adobe Flash CS4 Professional
Adobe Flash Catalyst (av Thermo)
Adobe Flash® Builder™ (av Flex Builder)
Framework
Adobe Flex (SDK)
Serveurs
BlazeDS (Version gratuite de LiveCycle mais
sans l’implémentation de RTMP)
Gamme Adobe Flash Media Server
Technologies associées
Adobe Creative Suite® 4
Adobe ColdFusion
Adobe LiveCycle® ES
33. Les fonctionnalités du
composants sont
mélangées avec
l’apparence.
Difficile de se constituer
une bibliothèque de
composants réutilisables
avec un thème graphique
spécifique.
34. Le composant en Action Script (Flash Builder)
Comportement
Donnée
Logique
L’habillage en MXML (Catalyst)
Graphisme
Mise en page
Animation
Etat
Utilisation d’une feuille CSS pour la relation.
35. <s:Graphic x="0" y="0">
Flash XML Graphics <s:Line xFrom="0" xTo="100"
Format de fichier graphique (SVG yFrom="0" yTo="100">
enrichi …) <s:stroke>
Basé sur MXML (XML). <s:SolidColorStroke
Spécification 1.0 color="0x000000" weight="1"/>
</s:stroke>
Proche du rendu du format Flash. </s:Line>
Objectif </s:Graphic>
Facilité la conception graphique des
RIA Flex (productivité).
A partir des outils des graphistes
(Photoshop, Illustrator),
A partir d’un outil de prototypage
RIA comme Adobe Catalyst.
37. Outil d’intégration de contenu
statique et interactif.
Pour définir rapidement
l’expérience utilisateur d’une
RIA.
Transformer du contenu
statique en composants
interactifs.
Publier du contenu interactif
sans une ligne de code.
Interface familière aux
designers (calques, etc ...).
38. Séparation claire entre le visuel et le comportement d'un composant.
Une nouvelle architecture autour du format graphique FXG
Namespaces et packages dans Flex 4
Introduction du package Spark qui reprend les composants et les classes de
bases. (Tag s)
Les composants Flex 3 sont conservés (package Halo) ainsi que l’espace de
nom MXML 2006 pour une retrocompatibilité (Tag mx)
Nouvel espace de nom MXML 2009 (Tag fx), qui ne contient aucun
composant.
Composants non-visuels et tag Declarations
Avant Flex 4, Flex autorisait le tag Application à inclure des composants visuels
(AddChild) et non-visuels (déclarations de propriétés).
A partir de Flex4, la déclaration de composant non-visuels n'est pas autorisée comme
enfant. Vous pouvez utiliser ces enfants non-visuels au sein d'un tag
<fx:Declarations>. Cela inclut les effects, les validators, les déclarations de donnée et
les classes RPC.
39. Le nom change : Adobe Flash Builder 4 Data Centric Development
Prise en charge un certain nombre de serveurs distants.
Applications J2EE - BlazeDS
Rapid Application Development
Applications Php (Zend_Amf et AmfPhp)
Introspection des services distants
Il peut donc récupérer le profil des méthodes, reconnaître
le contenu d'un objet retourné par une méthode et
effectuer un binding avec un objet graphique.
Intégration de FlexUnit
qui permet de réaliser des suites de tests et de l'intégration
continue.
Générer automatiquement les getter et les setter,
Génerer automatiquement certains évènements
Le refactoring a été amélioré. Il peut maintenant être
effectué sur les composants MXML.
Générer automatiquement les formulaires à partir des
données distantes.
La pagination pour toutes les applications serveur.
Etc ….
42. Le Flash Player 10.1
Conforme aux spécifications de l’Open Screen Project,
Garantir un comportement homogène sur différents types de
terminaux :
Odinateur
Netbooks, smartphones (Windows Mobile, PalmOS, Symbian et
Android pour début 2010)
Téléphones mobiles.
Sauf Iphone
Support du multi-touch
Flash CS 5 va permettre de développer des applications pour Iphone !
Flex SDK 4
Sortie prévue de Air 2, Flash Builder 4, Flash Catalyst 2, LiveCycle
Enterprise 2
43. Merci de votre écoute
Ahmed EL HOUARI
ahmed @ wenovia.com