Forums Développement Multimédia

Aller au contenu

Démarrer un projet - structure à adopter ?

CODE Actionscript

22 réponses à ce sujet

#1 bali33

    Ceinture Bleue

  • Members
  • PipPipPipPipPip
  • 98 messages

Posté 24 October 2008 - 08:31 AM

Bonjour,

Je commence à me mettre doucement à l'as 3.0 et je me pose la question de savoir comment structurer un projet ?
En as 2.0 j'avoue que j'utilisais essentiellement pixlib et adopter une architecture mvc fc qui correspondait assez bien à mes besoins. Là en as 3.0 je ne sais même pas si je vais dans un premier temps utiliser un framework, histoire de bien comprendre ce que je fais avant de déléguer ce rôle à quelque chose qui me mâche le boulot. Mais dans l'idée je sais que je vais avoir envie de décomposer mon projet avec le patter mvc, est-ce une bonne chose, dois-je l'appréhender de cette façon ? Je sais bien que l'on ne doit pas utilier un pattern pour utiliser un pattern mais bien parce que celui-ci réponds à notre problématique. Mais en règle générale le pattern mvc fc réponds assez bien à des applications-sites de type RIA et c'est bien de ce genre d'application dont il va être le cas pour moi.
Alors avant de foncer tête baisser ou autre, auriez vous des conseils, une méthodologie etc.

Je vous remercie

#2 frederic.dufau

  • Members
  • PipPipPipPipPipPipPipPip
  • 684 messages

Posté 24 October 2008 - 08:48 AM

Hello,

Je travaille depuis peu avec puremvc qui est aussi un mvc avec fc.

Je le trouve convivial et puissant, simple dans la syntaxe, bien docummenté, le forum est assez réactif et c'est meme l'auteur du framework qui te répond le plus souvent.

Son systéme évenementiel est indépendant de flash ce qui fait qu'il est compatible flash / flex (c'est bien quand tu veux faire l'admin en flex et le front en flash, ca te permet de mutualiser du code).

L'inconvénient au début c'est qu'il faut ecrire pas mal de code mais tu as plusiseurs solutions qui vont du générateur de code à l'utilisation de templates pour Flash dévelop (je pense à un petit projet de generateur orienté flash pour ce framework)

Voila sinon, en ce moment y'a beaucoup de buzz autour du systéme d'Ioc, là je maitrise moins et j'ai pas essayé mais il suffit d'aller faire un tour chez iteratif ou ali_o_kan ou encore neolao pour avoir des infos.

Le principe de base étant de faire les associations des classes dans un fichier xml externe à l'appli elle meme.

Amuses toi bien, si tu as besoin sur puremvc je pense pouvoir aider. ! icon_lol.gif

#3 bali33

    Ceinture Bleue

  • Members
  • PipPipPipPipPip
  • 98 messages

Posté 24 October 2008 - 08:57 AM

Oui j'ai déjà entendu parler de puremvc mais je reste un peu sceptique suite à quelques débats que j'ai pu lire à droite à gauche. Mais je vais tout de même me renseigner un peu plus que cela avant de juger.

IoC m'intéresse pas mal, on en entends pas mal parler. Il y a Ekameleon sur son blog qui explique comment son framework Vegas implémente ce pattern. Mais je suis un peu paniqué à l'idée de me lancer sur Vegas ... j'ai déjà lu la plupart des tutoriels écrit mais il me semble qu'il y a vraiment une très grande quantité d'info à assimiler avant d'avoir une vision globale de ce framework et de pouvoir le maitriser. Et comme l'idée c'est aussi de comprendre ce qu'il se passe, si je commence en utilisant un framework il va me falloir lire et comprendre les classes qui le compose pour savoir ce qu'il se passe. Alors je pense qu'utiliser un framework implémentant un pattern de type mvc fc ou Ioc est une bonne chose, mais pour un premier choix, pour apprendre je ne suis pas encore persuadé.


#4 frederic.dufau

  • Members
  • PipPipPipPipPipPipPipPip
  • 684 messages

Posté 24 October 2008 - 09:01 AM

Pour affiner si je devais définir un standard actuel pour un projet flash orienté RIA, pour moi ca ressemblerait à ça : (ça appelle des critiques evidemment)

- PureMVC
- SWFAdress
- Arthropod pour le logger
- AMFPHP ou WEBORB (j'espére que AMF va pas crever)
- UTilisation du class mapping au travers de VO (Value Object) et DAO (Data access Object)

pour le fun si tu arrives à glisser un peu de papervision sur les vues c'est la classe icon_biggrin.gif

#5 bali33

    Ceinture Bleue

  • Members
  • PipPipPipPipPip
  • 98 messages

Posté 24 October 2008 - 09:06 AM

Citation
Arthropod pour le logger

Ha tiens je connais pas, je vais aller jeter un œil !

En tout cas merci de ton aide, c'est déjà un bon pas pour moi.

#6 frederic.dufau

  • Members
  • PipPipPipPipPipPipPipPip
  • 684 messages

Posté 24 October 2008 - 09:10 AM

Citation (bali @ Oct 24 2008, 08:06 AM) Voir le message
Ha tiens je connais pas, je vais aller jeter un œil !

En tout cas merci de ton aide, c'est déjà un bon pas pour moi.

bah il est simple, c'est une appli air.

y'a aussi xray de blitzagency mais m'a l'air plus compliqué et j'ai pas vraimment tester

#7 Xarald

  • Honoris
  • PipPipPipPipPipPipPipPip
  • 2179 messages

Posté 24 October 2008 - 09:18 AM

Il n'y a pas également Lowra, il me semble que c'est un portage de PixLib en as3 , mais je ne suis pas sur. Perso j'utilisep pas de frameworks, pour le moment, mais je dois dire que cela me tente de plus en plus. Car le gain de temp au final a l'air plutot non négligeable.

#8 bali33

    Ceinture Bleue

  • Members
  • PipPipPipPipPip
  • 98 messages

Posté 24 October 2008 - 09:23 AM

Je ne suis pas certains que le développement de lowra soit terminé.
Oui je pense aussi que l'utilisation d'un framework, s'il réponds aux besoins de tes prjets, est un gain de toi.

Xarald, ti tu n'utilises pas de framework, comment as tu pour habitude de décomposer tes projets ?

Merci les gars, je suis à l'écoute de tout !

#9 Xarald

  • Honoris
  • PipPipPipPipPipPipPipPip
  • 2179 messages

Posté 24 October 2008 - 09:40 AM

Je travail principalement pour du web, donc je pense que ca rentre dans une complexité moins impresionnaite que certaine RIA. Cependant c'est vrai que sur des gros portail en flash c'est pas toujours facile.


Maintenant ca fais pas non plus spécialement longtemp que je code en objet. J'ai pour habitude, de lier chaque symbole a une classes. Donc la plupart peuve être réutilisable.

Ensuite j'ai également un petit frameworks perso, enfin si on peut appeler ca un frameworks smile.gif car ca ressemble plus a une trousse a outil pour gagner du temp, et automatiser certaine tache.
Pour ce qui est de la conception, je passe majoritairement par une classes Manager avec des accesseur, tous est static, et cette classe diffuse des évènement. Et chaque module qui a besoin de tel ou tel info je l'abonne au Event dont il a besoin. Enfin toute les classes que je code, ont directement des méthode qui doive être appelé, mais en aucun cas, elle sont basé sur des objet visuel. Du coup lorsque je me lance dans un projet, j'ai simplement besoin de linker chaque interraction avec les objet visuels, sur les méthdoes de chaque classes.

J'ai prévu de regarder les interfaces un de ses 4, mais j'ai pas encore eu le temp.


#10 frederic.dufau

  • Members
  • PipPipPipPipPipPipPipPip
  • 684 messages

Posté 24 October 2008 - 09:52 AM

Citation (bali @ Oct 24 2008, 08:23 AM) Voir le message
Je ne suis pas certains que le développement de lowra soit terminé.
Oui je pense aussi que l'utilisation d'un framework, s'il réponds aux besoins de tes prjets, est un gain de toi.

Xarald, ti tu n'utilises pas de framework, comment as tu pour habitude de décomposer tes projets ?

Merci les gars, je suis à l'écoute de tout !


Lowra n'est pas fini, mais d'aprés ce que j'en ai compris ce n'est pas uniquement un framework architectural, c'est aussi un frameweork de test et un framework utilitaire.

Me trompe je ?

En dehors d'un framework mes dev sont organisés autour d'objets pas trop specialisés qui mélange vue et données.
Ca passe si l'appli n'est pas trop grosse, sinon ca devient vite du spaghetti.

Ca donne un truc du genre :
- un main
- une interface (ui) -> qui agrege d'autre ui et composants
- une classe pour gérer les données, ou une classe par ui
- des helpers

+ les autre objets

le souci étant que, comme ça n'est pas formalisé, on peut être tenter pour aller vite de faire des connexion contre-nature et ca devient vite le bordel.
Evidemment lorsqu'il faut rajouter un objet , bah ca demande pas mal de taf aussi pour l'intégrer dans l'ensemble.

Du coup, ca n'est pas trés "agile" dans l'esprit, ca manque de souplesse.

Il m'est arrivé sur un projet de mettre en place un mvc perso, ce qui était pas mal à l'époque car ca me permettait de commencer à structurer mais j'avoue que je conseille plutot aujoud'hui de travailler avec des framework existant avant d'imaginer ses propres outils.



#11 armetiz

  • Members
  • PipPipPipPipPipPipPipPip
  • 623 messages

Posté 24 October 2008 - 09:54 AM

Citation (Fidiman @ Oct 24 2008, 08:01 AM) Voir le message
Pour affiner si je devais définir un standard actuel pour un projet flash orienté RIA, pour moi ca ressemblerait à ça : (ça appelle des critiques evidemment)

- PureMVC
- SWFAdress
- Arthropod pour le logger
- AMFPHP ou WEBORB (j'espére que AMF va pas crever)
- UTilisation du class mapping au travers de VO (Value Object) et DAO (Data access Object)

pour le fun si tu arrives à glisser un peu de papervision sur les vues c'est la classe icon_biggrin.gif


C'est toujours intéressant de savoir ce que les autres utilisent, on découvre toujours un truc dans le lot.
Merci pour ce partage,

Et pour papervision... Jamais utilisé, mais de la à dire "c'est la classe" si l'on ne fait pas de 3D, vrai ?

Edit : qu'entends tu par des "helpers" ?

Modifié par armetiz, 24 October 2008 - 09:55 AM.


#12 bali33

    Ceinture Bleue

  • Members
  • PipPipPipPipPip
  • 98 messages

Posté 24 October 2008 - 09:59 AM

C'est vrai que réinventer la roue c'est pas très utile ... si on sait comment celle-ci fonctionne icon_wink.gif

Je pense que dans un premier temps je vais moi aussi implémenter une sorte de pseudo mvc ou alors plus simplement selon la complexite quelque chose du type model-observateur.

Xarald tu dis associer tes éléments graphiques à des classes. Fais tu cela depuis un document fla et tu obtiens donc des classes qui sont automatiquement instanciées, ou alors ces classes attendent elles un objet graphique comme paramètre ce qui tu permets de les réutiliser sans avoir à recompiler de document flash ?

#13 frederic.dufau

  • Members
  • PipPipPipPipPipPipPipPip
  • 684 messages

Posté 24 October 2008 - 10:03 AM

Citation (armetiz @ Oct 24 2008, 08:54 AM) Voir le message
C'est toujours intéressant de savoir ce que les autres utilisent, on découvre toujours un truc dans le lot.
Merci pour ce partage,

Et pour papervision... Jamais utilisé, mais de la à dire "c'est la classe" si l'on ne fait pas de 3D, vrai ?

Edit : qu'entends tu par des "helpers" ?



T'as le droit de jouer aussi armetiz icon_lol.gif


Sinon pour papervision, c'est plus une petite vanne, car les possibilités ne sont pas énormes non plus sur la 3d temps réel sur flash.

Mais par contre on est dans une phase d'innovation que j'aime bien car on a trés peu de possibilités (beaucoup de contraintes) sur la 3D et que malgré ca il y a une belle créativité simplement en utilisant des cubes et des planes mappés avec des photos.. on retrouve l'esprit du début du flash creatif (2000-2001) ou avec peu de moyens on essayait de sortir des idées d'interaction innovantes / experimentales..


ps : helpers, c'est les classes outils (stringUtils, arrayUtils, angleUtils... )

#14 Xarald

  • Honoris
  • PipPipPipPipPipPipPipPip
  • 2179 messages

Posté 24 October 2008 - 10:28 AM

Citation (bali @ Oct 24 2008, 10:59 AM) Voir le message
C'est vrai que réinventer la roue c'est pas très utile ... si on sait comment celle-ci fonctionne icon_wink.gif

Je pense que dans un premier temps je vais moi aussi implémenter une sorte de pseudo mvc ou alors plus simplement selon la complexite quelque chose du type model-observateur.

Xarald tu dis associer tes éléments graphiques à des classes. Fais tu cela depuis un document fla et tu obtiens donc des classes qui sont automatiquement instanciées, ou alors ces classes attendent elles un objet graphique comme paramètre ce qui tu permets de les réutiliser sans avoir à recompiler de document flash ?



Bah je fais donner un exemple assez simple. Je travail pas mal avec flashMediaServer, donc j'ai fais une classe Audio et Video, quand un client te demande un player, même si ca peut paraitre banale, on peut arrivé dans des niveau de complexité trés élevé, comme au niveau du skinnage que des fonctionnalité, en revanche il y a des méthode qui vont rester super commune que je vais développé dans ma classes Video:

Action Script

setTauxPosition() // Pour seeker la vidéo, sauf que je fais une méthode qui marche en pourcentage, car c'est toujours simple, je lui passe 50, il ira au millieu de ma vidéo
setVolume()//Je lui donne la valeur du volume entre 0 / 1
setTooglePause()// Un bascule de pause.
setNC() //Je lui donne le netConnection
setLoop();//Boolean, je lui demande d'être rejoué aprés ou non.

Donc jusque la c'est plutot banale, mais ca va me faire gagner bcp de temp.


Car par exemple, je vais me faie un clip "SeekVideo_mc", et je vais également lui faire une classes, dans ma classes j'aurais simplement a écrire ceci par exemple

Action Script

this.addEventListener(MouseEvent.CLICK,Seek);

function Seek(me:MouseEvent):void
{
var position:Number = me.currentTarget.mouseX;
position = (position / this.width) * 100
MaClasVideo.setTauxPosition(position);
}

Au final, je n'ai qu'a connecté les éléments visuels, qui serve a interagir sur fonctions déja développé dans les classes. Qui au final reste toujours générique.
Aprés je sais pas si ma méthode est clean, mais pour le moment, c'est comme ceci que je procède.


#15 frederic.dufau

  • Members
  • PipPipPipPipPipPipPipPip
  • 684 messages

Posté 25 October 2008 - 12:38 PM

C'est une organisation objet classique orientée composant. On parlait de POC pour programmation orientée composant pendant un moment mais c'est moins tendance aujourd'hui.

Tu appliques ici une hierarchie des objets en prenant soin de bien différencier les sous objets, ce qui te donne un niveau de personnalisation interressant.

En gros je dirais que tu fais à la main ce que ferais une lib plus complexe comme un generateur de player FMS (je pense pas que ça existe).

Je pense qu'on ne peut pas faire plus efficace sur la construction de composant car une lib n'arrivera jamais à prévoir tous les demandes possibles. icon_biggrin.gif

#16 sergent.pepper

    Ceinture Marron

  • Members
  • PipPipPipPipPipPip
  • 153 messages

Posté 25 October 2008 - 13:19 PM

Je ne comprends foutre rien à ce dont vous parlez.

Suis-je normal ?

Je vous remercie.

#17 cedricr76

    Ceinture Marron

  • Members
  • PipPipPipPipPipPip
  • 124 messages

Posté 25 October 2008 - 14:14 PM

Citation
Je ne comprends foutre rien à ce dont vous parlez.

Suis-je normal ?

Je vous remercie.

oufffffff je pensé etre le seul a rien comprendre bienvenue au club Kalyptus
on ouvre un club je comprend rien au sujet " Démarrer un projet - structure à adopter ? " icon_mrgreen.gif
mais bon sa a l'air interessant j'ai mis sa de cotes en marque-pages pour quand je serais meilleur smile.gif

#18 frederic.dufau

  • Members
  • PipPipPipPipPipPipPipPip
  • 684 messages

Posté 25 October 2008 - 20:31 PM

Salut les geek,

On parle organisation de code icon_lol.gif

A force de développer, tu te rendras compte que il y a un certain nombre d'etapes répétitives que tu peux optimiser, de meme tu verras aussi que à la longue qu'un projet mal organisé est souvent difficile à maintenir ou à modifier ou alors plus tu avances dedans et plus ça devient lourd.(code spaghetti)

Il existe des méthodes et des outils pour mieux organiser son code afin de le rendre facilement compréhensible ou de permettre le travail à plusieurs sur un projet.

On parle alors de framework architectural, c'est à dire que tu vas utiliser un ensemble de classes pré-établies (le framework) qui vont te permettre d'organiser les types des objets (des classes) en se posant les questions suivante :, est ce que c'est un objet qui manipule des données, est ce que c'est un objet qui récupére des données depuis une BDD, est ce que c'est un objet visuel sur lequel l'utilisateur va cliquer, etc..

Le framework organise aussi la manière dont les objets peuvent communiquer entre eux.

Dans le cadre d'une structure MVC (model view controller), qui est un des modes d'organisation de code les plus répandus, les objets sont donc répartis en 2 catégories :

- les objets qui recoivent les interactions de l'utilisateur se trouvent dans le view
- les objets qui manipule les données se trouve dans le model

enfin la troisiéme entité (on parle d'acteur dans un framework) le controller sert à faire le lien entre les vues et les données en traitant les interactions utilisateurs de la vue pour les envoyer vers le model

Le principe de base étant que le model ne doit pas connaitre la vue c'est à dire pas de relations directes entre les 2 (on parle de couplage faible).
Ce qui te permet de changer de model comme tu veux.

Du coup, tu peux avoir un site qui récupére ses données à afficher depuis un xml et tu peux switcher sur une requete php pour aller chercher les infos dans une BDD.

Imaginons une petite application ou tu veux déplacer un personnage à l'écran avec les fleches du clavier.
Ca donnerait un découpage comme ça :

- une classe PersoView qui représente le personnage graphiquement à l'écran
- une classe PersoModel qui représente les données du personnage comme son nom, sa couleur, sa position à l'écran
- une classe KeyboardView qui servira à capter la pression des touches du clavier
- et enfin une classe controller.
- evidemment une classe main qui instancie tout le monde dans le bon ordre

si on appuie sur une touche du clavier ça donne le circuit suivant :

- keyboardview detecte la pression sur la touche fleche gauche -> il informe en direct le controller qu'une la touche fleche gauche a été pressé
- le controller demande alors au PersoModel de modifier la rotation vers la gauche (genre +10°)
- le model recoit l'ordre de modifier sa rotation vers la gauche, il effectue l'opération en modifiant la propriete rotation de 10° vers la gauche puis il envoit un event pour signaler que c'est fait
- cet event est capté pat PersoView, qui recoit alors la nouvelle rotation, ce qui tourne visuellement le perso de 10° vers la gauche

et la séquence est finie.

Quel avantage de cette organisation ?

Ben déja tu as moins de code dans chaque classe car chaque classe est extremement spécialisée.
Chaque morceau est facilement interchangeable car ils ne sont liés au reste de l'appli que par une ou deux méthodes et dans le meilleur des cas c'est simplement des events.
Cette organisation est facilement applicable à toutes les parties d'une appli / d'un jeu.
Elle permet à plusieurs dev de développer des morceaux de l'appli en toute indépédance.

etc...

Bon j'espére avoir été un peu pédagogue.

Bref, y'a pas mal de littérature là dessus maintenant et c'est bien de penser à s'y mettre un de 4, c'est ce qui te permettra de monter d'un niveau en terme de complexité de projet.

a+

#19 sergent.pepper

    Ceinture Marron

  • Members
  • PipPipPipPipPipPip
  • 153 messages

Posté 25 October 2008 - 21:58 PM

T'as écrit tout ça pour nous ? T'es trop gentil gourou.gif
Je lirai, promis.



(Et on est pas plus des geeks que vous ! Mais nous on est des geeks désorganisés.)

#20 sergent.pepper

    Ceinture Marron

  • Members
  • PipPipPipPipPipPip
  • 153 messages

Posté 25 October 2008 - 22:19 PM

Ouala j'ai lu smile.gif
Donc en fait, le principe c'est par exemple : Moi y'a qques semaines je programmais un bot à la con pour un tchat débile, au final le projet a pas marché haha m'enfin bref, je faisais ce bot en Pure Basic (pas taper pas taper) et j'avais un immense fichier de 2000 lignes de code (pour moi c'est immense)
Et donc, quand dans mon spirit, tu vois mon mind self-consciencness je pensais, je me figurais le projet, je me disais "Eh mec, t'as vraiment envie de plonger dans ton bordel là, tu vas perdre 20 minutes à retrouver où t'étais, va plutot jouer au Cluedo avec un homme-cactus", et Dieu sait que j'avais raison de me dire ça, c'est sans doute pour ça que le projet a fini par échouer le jour du Grand Test Final, ALORS QUE si j'avais bossé dans un environnement de travail qui mette à profit les zones inexploitées de mon self-enhancement, alors là j'aurais pu me projeter moi meme au dela du framework, et devenir un acteur à part entière du projet d'élaboration commune qui résultait d'un désir implicite de création, et alors j'aurais "accouché" du projet, il aurait été une part de mon self-integration au seindu truc, et de là aurait résulté la communion autour d'une même essence de volonté, celle de faire naitre une idée, an idea en Anglais, une ampoule allumée dans la nuit opaque de l'obscurantisme, dans le but de faire reculer les ténèbres tubulaire des engeances maléfiques du chaos originel.

Fin à moi avis quoi.

#21 frederic.dufau

  • Members
  • PipPipPipPipPipPipPipPip
  • 684 messages

Posté 26 October 2008 - 08:45 AM

Marocaine ou afghane ?

Enfin oui l'idée c'est de maitriser son code et de ne pas se faire submerger par un projet qui devient une jungle petit à petit où tu finis par avoir besoin d'un coupe-coupe à chaque fois tu mets le nez dedans !

Modifié par Fidiman, 26 October 2008 - 08:48 AM.


#22 Xarald

  • Honoris
  • PipPipPipPipPipPipPipPip
  • 2179 messages

Posté 26 October 2008 - 16:03 PM

Citation (Kalyptus @ Oct 25 2008, 10:19 PM) Voir le message
Ouala j'ai lu smile.gif
Donc en fait, le principe c'est par exemple : Moi y'a qques semaines je programmais un bot à la con pour un tchat débile, au final le projet a pas marché haha m'enfin bref, je faisais ce bot en Pure Basic (pas taper pas taper) et j'avais un immense fichier de 2000 lignes de code (pour moi c'est immense)
Et donc, quand dans mon spirit, tu vois mon mind self-consciencness je pensais, je me figurais le projet, je me disais "Eh mec, t'as vraiment envie de plonger dans ton bordel là, tu vas perdre 20 minutes à retrouver où t'étais, va plutot jouer au Cluedo avec un homme-cactus", et Dieu sait que j'avais raison de me dire ça, c'est sans doute pour ça que le projet a fini par échouer le jour du Grand Test Final, ALORS QUE si j'avais bossé dans un environnement de travail qui mette à profit les zones inexploitées de mon self-enhancement, alors là j'aurais pu me projeter moi meme au dela du framework, et devenir un acteur à part entière du projet d'élaboration commune qui résultait d'un désir implicite de création, et alors j'aurais "accouché" du projet, il aurait été une part de mon self-integration au seindu truc, et de là aurait résulté la communion autour d'une même essence de volonté, celle de faire naitre une idée, an idea en Anglais, une ampoule allumée dans la nuit opaque de l'obscurantisme, dans le but de faire reculer les ténèbres tubulaire des engeances maléfiques du chaos originel.

Fin à moi avis quoi.


Je faisais pareil au début ^^, J'ai même fais des classes de 2000 ligne de codde, ce qui donne au final, un Projet OBJET mais qui reste procédurale ^^ donc pas vraiment utile.

L'avantage des classes, c'est que tu aurais pu découper ton application en plein de petit module, et tu aurait eu simplement a faire des modif sur chaque module.
Par exemple, je ne sais pas si ton bot gérais ou pas les smiley, mais tu aurais pu lui faire une classes Smiley, qui contien tout les Smiley, et par exemple demain on te demande de rajouter de nouveau smiley, ca te prend 2 minutes.

L'avantage de codé en Objet, c'est de pouvoir découper proprement une application smile.gif afin de réduire les problème de maintenance.

#23 sergent.pepper

    Ceinture Marron

  • Members
  • PipPipPipPipPipPip
  • 153 messages

Posté 26 October 2008 - 18:07 PM

Citation
Marocaine ou afghane ?

Enfin oui l'idée c'est de maitriser son code et de ne pas se faire submerger par un projet qui devient une jungle petit à petit où tu finis par avoir besoin d'un coupe-coupe à chaque fois tu mets le nez dedans !


Perso je ne mets dans mon nez que des trucs pas coupés.



1 utilisateur(s) li(sen)t ce sujet

0 membre(s), 1 invité(s), 0 utilisateur(s) anonyme(s)