ERYPIANO V2.03 CS4 AS3

Signaler
Messages postés
6146
Date d'inscription
dimanche 21 décembre 2003
Statut
Modérateur
Dernière intervention
4 septembre 2013
-
Messages postés
59
Date d'inscription
vendredi 18 juillet 2008
Statut
Membre
Dernière intervention
31 mars 2011
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/52579-erypiano-v2-03-cs4-as3

Messages postés
59
Date d'inscription
vendredi 18 juillet 2008
Statut
Membre
Dernière intervention
31 mars 2011

@Top30:

Salut,

ErySoft n'a aucune prétention, et n'existe pas pour se faire du pognon. Je mets à disposition des idées, et des connaissances qui me sont acquises ... sans plus.

Pour en revenir à la POO, je suis désolé, mais quand j'étais en IUT GE, les premiers ordinateurs étaient considérés comme des boites mystérieuses. J'ai donc commencé "la programmation" avec des instructions allant de 0x00 à 0xFF, voir avec les 16 instructions du MC14500, le premier ICU de Motorola qui tourne encore sur certaines machines. De ce fait, on se forge une philosophie de codage bien différente de celle d'aujourd'hui.

Je prends bonne note de tout ce que tu m'as dit, et je vais donc essayé de penser en POO pour la prochaine version. Merci d'avoir fait évoluer ton clavier, je pourrai ainsi avoir une bonne base de départ.

A plus

Eryc
Messages postés
1158
Date d'inscription
vendredi 21 février 2003
Statut
Membre
Dernière intervention
6 août 2010

J'ai modifier ma source pour qu'elle puisse réagir au touches du clavier. Comme un piano !
Mais c'est juste du vite fait.. Pour te monter, faut pas déconner quand même !
Messages postés
1158
Date d'inscription
vendredi 21 février 2003
Statut
Membre
Dernière intervention
6 août 2010

Ma source n'avait QUE le but de t'aider. Ni de refaire ton taf, ni de le copier.
Moi perso je serais pas passer par un sous clip "octave"...

C'est juste pour te montrer que Peg a raison. Tu utilises un language "POO" sans bénéfier réellement de ce qu'il te permettrait d'apporter. Si tu veux un autre exemple, simple: ton "slider" de tiempo et et volume sont absolument identique à part du "label". D'où le besoin d'en créer un génerique dont tu utilises deux instances. Un pour le tiempo et un pour le "volume". Comme ca de facile:

var sliderVolume :MonSlider= new MonSlider("volume");
sliderVolume.addEventListener( "change", onSliderChange );
addChild( sliderVolume );

var sliderTiempo :MonSlider= new MonSlider("tiempo");
sliderTiempo .addEventListener( "change", onSliderChange );
addChild( sliderTiempo );

private function onSliderChange( $e:Event ):void{
switch( $e.target ){
// $e.target étant le "slider", et "value" de 1 à 0 selon le slide...
case sliderVolume : this.setVolume( $e.target.value*100 ) ; break ;
case sliderTiempo : this.setTiempo( $e.target.value*120 ) ; break ;
}
}

Tu as le dont, à mon avis de compliquer le simple. Vu que t'as pas encore "piger" les avantages de l'AS3 et l0interface Flash. Par contre tu as aussi de bonne idée, un chargeur XML avec des handlers d'évèment different définit à travers une ID passée à la fonction "load" c'est pas con... Tu regroupes plusieurs instance en une seule, le but de la POO étant l'inverse. En simple:

class MonChargeurXML
{
fonction MonChargeurXML(){
this._loader= new URLLoader();
// Code habituel...
this._loader.addEventListener( "complete", this._parseHandler );
}

function get xml():XML{ return this._xml }
private var _xml :XML ;

function load( $url:String ):void{
this._loader.load($url);
}

function parseXML():void{
throw new Error("Sans étendre la classe, ne fera rien que de jeter des erreurs");
}

private function _parseHandler( $e:Event ):void{
this._xml= new XML($e.target.data);
this.parseXML();
}
}

class MaConfigXML
extends MonChargeurXML
{
public function MaConfigXML(){};

public override function parseXML():void{
// Faire ce que tu veux avec to XML
trace( this.xml );
}
}

class MaPartitionXML
extends MonChargeurXML
{
public function MaPartitionXML(){};

public override function parseXML():void{
// Faire ce que tu veux avec to XML
trace( this.xml );
}
}

Ca c'est de la POO...
Tu devrais essayer de revoir ta source car je pense que l'idée est bonne et que tu as un bon niveau.
Messages postés
1158
Date d'inscription
vendredi 21 février 2003
Statut
Membre
Dernière intervention
6 août 2010

http://www.flashkod.com/codes/CONCEPT-BASE-POO_52678.aspx
Une petite démo faut mieux qu'un long discours.

Je prendrais le temps de t'écrire plus tard...
Afficher les 51 commentaires