begin process at 2010 02 10 17:22:53
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Divers

 > KERNEL.JS : HÉRITAGE MULTIPLE ET POLYMORPHISME

KERNEL.JS : HÉRITAGE MULTIPLE ET POLYMORPHISME


 Information sur la source

Note :
10 / 10 - par 3 personnes
10,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Divers Classé sous :héritage, polymorphisme, dérivation, multiple Niveau :Initié Date de création :12/01/2009 Date de mise à jour :26/01/2009 16:01:07 Vu / téléchargé :3 393 / 141

Auteur : Kimjoa

Ecrire un message privé
Commentaire sur cette source (9)
Ajouter un commentaire et/ou une note

 Description

comme le titre l'indique cette source permet l'héritage multiple et le polymorphisme.
Son utilisation est très simple, et est axé sur 4 méthodes globale, et une propriété $extends référençant les classe étendue a l'objet dans un tableau.

les 4 méthodes
-$get(l'objet d'origine,la ou les propriété séparé par des virgule);
   la sélection peux se faire a plusieurs niveau, soit une propriété d'un objet d'un objet... de l'objet d'origine.
   si vous passez qu'une propriété celle ci est retourné, sinon un objet résultat est retourné et dont les propriété son celle recherché.
   si vous préfixé la une propriété avec 'poly_' alors le resultat de la recherches inclura toute les possibilité dans un tableau
   la recherche suit les chaine de classe définit dans $extends.
   exemeple : var maRecherche=$get(monObjet,'maprop,ma.prop.composé, poly_encoreuneprop');
   resultat de maRecherche={
      'maprop':valeur,
      'ma.prop.composé':valeur,
      'poly_encoreuneprop':[valeur1,valeur2...]
   }
-$call(l'objet d'origine,la fonction);le ou les  fonctions retrouvé sont appliqué a l'objet d 'origine.
-$each(un objet étendue ou un tableau d'objet étendue,l'iterateur,le contexte,si il faut répéter inclure les prop ki se répète );les propriété ne sont pas répété.
-$extend(l'objet d'origine,tableau de class a étendre, position des classe);

je posterait plus tard des exemple plus parlant, bye.


 Conclusion

j'ai fait se script pour du xml ou $extends est definit par la valeur des id, et ou chaque attribut peux contenir du javascript , si ça vous intéresse je rajoute les fonctions.

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

13 janvier 2009 15:24:47 :
ajout de la fonction initializeExtends , ki supprime toute référence vers la classe d'origine de ses classe étendue.
13 janvier 2009 15:51:43 :
oublie du mot clé var dans une fonction récursive
15 janvier 2009 16:46:50 :
optimisation de initializeExtends + ajout du contexte et de polyEach , dans $each, ainsi que la possibilité de lui passé unb tableau d'objet étendue, par exemple $each($get(obj,'poly_prop'),function(){},this,true);
26 janvier 2009 16:01:08 :
ajout de kernel-lite, 3 fois plus rapide,(pour la recherche de 13 propriété arrangé dans 3 classe différente, bouclé sur 1000 itération, soit 13000 variable recherché, chrome sans sort a 230 milli, et firefox 400) mais ,ne permettant pas une recheche multi-contextel par exemple : $get(obj,'ma.prop.multi.context') marchera pas. ajout de $class(constructeur,prototype,classeAEtendre), fonction d'héritage classique en javascript

 Sources du même auteur

Source avec Zip Source avec une capture UID - FRAMEWORK JAVASCRIPT
Source avec Zip DOMBUILDER
Source avec Zip GETELEMENTSBYREG
Source avec Zip OPTIMISER VOS BOUCLES !!
Source avec Zip POSITION, OFFSETLEFT, CLIENTLEFT CROSSBROWSER

 Sources de la même categorie

Source avec Zip MOOTABLEAU par Miky76
Source avec Zip CALCULER VOTRE IMC par lesnouesremy
CONSOLE DOS par djebbipgm
Source avec Zip PLUGIN JQUERY ARTE: AJOUTER DU TEMPS REEL SUR VOS PAGES WEB par arthurobriot
FAIRE UN FILTRE DES VILLES par scropfi01

 Sources en rapport avec celle ci

Source avec Zip LE SUPER DE JAVA, EN JAVASCRIPT .... LA SUPER CLASS ;) par Kimjoa
Source avec Zip Source avec une capture UPLOAD EN AJAX + FLASH (FANCY UPLOAD) par Vagners
Source avec une capture LISTE À CHOIX MULTIPLES par Klephte
Source avec Zip Source avec une capture UPLOAD MULTIPLE PHP [UMP] : TÉLÉCHARGEMENT MULTIPLE (AJOUT E... par bultez
Source avec Zip LIENS MULTIPLES , UN CLICK POUR PLUSIEURES OUVERTUTURES DE P... par David78390

Commentaires et avis

Commentaire de lakichemole le 13/01/2009 14:03:30 10/10

Très bon code :) Facile a comprendre beaucoup de commentaire :)
Une question/requete ta fonction each risque de boucler indéfiniment si l'utilisateur fait 2 classe qui s'héritent entre elle.
Tu me diras il a qu'a faire attention mais bon si on commence a utilisé ton code industriellement avec beaucoup de class le petit nouveau ne sait pas forcément quoi hérite de quoi.
Ne pourrais tu pas détéecter ce genre de chose (genre un objet qui hérite déjà d'une classe ne peut réhérité cette classe et donc message d'erreur)

Commentaire de Kimjoa le 13/01/2009 14:43:42

salut lakichemole, merci bcp pour ta note :)
t'as remarque est très pertinente, j'y ai pensé, ca résolution serait possible, mais complexifierait un peu l'initialisation des classes. En effet je serait obliger de passer par une fonction genre $K({maprop:1,$extends:[]})...et j'ai voulue simplifier un max son utilisation...
Bon étant donné ke tu me fait plaise en laissant un msg avec un super note , je rajoute la fonction $K.
je reposte dans pas longtemps bye.

Commentaire de Kimjoa le 13/01/2009 15:28:51

voila, j'ai reposter, en faite j'avais pas besoin de fonction d'initialisation de classe, car aucune classe ne peux dériver d'une autre si elle n'a pas été définit :)
Du coup c'est ke lors de l'appel à $extend() ke le test s'effectue.
a++

Commentaire de lakichemole le 13/01/2009 17:31:10

Merci à toi :) C'est la première fois que je met le max ;) (il me semble).

Commentaire de Arto_8000 le 15/01/2009 04:41:48 10/10

Assez surprenant comme source je dois dire. Il y a longtemps que je m'étais dit que les concepts de POO plus avancé ne ferait jamais parti du javascript, mais tu me prouves le contraire. Je suis certainement un grand fan d'orienté objet et je vais regarder cela avec beaucoup d'attention dès que je me relance dans un projet avec beaucoup de javascript.

Commentaire de XtremDuke le 15/01/2009 14:17:40 10/10

Excellente source et très instructive en plus.

Commentaire de Kimjoa le 15/01/2009 14:24:04

merci à toi Arto_8000, surtout de ta part :).
Je tiens à modérer un peu ta remarque , tout d'abord kernel n'aborde pas des concept classique POO, tel que les interfaces, les classes abstraite, l'encapsulation des données ect...
De plus il existe bcp de solution concernant l'héritage en js notamment base.js de Dean Edwards , ou encore celui de prototype Class.create();
si tu veux en savoir plus sur ca kil est possible de simuler comme concept POO en js voila un super lien -> http://t-templier.developpez.com/tutoriel/javascript/javascript-poo1/
a++

Commentaire de Kimjoa le 15/01/2009 14:25:22

merci à toi XtremDuke , trois note , trois 10/10, je vais rougir :)
a++

Commentaire de Kimjoa le 15/01/2009 17:00:20

j'ai oublié de dire qu'il est possible lors d'un $get d'enregistrer le résultat , dans un objet passé en 3 arguments de la fonction

exemple : $get(obj,'maProp1,maProp2',objDeResultat)

voila a++

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

probleme de checkbox multiple [ par lelyonnais ] Bonjourj ai cree un formulair avec differente chekbox qui s appelle&lt;input type="checkbox" name="interet[]" value="mode"&gt;&lt;input type="checkbox checkbox multiple verifier nbre de choix [ par toniom ] slt j'ai des champs checkbox à choix multiples.exemple d'une des balises :&lt;input type="checkbox" name="Formation[]" onClick="verifier(this,this.for Dernier selection dans select multiple [ par guiguimac ] bonjour,j'aimerai savoir comment récupérer le dernier élément sélectionné dans un select multiple ...merci d'avance ! Select All d'un select multiple [ par guiguimac ] bonjour,pour sélectionner tous les éléments d'un select multiple, je fais une boucle et je les passe tous à selected ... mais comme j'en ai bcp le rés Récupérer les valeurs d'une selection multiple [ par d0d0 ] Bonjour,J'utilise un &lt;select&gt; avec possibilité de selection multiple.Je souhaiterai récupérer les valeurs ainsi que le nombres d'éléments select travail sur un <select> multiple [ par d0d0 ] Bonjour,J'utilise un &lt;select&gt; avec possibilité de selection multiple.Je souhaiterai récupérer les valeurs ainsi que le nombres d'éléments select Evènement sur un select multiple [ par Dionysos33 ] Bonjour à tous,Y a t-il un moyen direct d'avoir l'index du dernier item sélectionné par l'utilisateur dans un select multiple ?Merci Positionner la scroll bar dans un select multiple [ par RoroLaDechire ] Bonjour,je souhaiterais que la première option sélectionnée dans un select multiple, lors d'un rechargement de la page, soit au milieu du select, et n interaction liste multiple [ par mojito84 ] voila je suis debutant en js et je voudrais utiliser deux liste de selection multiple comme ceci:1. Dans la premiere liste j'ai affiché le resultat d' Focus sur un élément dans une liste Select multiple [ par Barbichou ] Bonjour.J'ai une liste à choix multiple dans une page HTML, avec certains des éléments déjà sélectionnés, et triés dans un certain ordre. Le pb est de


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,030 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales