Download - Présentation de Robotlegs

Transcript
Page 1: Présentation de Robotlegs

Présentation du framework Robotlegs

Page 2: Présentation de Robotlegs

2

Moi

Nicolas PENNEC

Développeur Web - RIA Flex / JEE / PHP / Ajax Alyotech Technologies

juin 2011 Présentation du framework Robotlegs - Nicolas PENNEC

Page 3: Présentation de Robotlegs

Présentation du framework Robotlegs - Nicolas PENNEC 3

Inventeur de Robotlegs

Shaun SMITH

Depuis juin 2009

http://shaun.boyblack.co.za/blog/

@darscan

juin 2011

Page 4: Présentation de Robotlegs

Présentation du framework Robotlegs - Nicolas PENNEC 4

Robotlegs c’est quoi ?

Framework « pure » AS3 (Flash/Flex/AIR)

Architecture MVC-S

Injection de dépendance automatisée

Logique de couplage faible

Léger (v1.4 = 48ko)

Open source (MIT License ) / GitHubjuin 2011

Page 5: Présentation de Robotlegs

Présentation du framework Robotlegs - Nicolas PENNEC 5

MVC-S vous avez dit ?

Model-View-Controller-Service La couche Service fournit un mécanisme

d’isolation pour communiquer avec les données extérieurs (ex: web services ou fichier système).

Design d’architecture : Séparation Organisation Découplage

juin 2011

Page 6: Présentation de Robotlegs

Présentation du framework Robotlegs - Nicolas PENNEC 6

L’injection de dépendance

Basé sur SwiftSuspenders [1] : Framework AS3 d’IOC (Inversion Of Control)

basé sur l’utilisation de metadata.

Metadata utilisée : [Inject]

Meilleur découplage des couches

Moins de code (instanciation, cast, …)

[1] https://github.com/tschneidereit/SwiftSuspenders

juin 2011

Page 7: Présentation de Robotlegs

Présentation du framework Robotlegs - Nicolas PENNEC 7

Framework events

Utilisation des évènements natifs de Flash pour la communication entres les couches du framework.

Des évènements customisés permettent d’embarquer des données fortement typées.

juin 2011

Page 8: Présentation de Robotlegs

Présentation du framework Robotlegs - Nicolas PENNEC 8

Architecture

juin 2011

Page 9: Présentation de Robotlegs

Présentation du framework Robotlegs - Nicolas PENNEC 9

Flux

juin 2011

Page 10: Présentation de Robotlegs

Présentation du framework Robotlegs - Nicolas PENNEC 10

Flux (1)

juin 2011

Page 11: Présentation de Robotlegs

Présentation du framework Robotlegs - Nicolas PENNEC 11

Flux (2)

juin 2011

Page 12: Présentation de Robotlegs

Présentation du framework Robotlegs - Nicolas PENNEC 12

Flux (3)

juin 2011

Page 13: Présentation de Robotlegs

Présentation du framework Robotlegs - Nicolas PENNEC 13

Flux (4)

juin 2011

Page 14: Présentation de Robotlegs

Présentation du framework Robotlegs - Nicolas PENNEC 14

Flux (5)

juin 2011

Page 15: Présentation de Robotlegs

Présentation du framework Robotlegs - Nicolas PENNEC 15

Flux (6)

juin 2011

Page 16: Présentation de Robotlegs

Présentation du framework Robotlegs - Nicolas PENNEC 16

Flux (7)

juin 2011

Page 17: Présentation de Robotlegs

Présentation du framework Robotlegs - Nicolas PENNEC 17

Flux (8)

juin 2011

Page 18: Présentation de Robotlegs

Présentation du framework Robotlegs - Nicolas PENNEC 18

Classe « Context »

juin 2011

Page 19: Présentation de Robotlegs

Présentation du framework Robotlegs - Nicolas PENNEC 19

Classe « Event »

juin 2011

Page 20: Présentation de Robotlegs

Présentation du framework Robotlegs - Nicolas PENNEC 20

Classe « Mediator »

juin 2011

Page 21: Présentation de Robotlegs

Présentation du framework Robotlegs - Nicolas PENNEC 21

Classe « Command »

juin 2011

Page 22: Présentation de Robotlegs

Présentation du framework Robotlegs - Nicolas PENNEC 22

REX

2 projets Robotlegs en entreprise

Simple, efficace, stable (v1.4 – nov

2010)

Respecter la philosophie du couplage

faible

Documentation et bonnes pratiques

en ligne

Communauté active

Open source !

juin 2011

Page 23: Présentation de Robotlegs

Présentation du framework Robotlegs - Nicolas PENNEC 23

Limitations rencontrées

Médiation manuelle nécessaire :

Popup / Meditor

Deferred component / Meditor (creationPolicy!=all)

Héritage d’une classe Mediator : override du

onRegister() nécessaire

Risque de multiplier les Events

Si Context tros gros, en faire plusieurs

juin 2011

Page 24: Présentation de Robotlegs

Présentation du framework Robotlegs - Nicolas PENNEC 24

What else ?

Robotlegs 2.0 est sur les rails !

Remplacer les Events par de l’AS3-Signal Nécessite l’extension

« CommandSignal » AS3-Signal pour Robotlegs▪ https://github.com/robertpenner/as3-signals▪ https://github.com/joelhooks/signals-extensio

ns-CommandSignaljuin 2011

Page 25: Présentation de Robotlegs

Présentation du framework Robotlegs - Nicolas PENNEC 25

Ressources Robotlegs

Site officiel : http://www.robotlegs.org/

Support : http://knowledge.robotlegs.org/

Sources :

https://github.com/robotlegs/robotlegs-framework

+ =

juin 2011