Le design déclaratif à un nom : Degrafa

Ce 2 janvier est sortie un framework qui fera certainement parler de lui dans les mois à venir : j’ai nommé Degrafa. Cela fait un moment que je l’attendais celui-là… et en teasing ils en connaissent un rayon les p’tit gars de Degrafa !

Baptisé Origin dans sa version Beta, Degrafa est un framework de design déclaratif pour Flex. En gros : 2/3 balises mxml et vous voilà avec un joli polygone ou autres géométries vectorielles. De quoi se réinventer un tableau blanc.
Mais c’est aussi bien plus que ça : en plus de formes simples classiques, de formes libres, et autres outils de barbouillages; Degrafa nous fournis un certain nombre de classe nous permettant de skinner nos composants simplement. Une gestion étendue des fichiers SVG est prévu par la team… miam ! Et certainement d’autre chose à découvrir.

Le Framework est disponible sur le Google Code Degrafa. Plus d’information sur degrafa.com

A noter quelques bugs, notamment dans la gestion des skins CSS (class CSSSkin), que j’ai pu faire remonter sur le Google group du projet. Une version prochaine devrait résoudre tout ça.

En attendant, et parce que c’est bien d’agir, vous pouvez voir mon petit essai (les sources au clic droit. Le composant lafabrick dispo ici ;) ).

UPDATE | Un autre exemple de création de forme en AS3 (sources incluses)


15 Responses to “Le design déclaratif à un nom : Degrafa”

  1. ekameleon /
    -->

    hello :)

    Je ne sais pas si c’est le MXML qui me dérange… Mais en fait oui c’est bien le MXML pour ce genre d’outils je trouve beaucoup plus naturel de rester sur de l’AS3 tout simplement :)

    Ici cela rajoute une surcouche qui à mon sens peut très rapidement compliquer les choses ^_^

    EKA+ :)

  2. ekameleon /
    -->

    PS : je viens de regarder le SVN des composants "lafabrik" mais à part un swc et une doc j’ai pas vu les sources ? Pour un projet opensource.. c’est un peu étrange non ? :)

    EKA+ :)

  3. Flapflap /
    -->

    Ouaip faut fouiller un peu :
    degrafa.googlecode.com/sv…

  4. ekameleon /
    -->

    Non :) je ne parle pas de Degrafa mais du Google Code de "lafrabrick" (dernier lien de l’article ;))

  5. fab /
    -->

    Concernant le MXML : et bien pas de problème pour Degrafa puisque tout peux être écrit en AS3 :) Un exemple en update dans la matiné.

    Concernant le framework lafabrik : oui en effet les sources sont absentes, et ceci pour différente raison. cette petite librairie de composant est encore en phase de projet/développement. Loin d’être fini donc. Les sources viendrons… avec le temps :)

  6. fab /
    -->

    Et voila pour l’exemple AS3 en update dans le post :)

  7. ekameleon /
    -->

    Le problème c’est que d’après ce que j’ai vu du code source de Degrafa.. il y a du code mx.* dans les classes… donc une forte dépendance aux classe de Adobe.

    Pour ce qui est des sources des composants "lafabrick" .. à mon sens ce serait beaucoup plus intéressant pour un projet "opensource" que les sources soient ouvertes tout le temps.. c’est le but d’un SVN de permettre de voir les améliorations et évolutions du code. Sinon ton projet pour le moment n’est pas vraiment opensource ? Et tu ne respectes pas du tout ta licence qui impose un minimum la disponibilté des sources ^_^ Cela me dérange toujours de voir des projets opensource sans les sources ;)

    eKA+ :)

  8. fab /
    -->

    Le fait que Degrafa soit dépendant du Framework d’Adobe ne me dérange pas plus que ça… C’est un débat plus large, et qui m’hériterait certainement une tribune spécifique.

    le "projet" lafabrick n’avait pas pour objectif immédiat d’être ouvert, mais était plutôt destiné à l’être, dans un avenir proche, après mdification des sources. J’avais écrit un post donnant l’accès au Google Code lafabrick, sans véritablement me poser les questions de partages de sources. c’est une erreur et je vais y remédier. Je pense que je ne voulais pas forcement "polluer" la toile par une nouvelle librairie qui n’apporte pour l’instant pas une "révolution" significative ;)

  9. ekameleon /
    -->

    Pour le coup des classes mx.* .. un autre problème avec la dépendance du package mx.* c’est que ce projet n’est pas utilisable simplement dans Flash CS3… Bref j’ai une petite dent en ce moment avec le MXML qui mal utilisé fait régresser un peu les débutants qui vont nous pondre des applications MXML/AS3 très proche de ce que nous pouvions voir au début du web avec des site en HTML/Javascript dans tous les sens… Je ne pense vraiment pas qu’il faille tout faire en MXML (surcouce de l’AS3) et que certains outils doivent rester un peu plus bas niveau. Mais là forcément c’est que mon avis.

    Sinon pour ma petite remarque sur les sources des composants, Google Code à mon sens propose des espaces gratos pour des projets qui respectent les règles de l’opensource :) Pareil pour OSFlash, RIAForge etc… je trouve vraiment ennuyeux de voir des tas de projets opensource s’ouvrir et au final pendant des mois et des mois (et même des années) bah on n’y trouve jamais aucune source. Après je peux comprendre que le temps nous empêche d’avancer comme on le veut sur un projet et qu’on doive le mettre en stand by un certain temps. Mais si je vois un swc et une documentation dans un repository SVN… je trouve vraiment qu’il est nécessaire de trouver aussi le code source qui permet de créer un swc.

    On nous parle aussi parfois de "source privées" pendant une phase de alpha/beta… pour moi cela n’a pas de sens sur un projet qui se dit ouvert. Enfin ceci est une autre histoire ;)

    Pour ce genre de projet qui s’éternise dans le flou au niveau des sources cela devient du coup plus une vitrine "commerciale" pour ceux qui ouvrent ce type de projet qu’autre chose et je trouve cela dommage :(

    Je respecte les projets commerciaux et les gens qui ne veulent pas diffuser leurs sources mais je suis beaucoup plus pointilleux au fur et à mesure sur les projets opensources ;)

    Bref… je voulais pas ouvrir un débat là dessus mais c’est vrai que j’ai profité un peu de ton article pour discuter là dessus en espérant ne pas trop t’avoir fait du hors sujet ;)

    EKA+ :)

  10. zwetan /
    -->

    le projet est sympa
    apres comme ca utilise surtout l’API du flash player ca aurait ete pas plus mal d’avoir certaines fonctionnalités non dépendant de qlqs framework que ce soit, et ensuite les faire dependantes du framework Flex et/ou Flash

    ex: Circle (Flash API pure) -> FlexCircle (Flex framework et -> FlashCircle (Flash CS3 framework)

    mais bon je dis ca je dis rien

    pour le framework lafabrik etant donné le peu de classes je vois pas l’utilité de ne fournir qu’un swc, ca obscurcit l’utilisation plus qu autre chose

    genre
    "ah tiens pourquoi ca utilise tel event a tel endroit"
    rep: "t’occupe c’est dans le swc"

    alors autant que degrafa permet de definir des shape etc en MXML c’est pas mal et ca pourrait intérresser plus d’un projet RIA dit "professionel",
    ne pas donner le source de certains events
    ca pourrait simplement forcer a ne pas utiliser le projet ce serait bete je trouve

    Moi je dis ca jsute parce que sur un projet Flex, y a bcp de gens qui peuvent sensible sur comment sont gérés les events :p

  11. fab /
    -->

    A la demande général, les sources de la petite lib lafabrick ( lafabrick.googlecode.com/… ) ;)

    Comme je vous l’avais dis, je n’avais pas vraiment réfléchi concernant la diffusion de cette lib. Elle mérite d’être étoffé.

    Enfin voilà, on a réparé l’erreur !

  12. Foxy /
    -->

    Sur google code, çà me dérange moins les petits SWC sans sources que les grosses sources sans intérêt.

    fab >> vraiment très sympa votre blog, je l’ai découvert (et syndiqué du coup) y’a pas longtemps :)

  13. fab /
    -->

    Merci Foxy, ça fait bien plaisir :)
    Je crois qu’on partage le même point de vue !

  14. zwetan /
    -->

    Foxy> grosses sources sans interet ?
    j’ai du mal a envisagé bcp de sources code accessible qui n’aurait pas d’interet

    mettre un projet en open source ce n’est pas juste un truc ala mode
    c’est une philosophie

    on est ouvert ou on ne l’est pas, il y a rarement d’entre deux.

    Avoir a 100% du code c’est mieux, si qlqn ne veut pas etre dependant des events laFabrick parce qu’il y a deja ses gestions d’events en place, il peut prendre ces qlqs classes et les adapté pour son cas particulier.

  15. switcherdav /
    -->

    Salut,

    En cherchant à skinner un composant flex, je suis tombé sur Degrafa et ce post, perso je trouve cette bibliothèque vraiment intéressante pour ça, après, dessiner un rond en AS ou avec Degrafa …. le plus important est d’arriver simplement à ses fins …


Soit pas timide...

Powered by WP Hashcash