Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1568 connectés 

 


 Mot :   Pseudo :  
 
 Page :   1  2
Page Suivante
Auteur Sujet :

[Design Patterns] On corrige ensemble ?

n°980817
sircam
I Like Trains
Posté le 14-02-2005 à 11:43:24  profilanswer
 

Reprise du message précédent :

Taz a écrit :

Pourquoi vous agissez comme ça ? Pourquoi vous voulez pas prendre 5 minutes pour comprendre ce qu'est un singleton conceptuellement ?


:heink:
 
J'crois qu'on a bien compris ce qu'était un singleton. Simplement, le Monsieur te dit qu'il n'aime pas l'esthétique de la chose. On crache pas dessus pour autant : Florent et moi, on dit +1 pour celui-là.
 
Et on a tous déjà passé plus de 5 minutes sur chaque DP - du moins je l'espère, sinon on est juste ici comme spectateur. On les prend tels qu'ils sont, mais ça n'empêche pas d'avoir une opinion perso sur la beauté de tel ou tel DP.
 
Bon, on en est où dans ton plan ? Tu clotures quand pour les votes ?


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
mood
Publicité
Posté le 14-02-2005 à 11:43:24  profilanswer
 

n°980824
Taz
bisounours-codeur
Posté le 14-02-2005 à 11:45:45  profilanswer
 

on parle leur implémentation, pas d'eux même

n°980882
FlorentG
Posté le 14-02-2005 à 12:21:08  profilanswer
 

Taz a écrit :

on parle leur implémentation, pas d'eux même


On y vient, on y vient :D

n°980919
lorill
Posté le 14-02-2005 à 12:42:10  profilanswer
 

L'un ne va pas sans l'autre.

n°980951
Taz
bisounours-codeur
Posté le 14-02-2005 à 13:38:03  profilanswer
 

ben techniquement si t'as compris le schéma conceptuel ...

n°981160
Taz
bisounours-codeur
Posté le 14-02-2005 à 15:56:33  profilanswer
 

si vous avez marre du singleton, regardez le Borg Pattern :op

n°981193
Taz
bisounours-codeur
Posté le 14-02-2005 à 16:14:04  profilanswer
 

Bon pour le composite, déjà l'exemple de base est un hack C++, donc pas traductible en C# ou Java :/

n°981332
SomeBugsIn​Me
life suxx
Posté le 14-02-2005 à 17:54:45  profilanswer
 

drapal

n°984503
Taz
bisounours-codeur
Posté le 17-02-2005 à 09:48:09  profilanswer
 

bon, on fait le composite juste en C++ pour voir ?

n°984508
FlorentG
Posté le 17-02-2005 à 09:50:58  profilanswer
 

J'ai un peu du mal à la piger la Composite :(
 
C'est bien un objet de type Composite qui va contenir soit des Leaf soit des Composite ?

mood
Publicité
Posté le 17-02-2005 à 09:50:58  profilanswer
 

n°984513
Taz
bisounours-codeur
Posté le 17-02-2005 à 09:54:35  profilanswer
 

même pas en fait, ça segfault :)

n°984521
FlorentG
Posté le 17-02-2005 à 10:00:20  profilanswer
 

Ah ?

n°984557
Taz
bisounours-codeur
Posté le 17-02-2005 à 10:17:41  profilanswer
 

le prototype à l'air bien.
http://dejean.benoit.free.fr/HFR/Prototype/lab.cpp ça va comme départ ?

n°984559
Taz
bisounours-codeur
Posté le 17-02-2005 à 10:18:11  profilanswer
 

vous voulez que je fasse ce truc en python ? en C# ?

n°984561
FlorentG
Posté le 17-02-2005 à 10:19:02  profilanswer
 

En C# ouais ce serait pas mal (ou en VB.NET :D, mais les deux sont pareils)

n°984573
Taz
bisounours-codeur
Posté le 17-02-2005 à 10:24:41  profilanswer
 

toi tu sors ...

n°984579
FlorentG
Posté le 17-02-2005 à 10:26:37  profilanswer
 

J'veux bien la faire en VB.NET, mais faut d'abord la piger. C'est le problème avec certaines DP, faut piger l'interêt...

n°984596
Taz
bisounours-codeur
Posté le 17-02-2005 à 10:41:12  profilanswer
 

http://dejean.benoit.free.fr/HFR/Prototype/lab.cs ça doit donner quelque chose comme ça ?
 
bon quand tout le monde sera d'accord sur le code départ, ça pourra commencé. En attendant d'autres langages ...

n°984599
Taz
bisounours-codeur
Posté le 17-02-2005 à 10:41:59  profilanswer
 

FlorentG a écrit :

J'veux bien la faire en VB.NET, mais faut d'abord la piger. C'est le problème avec certaines DP, faut piger l'interêt...


bon j'avais de la motivation ce matin, mais je vois que y a des gens qui ont toujours rien compris. J'efface mon petit drapeau, ça vaut pas la peine

n°984606
FlorentG
Posté le 17-02-2005 à 10:45:27  profilanswer
 

J'te comprend plus là [:spamafote]. Dans ce topic, tu voulais implémenter certaines DP dans certains langages autres que le C++. Moi j'veux bien, mais si je pige pas les DP c'est dur :(

n°984935
push
/dev/random
Posté le 17-02-2005 à 14:50:40  profilanswer
 

[:rofl]

n°984987
Taz
bisounours-codeur
Posté le 17-02-2005 à 15:23:19  profilanswer
 

FlorentG a écrit :

J'te comprend plus là [:spamafote]. Dans ce topic, tu voulais implémenter certaines DP dans certains langages autres que le C++. Moi j'veux bien, mais si je pige pas les DP c'est dur :(

c'est toujours pas ça, essaie encore ...

n°985745
FlorentG
Posté le 18-02-2005 à 10:03:45  profilanswer
 

OK, au temps pour moi :D J'ai enfin piger :D J'avais pas vu la subtilité du lien lab  :whistle:  :whistle:  
 
Donc en fait on prend la version c++ proposée par le site, et on reformule dans un autre langage, c'est bien ça ?  :sweat:

n°985827
Taz
bisounours-codeur
Posté le 18-02-2005 à 10:57:16  profilanswer
 

oui, la on est dans la première phase où ce qui s'y connaisse traduise le TP dans un langage cible

n°990956
Taz
bisounours-codeur
Posté le 23-02-2005 à 11:22:47  profilanswer
 

bon, ben c'est un bide, tant pis

n°990958
FlorentG
Posté le 23-02-2005 à 11:23:34  profilanswer
 

Mais non mais non, faut juste trouver le temps ;) Moi je serais partant, mais j'ai 50 choses à faire là :(

n°991025
Jubijub
Parce que je le VD bien
Posté le 23-02-2005 à 12:14:29  profilanswer
 

Taz a écrit :

bon, ben c'est un bide, tant pis


 
 
ben tu devrais commencer sur un DP simple à faire ce que tu veux : parce que j'ai peur que personne n'aie compris ce que tu voulais vraiment, et vu que t'a passé toute la page 1 à jeter les gens, ca a du tarir des vocations...
 
amorce la pompe, ca fera venir des gens
 
 
(perso vu ma faible exp des dp je me vois pas publier quoi que ce soit, sous peine de faire mourrir de rire nraynaud et -- :D)
 
 
allez si tant pis :  
 

Code :
  1. /* singleton en java
  2. Fait à l'arrache */
  3. public class Toto {
  4.     private static Toto instance;
  5.    
  6.     private Toto() {
  7.         // mettre ici l'initialisation souhaitée
  8.     }
  9.    
  10.     public synchronized static Toto getInstance() {
  11.         if (instance == null) {
  12.             instance = new Toto();
  13.         }
  14.         return instance;
  15.     }
  16. }


 
 [:cupra]


Message édité par Jubijub le 23-02-2005 à 12:20:34

---------------
Jubi Photos : Flickr - 500px
n°992032
Taz
bisounours-codeur
Posté le 24-02-2005 à 09:07:16  profilanswer
 

tu vois, t'as même pas lu l'intitulé du topic ...

n°992033
nraynaud
lol
Posté le 24-02-2005 à 09:09:52  profilanswer
 

Jubijub a écrit :


Code :
  1. /* singleton en java
  2. Fait à l'arrache */
  3. public class Toto {
  4.     private static Toto instance;
  5.    
  6.     private Toto() {
  7.         // mettre ici l'initialisation souhaitée
  8.     }
  9.    
  10.     public synchronized static Toto getInstance() {
  11.         if (instance == null) {
  12.             instance = new Toto();
  13.         }
  14.         return instance;
  15.     }
  16. }


 
 [:cupra]


ratai, le return ne doit pas être dans le bloc synchronized.


---------------
trainoo.com, c'est fini
n°992138
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 24-02-2005 à 11:06:59  profilanswer
 

On dirait que personne n'a compris le but du topic, permettez moi de recadrer les choses, car c'est une bonne idée, mais apparemment mal comprise.
 
Le but de ce topic n'est pas d'implémenter un à un les différents DP dans différents langages, mais de corriger les TP présents sur le site mentionné dans le 1er post.
 
Par exemple, pour celui ci :
http://home.earthlink.net/~huston2/dp/FactoryLabCpp
 
Il faut résoudre le problème soumis en entête :

Citation :


// Purpose.  Abstract Factory design pattern lab.
//  
// Problem.  #ifdef case statements are spread throughout the code to
// accomodate 3 different porting targets.  This makes maintenance
// difficult, and porting to a 4th platform onerous.
//  
// Assignment.
// o Create an abstract base class Factory.
// o Define pure virtual member functions createSocket(), createPipe(),
//   and createThread().
// o Subclass UnixFactory, VmsFactory, and NtFactory off of Factory.
// o Refactor the "create" free functions to be member functions of one of
//   the Factory derived classes.
// o Declare a Factory* pointer local to main().
// o Use a single #ifdef case statement in main() to instantiate the desired
//   Factory derived class.
// o Do not optimize-out the doOneLaneIPC(), doTwoLaneIPC(), and
//   doParallelProcessing() free functions.
// o Pass the Factory pointer to each of these free functions so that they
//   can create sockets, pipes, and threads without regard to race, creed,
//   or platform.
// o Supply the desired "compiler directive" at compile time.
// o Extra credit: implement the Factory class as a Singleton.


Voilà ce qu'il faut résoudre.


---------------
J'ai un string dans l'array (Paris Hilton)
n°992144
Taz
bisounours-codeur
Posté le 24-02-2005 à 11:13:14  profilanswer
 

sauf que là on serait parti sur le Composite. J'ai déjà proposé le code du TP réactualisé en C++ et en C#. On pourrait  faire le code en d'autres langagages. Quand on est d'accord sur le code des TP, on se lance, chacun fait le TP dans son coin, on en discute et on essaie de synthétisé une correction langage par langage.

n°992961
Jubijub
Parce que je le VD bien
Posté le 24-02-2005 à 21:47:04  profilanswer
 

nraynaud a écrit :

ratai, le return ne doit pas être dans le bloc synchronized.


 
 
faudrait que je me penche plus précisément sur cette histoire de verrous...


---------------
Jubi Photos : Flickr - 500px
n°1484634
rui
Strike Out Looking..
Posté le 30-11-2006 à 21:03:06  profilanswer
 

idée morte ? :D
 
(je fais le tri dans mes anciens drapals :o)

n°1484731
Taz
bisounours-codeur
Posté le 01-12-2006 à 08:18:16  profilanswer
 

un peu :/

n°1484744
_darkalt3_
Proctopathe
Posté le 01-12-2006 à 09:05:25  profilanswer
 

[:drapal]

n°1485077
esox_ch
Posté le 01-12-2006 à 16:30:20  profilanswer
 

Dommage :s
Je serais chaud à faire ça en ruby :s


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
n°1508571
kirua_sama
Learn sciences with senses
Posté le 30-01-2007 à 11:49:16  profilanswer
 

dommage effectivement !
C'était un topic en or pour les débutants ^^

n°1508593
ixemul
Nan mais sans blague ! ⚡
Posté le 30-01-2007 à 13:05:33  profilanswer
 

J'adore cette implé du singleton pour C# :love:  
 

Code :
  1. /// <summary>
  2. /// Generic class implements singleton pattern.
  3. /// </summary>
  4. /// <typeparam name="T">
  5. /// Reference type. Important: Must have private constructor (not public).
  6. /// </typeparam>
  7. public class Singleton<T> where T : class
  8. {
  9.    protected Singleton() { }
  10.    public static T Instance
  11.    {
  12.      get { return SingletonCreator.instance; }
  13.    }
  14.    class SingletonCreator
  15.    {
  16.      static SingletonCreator() { }
  17.      internal static readonly T instance = typeof(T).InvokeMember(typeof(T).Name,
  18.                           BindingFlags.CreateInstance |
  19.                           BindingFlags.Instance |
  20.                           BindingFlags.NonPublic,
  21.                           null, null, null) as T;
  22.    }
  23. }


 
trouvé sur wikipedia

n°1508595
souk
Tourist
Posté le 30-01-2007 à 13:09:44  profilanswer
 

je prefere l'imple ruby perso [:pingouino]
 

Code :
  1. require 'singleton'
  2.  
  3. class MyClass
  4.  include Singleton
  5. end

n°1508597
ixemul
Nan mais sans blague ! ⚡
Posté le 30-01-2007 à 13:11:56  profilanswer
 

souk a écrit :

je prefere l'imple ruby perso [:pingouino]
 

Code :
  1. require 'singleton'
  2.  
  3. class MyClass
  4.  include Singleton
  5. end



 
Bha oui, mais celle exposé plus haut est générique  :D et utilise des concept C# interressant pour les débutants (Généricité, réflexion, internal)

mood
Publicité
Posté le   profilanswer
 

 Page :   1  2
Page Suivante

Aller à :
Ajouter une réponse
 

Sujets relatifs
[XHTML/CSS] Bien débuter, et coder un design proprementPHPMYPAGER + design = debutant
je cherche un livre d'or design pour coller avec la charte de mon siteContenu PHP / Design CSS
Intérêt design patternrepresentation d'ensemble
J'ai du mal avec les struct et les pointeurs ensemble !design pattern pour une application C/S
Generer un nombre aléatoire à l'exception d'un ensemble d'entiers ?Design Patern !?
Plus de sujets relatifs à : [Design Patterns] On corrige ensemble ?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR