IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Débats sur le développement - Le Best Of Discussion :

Qu'est-ce qu'un code "propre" selon vous ?


Sujet :

Débats sur le développement - Le Best Of

  1. #401
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mai 2003
    Messages : 5
    Points : 6
    Points
    6
    Par défaut
    Je ne crois pas que les commentaire font parti d'un code propre, puisque un code propre n'a pas besoin de commentaire.

    On peux remplacer les commentaire par des test unitaire ou fonctionnel qui explique le fonctionnement de la methode. Mais la aussi le code doit être propre (ne jamais oublier de refactorisé les tests).

    Le problème avec les commentaire c'est qu'on ne sait jamais s'ils spont a jour ou pas. Tandis que les tests eux doivent toujours etre à ajour sinon le build ne fonctionne pas.

    Je crois que un code propre doit respecter les principe suivants :
    - SRP (single responsability principle)
    - DRY (don't repeat yourself)
    - OCP (open close principle)
    - les variables et methodes bien nommés
    - Tests unitaires/fonctionnels pour décrire le comportement avec des nom tres détailler pour chacun des test sous la forme when... expect...
    - bien formaté
    - utilisé les bon nom de patron dans le nom de la classe (ne pas nommer une class QuelquechoseBuilder lorqu'il s'agis d'une factory)

  2. #402
    Expert éminent sénior
    Avatar de koala01
    Homme Profil pro
    aucun
    Inscrit en
    Octobre 2004
    Messages
    11 626
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : aucun

    Informations forums :
    Inscription : Octobre 2004
    Messages : 11 626
    Points : 30 684
    Points
    30 684
    Par défaut
    Citation Envoyé par TheVandals Voir le message
    Je ne crois pas que les commentaire font parti d'un code propre, puisque un code propre n'a pas besoin de commentaire.

    On peux remplacer les commentaire par des test unitaire ou fonctionnel qui explique le fonctionnement de la methode. Mais la aussi le code doit être propre (ne jamais oublier de refactorisé les tests).

    Le problème avec les commentaire c'est qu'on ne sait jamais s'ils spont a jour ou pas. Tandis que les tests eux doivent toujours etre à ajour sinon le build ne fonctionne pas.

    Je crois que un code propre doit respecter les principe suivants :
    - SRP (single responsability principle)
    - DRY (don't repeat yourself)
    - OCP (open close principle)
    - les variables et methodes bien nommés
    - Tests unitaires/fonctionnels pour décrire le comportement avec des nom tres détailler pour chacun des test sous la forme when... expect...
    - bien formaté
    - utilisé les bon nom de patron dans le nom de la classe (ne pas nommer une class QuelquechoseBuilder lorqu'il s'agis d'une factory)
    Pour ce qui est des commentaires et des TU, as-tu remarqué qu'il y a pres de dix pages pendant lesquelles de nombreuses personnes (dont moi) ont débattu et justifié le fait que les TU et autres documents de conception ne font pas tout et ne peuvent en aucun cas suffire à estimer que le code est suffisant (entre autre dés le moment où le code créé sur base de ces différents documents et tests sort des murs dans lesquels il a été développé)

    Bien sur, il ne s'agit pas de dénigrer d'une quelconque manière les différents documents ni les TU...

    Mais, encore une fois, de manière générale, il arrive que tu doive reprendre du code pour lequel tu ne dispose ni des documents de conception originels ni des TU pour vérifier que tu n'a pas fait de conneries en modifiant le code.

    Le tout sans compter sur le temps perdu que peut représenter le fait de revalider l'ensemble du code suite à une modification mineure, par rapport au fait qu'avec un commentaire utile et cohérent, la modification mineure n'aurait même pas été envisagée
    A méditer: La solution la plus simple est toujours la moins compliquée
    Ce qui se conçoit bien s'énonce clairement, et les mots pour le dire vous viennent aisément. Nicolas Boileau
    Compiler Gcc sous windows avec MinGW
    Coder efficacement en C++ : dans les bacs le 17 février 2014
    mon tout nouveau blog

  3. #403
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mai 2003
    Messages : 5
    Points : 6
    Points
    6
    Par défaut
    Citation Envoyé par koala01 Voir le message
    Mais, encore une fois, de manière générale, il arrive que tu doive reprendre du code pour lequel tu ne dispose ni des documents de conception originels ni des TU pour vérifier que tu n'a pas fait de conneries en modifiant le code.
    Dans ce cas, il suffit de faire d'ajouter des tests avant de faire la modification pour bien comprendre le comportement. Ensuite on peux modifier le code et les test (dans l'ordre que l'on veux selon si on developpe TDD 'Test Driven Development' ou non). De cette manière on s'asure du nouveau comportement de la modif et que le bug ne reviendras pas dans une prochaine version. En plus, les tests serons la pour la prochaine modif.

    Citation Envoyé par koala01 Voir le message
    Le tout sans compter sur le temps perdu que peut représenter le fait de revalider l'ensemble du code suite à une modification mineure, par rapport au fait qu'avec un commentaire utile et cohérent, la modification mineure n'aurait même pas été envisagée
    Le temps d'execution de la totalité ou d'une partie des tests n'est pas tellement long. Il faut juste se donner des mecanismes pour produire des builds rapidement en executant qu'une partie des tests. Et avoir un build de nuit ou de weekend qui execute tous les tests pour s'assuré que rien n'a été brisé par une modif.

    La différence entre developper avec ou sans les tests c'est comme payer comptant ou au credit. Comptant : on paye une fois et c'est fini. Crédit : sa ne parait pas tout de suite mais au final sa reviens avec les interets.

  4. #404
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mai 2003
    Messages : 5
    Points : 6
    Points
    6
    Par défaut
    Et pour les modifications rapide, il faut être prudent et ne pas tomber dans le piege du squirrel burger :

  5. #405
    Expert éminent sénior
    Avatar de koala01
    Homme Profil pro
    aucun
    Inscrit en
    Octobre 2004
    Messages
    11 626
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : aucun

    Informations forums :
    Inscription : Octobre 2004
    Messages : 11 626
    Points : 30 684
    Points
    30 684
    Par défaut
    Tu nous emmène à relancer un débat qui a déjà pris plus de dix pages sur cette discussion...

    Je te proposerais réellement de relire ces pages.

    Car, ce qu'il faut absolument prendre en compte lorsque l'on parle de manière générale, c'est que tu n'es pas forcément bien au chaud dans un des bureaux de la société qui a conçu l'appllication ou la bibliothèque à l'origine, qu'une fois que l'application ou la bibliothèque à été validée à coups de TU, il y a malgré tout encore toute une série de raisons qui font que les tests d'intégration ou autres peuvent foirer, et que, de toutes manières.

    De plus la granularité des tests unitaires à effectuer fait que pour valider une modification dans une seule fonction, tu peux être amené à devoir effectuer une batterie de tests qui peut aller d'un seul et unique test à une centaine.

    En outre, le build lui-même peut prendre parfois plusieurs heures (quand il ne doit pas tourner toute la nuit)... Ca mène à un prix par modification pour le moins élevé, ne serait-ce qu'en temps de compilation.

    Et, encore une fois, il ne s'agit absolument pas de dénigrer les TU d'une quelconque manière, mais il s'agit de se rendre compte qu'ils ne peuvent "simplement" pas être la solution miracle à tous les maux, pour toutes les raisons exposées dans les pages précédentes, et qu'il est même possible de se trouver dans une situation dans laquelle il t'est purement et simplement impossible d'y avoir recours, du moins, dans un délais raisonnable.

    En effet cela nécessite de disposer des specs et autres documents de conception qui ne sont pas forcément disponibles (ou parce que le temps qui serait nécessaire pour arriver à te familiariser suffisamment avec l'ensemble du projet est sans commune mesure avec l'urgence d'apporter la solution ou avec le temps que l'on peut raisonnablement juger nécessaire à la modification à apporter).
    A méditer: La solution la plus simple est toujours la moins compliquée
    Ce qui se conçoit bien s'énonce clairement, et les mots pour le dire vous viennent aisément. Nicolas Boileau
    Compiler Gcc sous windows avec MinGW
    Coder efficacement en C++ : dans les bacs le 17 février 2014
    mon tout nouveau blog

  6. #406
    Membre Expert

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Juin 2003
    Messages
    4 506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 506
    Points : 5 723
    Points
    5 723
    Par défaut
    Citation Envoyé par Nebulix Voir le message
    Pas très sympa...
    Je note que tu es capable de lancer un menhir, comme de comprendre ce que fait un code sans commentaire, du premier coup d'oeil.
    Quand ce n'est pas écrit et découpé comme un sale cochon une fonction oue une classe sur 34567 lignes alors oui on devine assez rapidemment les intentions de code.


    L'humain moyen, lui, ne peut gérer qu'un petit nombre d'informations à la fois.
    Ma réponse ci-dessus avec un découpage de cochon et se retrouver avec des modules de 9876543210 lignes de code source


    Et si le code permet de savoir "comment", un commentaire qui explique le "pourquoi" est rarement inutile.
    Il y a plutôt de rare cas où ils s'avérent très utiles. Mais dans le soupçon du doute donne nous ton meilleur exemple de commentaire dont on ne pourrait pas se passer.

    Mon intervention précédente ne voulait pas dire que les commentaires sont inutiles,mais qu'un bon commentaire n'est pas évident à rédiger.
    la dessus nous sommes d'accord
    " Dis ce que tu veux qui insulte mon honneur car mon silence sera la réponse au mesquin.
    Je ne manque pas de réponse mais : il ne convient pas aux lions de répondre aux chiens ! " [Ash-Shafi'i ]

  7. #407
    Inactif  
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    357
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 357
    Points : 637
    Points
    637
    Par défaut
    Citation Envoyé par Matthieu Brucher Voir le message
    Mouais...
    Plus aucune personnalité reconnue du monde de la programmation ne dit de programmer avec la notation hongroise, au contraire, il faut l'éviter comme la peste.
    Pourquoi devoir renommer une variable si on a changé son type (passage d'une liste à un vecteur parce que plus adapté) ?

    Et les commentaires, c'est la même chose, trop de commentaires tuent le commentaire. Le commentaire doit être présent de manière parcimonieuse pour qu'il ait un impact. Autrement, la fonction doit pouvoir se suffire à elle-même.
    (je prends ce fil en route et comme je uis bien élevé je commence du début, du coup je réponds à une des premières pages )

    Faux, faux et archi faux !!!

    Le problème de la notation hongroise est que celle que la majorité des gens connaissent (celles promues dans les ouvrages de programmation système windows) n'est pas la notation hongroise telle qu'lle avait été conçue initialement.
    Effectivement, utiliser cette notation pour spécifier le type de la variable est quelque peu aberrant. Mais la notation hongroise originale n'avait rien à voir avec le typage, elle portait sur la fonction même de la variable. J'avais lu une anecdote disant qu'elle avait été créé initialement par les développeurs d'excel à cause des changements de coordonnées, la notation permettait de spécifier quel type de coordonnées contenait la variable, et non le type de la variable elle même.
    Y'a eu plusieurs bloggers relatant cette histoire, j'avoue que j'ai la flemme de chercher et je laisse les plus motivés d'entre vous retrouver les liens.

    Edit: En fait Souviron avait très bien répondu à ce problème avec les liens auquel je pensais

  8. #408
    Rédacteur
    Avatar de Bakura
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2005
    Messages
    1 386
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 386
    Points : 2 640
    Points
    2 640
    Par défaut
    Dites... ça n'a pas grand chose à voir (enfin si, un peu) mais... est-ce que vous vous êtes déjà arrêté deux ou trois minutes devant du code (que ça soit le votre ou celui d'un autre, mais généralement le vôtre car sa correspond à votre propre convention du code propre et "joli"), et vous dire : "putain, ça c'est du code qui a la classe !".

    Parfois ça m'inquiète un peu de m'extasier devant certains codes . Sinon pour apporter ma pierre, je pense qu'on a tous une vision différente de ce qu'est un code propre, et puis notre subjectivité envers la "beauté" que nous inspire le code y est pour beaucoup aussi.

    Mais ocmme beaucoup, indentations, noms de variables correctes, séparation sur plusieurs lignes, fonctions qui font pas 30000 lignes... Je suis ne première année dans une école d'ingé d'info, beaucoup de gens ont commencé la prog cette année, et quand je vois leur code, j'ai peur .

  9. #409
    Expert éminent sénior
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    6 803
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Décembre 2007
    Messages : 6 803
    Points : 32 068
    Points
    32 068
    Par défaut
    Citation Envoyé par Bakura Voir le message
    Dites... ça n'a pas grand chose à voir (enfin si, un peu) mais... est-ce que vous vous êtes déjà arrêté deux ou trois minutes devant du code (que ça soit le votre ou celui d'un autre, mais généralement le vôtre car sa correspond à votre propre convention du code propre et "joli"), et vous dire : "putain, ça c'est du code qui a la classe !".

    Parfois ça m'inquiète un peu de m'extasier devant certains codes . Sinon pour apporter ma pierre, je pense qu'on a tous une vision différente de ce qu'est un code propre, et puis notre subjectivité envers la "beauté" que nous inspire le code y est pour beaucoup aussi.

    Mais ocmme beaucoup, indentations, noms de variables correctes, séparation sur plusieurs lignes, fonctions qui font pas 30000 lignes... Je suis ne première année dans une école d'ingé d'info, beaucoup de gens ont commencé la prog cette année, et quand je vois leur code, j'ai peur .
    T'inquiètes, y'a aussi des gens qui ont 30 ans de maison et qui commettent des crimes contre la propreté codistique.....
    Les 4 règles d'airain du développement informatique sont, d'après Michael C. Kasten :
    1)on ne peut pas établir un chiffrage tant qu'on a pas finalisé la conception
    2)on ne peut pas finaliser la conception tant qu'on a pas complètement compris toutes les exigences
    3)le temps de comprendre toutes les exigences, le projet est terminé
    4)le temps de terminer le projet, les exigences ont changé
    Et le serment de non-allégiance :
    Je promets de n’exclure aucune idée sur la base de sa source mais de donner toute la considération nécessaire aux idées de toutes les écoles ou lignes de pensées afin de trouver celle qui est la mieux adaptée à une situation donnée.

  10. #410
    Membre régulier Avatar de Merfolk
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    170
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 170
    Points : 113
    Points
    113
    Par défaut
    Yo,
    je ne sais pas si ça a déjà été dit comme réflexion :


    je pense qu'il est difficile de définir un code propre
    par contre on peut beaucoup plus facilement définir un code sale.

    il faut donc définir un code sale...et un code propre c'est l'inverse


    ex code sale :
    - pas indenté (sisi ça existe des gens qui n'indentent pas, et ils sont payés plus que vous )
    - noms de variables pas clairs
    - 0 commentaire
    - des pavés de code en commentaire
    - gros pavés de codes
    - 50 ifs imbriqués ...
    - mauvaise conception de classe etc.
    - 6 copié collé dans le même fichier
    - paths en dur
    - aucune gestion de retour de fonction etc
    - la compliquite de code (tout diviser en 10 000 classes & fichiers et faire du jeu de piste, ce n'est pas génial non plus)
    Chasseur de bug en activité
    L'erreur est humaine, mais pour vraiment foutre le bordel, on a besoin d'un ordinateur

  11. #411
    Rédacteur
    Avatar de Bakura
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2005
    Messages
    1 386
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 386
    Points : 2 640
    Points
    2 640
    Par défaut
    - la compliquite de code (tout diviser en 10 000 classes & fichiers et faire du jeu de piste, ce n'est pas génial non plus)
    Ca c'est particulièrement chiant sur les codes exemples de certaines bibliothèques. Ils utilisent des objets définis dans un fichier, dans ce même fichier d'autres classes définies dans d'autres fichiers... pour enfin trouver l'utilisation de la feature dont le tuto parle .

  12. #412
    Inactif  
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    357
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 357
    Points : 637
    Points
    637
    Par défaut
    Franchement je comprends pas ce débat. Il n'y a pas de critère quantitatif (fonctions pas trop longues, ni trop ni trop peu de classes (super critère de design soit dit en passant... comme si le nombre de classes dans l'absolu était un critère), juste ce qu'il faut en commentaires, etc.), et de toute façon dans bien des cas on trouvera des exceptions justifiées. Et c'est probablement pour ça que 80% de ce fil concernent les commentaires...

  13. #413
    Membre expérimenté
    Profil pro
    chercheur
    Inscrit en
    Avril 2004
    Messages
    830
    Détails du profil
    Informations personnelles :
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : chercheur

    Informations forums :
    Inscription : Avril 2004
    Messages : 830
    Points : 1 453
    Points
    1 453
    Par défaut
    Citation Envoyé par hegros Voir le message
    Quand ce n'est pas écrit et découpé comme un sale cochon une fonction oue une classe sur 34567 lignes alors oui on devine assez rapidemment les intentions de code.




    Ma réponse ci-dessus avec un découpage de cochon et se retrouver avec des modules de 9876543210 lignes de code source
    Ma remarque
    L'humain moyen, lui, ne peut gérer qu'un petit nombre d'informations à la fois.
    était suivie de la précision
    En informatique quelques dizaines de lignes de code.
    qui a disparu lors de l'édition de la citation.
    Ce procédé se passe effectivement de commentaire...
    Ce qui s'énonce clairement se conçoit bien ( Le hautbois)

  14. #414
    Membre Expert

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Juin 2003
    Messages
    4 506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 506
    Points : 5 723
    Points
    5 723
    Par défaut
    Citation Envoyé par Nebulix Voir le message
    Ma remarque
    L'humain moyen, lui, ne peut gérer qu'un petit nombre d'informations à la fois.
    était suivie de la précision
    En informatique quelques dizaines de lignes de code.
    qui a disparu lors de l'édition de la citation.
    Ce procédé se passe effectivement de commentaire...
    Encore un autre de mauvaise foi qui pense avoir la science infuse.

    Tu es du genre quelques dizaines de lignes de code et du tartinage de commentaire effectivement sans commentaire...
    " Dis ce que tu veux qui insulte mon honneur car mon silence sera la réponse au mesquin.
    Je ne manque pas de réponse mais : il ne convient pas aux lions de répondre aux chiens ! " [Ash-Shafi'i ]

  15. #415
    Expert éminent
    Avatar de Immobilis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    6 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 559
    Points : 9 506
    Points
    9 506
    Par défaut
    Plus ou moins la 24 eme minute de cette vidéo: http://video.google.fr/videoplay?doc...&q=linux&hl=fr

    A+
    "Winter is coming" (ma nouvelle page d'accueil)

  16. #416
    Membre Expert

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Juin 2003
    Messages
    4 506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 506
    Points : 5 723
    Points
    5 723
    Par défaut
    Citation Envoyé par Immobilis Voir le message
    Plus ou moins la 24 eme minute de cette vidéo: http://video.google.fr/videoplay?doc...&q=linux&hl=fr

    A+
    24minute : 'si le code est bon vous pouvez le lire sans commentaire'
    " Dis ce que tu veux qui insulte mon honneur car mon silence sera la réponse au mesquin.
    Je ne manque pas de réponse mais : il ne convient pas aux lions de répondre aux chiens ! " [Ash-Shafi'i ]

  17. #417
    Membre averti
    Avatar de Félix Guillemot
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    149
    Détails du profil
    Informations personnelles :
    Âge : 51
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 149
    Points : 386
    Points
    386
    Par défaut Mon avis
    Bonjour à tous, amis et confrères développeurs,

    Je prends ce débat en cours de route, et il m'intéresse beaucoup, donc je m'exprime à mon tour.

    Du beau code ? Au sens littéral, on pourrait penser à une certaine forme d'esthétisme, et pourquoi pas après tout, la programmation est un art n’est-ce pas ? Il n’y bien que les crétins qui pensent que le développeur est l’ouvrier en bleu de travail de l’informatique et qui sont sortis de leur école d’ingé avec la seule idée en tête d’être chef de projet ou les services achats qui achètent le code au kilo en Inde ou au Maroc en croyant gagner de l’argent. Je déteste ces gens qui ont des euros à la place des yeux et qui sont tellement éloignés de notre boulot, arg…c’est plus fort que moi, je ne peux pas m’en empêcher…
    Ça fait 25 ans que je programme, je me suis passionné pour cette discipline à 11 ans et je n’en démords pas, je trouve ça génial, créatif, nourrissant intellectuellement. Ok, je m’égard un tantinet mais oui, je trouve qu’il y a du code moche et du code beau, et en général, le code moche ou brouillon est l’expression un raisonnement à son image.
    Et là, je précise, il ne s’agit plus d’esthétisme…
    Celui qui a fait de la prestation de maintenance et qui a dû corriger du code écrit avec des moufles sait de quoi je parle…
    On ne fait pas du beau code pour exposer au grand palais en tant qu’artiste peintre, non, on fait du beau code parce que la qualité de ce code garantit un « développement informatique durable ».
    Et oui, je suis du genre à régler la longueur des tabulations dans l’éditeur pour bien indenter, à me forcer à écrire IntToStr et non inttostr.
    Je suis de ceux qui pensent qu’il faut coder les commentaires et non l’inverse parce que « Ce qui se conçoit bien s’énonce clairement et les mots pour le dire viennent aisément »Boileau, L’art poétique, Chant I.

    Je vous invite à regarder la vidéo sur developpez.com :

    http://delphi.developpez.tv/delphi2008/#session2

    Et à lire la critique de Laurent Dardenne :

    http://conception.developpez.com/liv...L9782746222465

    Bon code à tous !

  18. #418
    Expert éminent
    Avatar de Immobilis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    6 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 559
    Points : 9 506
    Points
    9 506
    Par défaut
    Citation Envoyé par Félix Guillemot Voir le message
    la programmation est un art n’est-ce pas ?
    Heu, on peut le voir comme ça, mais c'est aussi une industrie. En production, les développements doivent être industrialisés pour respecter des normes et un niveau de qualité (tests, documentation, ...).
    Citation Envoyé par Félix Guillemot Voir le message
    Il n’y bien que les crétins qui pensent que le développeur est l’ouvrier en bleu de travail de l’informatique et qui sont sortis de leur école d’ingé avec la seule idée en tête d’être chef de projet ou les services achats qui achètent le code au kilo en Inde ou au Maroc en croyant gagner de l’argent.
    C'est un peu caricatural. Tu peux dire que tu n'es pas d'accord, mais pas que les autres sont des crétins...

    A+
    "Winter is coming" (ma nouvelle page d'accueil)

  19. #419
    Membre chevronné Avatar de chaplin
    Profil pro
    Inscrit en
    Août 2006
    Messages
    1 215
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 215
    Points : 1 819
    Points
    1 819
    Par défaut
    Citation Envoyé par Merfolk Voir le message
    Yo,
    je ne sais pas si ça a déjà été dit comme réflexion :


    je pense qu'il est difficile de définir un code propre
    par contre on peut beaucoup plus facilement définir un code sale.

    il faut donc définir un code sale...et un code propre c'est l'inverse


    ex code sale :
    - pas indenté (sisi ça existe des gens qui n'indentent pas, et ils sont payés plus que vous )
    - noms de variables pas clairs
    - 0 commentaire
    - des pavés de code en commentaire
    - gros pavés de codes
    - 50 ifs imbriqués ...
    - mauvaise conception de classe etc.
    - 6 copié collé dans le même fichier
    - paths en dur
    - aucune gestion de retour de fonction etc
    - la compliquite de code (tout diviser en 10 000 classes & fichiers et faire du jeu de piste, ce n'est pas génial non plus)
    Anecdote: un stagiaire m'avait demandé de lui porté secours sur un programme dans un langage (qui m'était étrangé). Je lui avais suggéré d'utiliser le(s) stabylo(s), il avait relevé 8-9 niveaux d'imbrications de if. Ses profs lui avaient répondu qu'on ne programme plus ainsi, plus précisement que c'était une ancienne pratique.

    Le copier coller de code sans compter des bouts de code mis en commentaire, c'est pénible.

  20. #420
    Membre averti
    Avatar de Félix Guillemot
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    149
    Détails du profil
    Informations personnelles :
    Âge : 51
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 149
    Points : 386
    Points
    386
    Par défaut
    Citation Envoyé par Immobilis Voir le message
    C'est un peu caricatural. Tu peux dire que tu n'es pas d'accord, mais pas que les autres sont des crétins...
    Ce n'est pas du tout "caricatural" malheureusement, c'est la triste réalité du marché de la prestation informatique que je connais par coeur : les services achat ont des grilles et le développeur est consigné dans une case en bas de l'échelle, en dessous du chef de projet. Chef de projet c'est un métier différent, mais pas plus complexe que celui du développeur. De même qu'on trouve "louche" qu'un type soit développeur au delà d'un certain âge, comme si c'était forcément parcequ'il n'a pas "su" évoluer et non par choix !
    L'acheteur a donc une idée préconçue du développeur et tire les prix vers le bas. au final, les SSII seront obligées de fournir des ressources aux CV maquillés ou en correspondance avec les prix et la prestation sera en rapport bien sûr, ce qui ne fera que conforter l'avis du directeur informatique et du service achat.
    Je trouve que tout cela est crétin et générateur de gâchis. Ma phase est peut être un peu rapidement tournée, mais je maintiens mon idée de fond et pense qu'il faut revaloriser le métier de développeur. Le code "propre" peut bien sûr y contribuer.
    Combien ai-ju vu débarquer de jeunes coqs condescendants pensant que "chef de projet" était le poste "convenable" du service informatique.
    C'est comme ça qu'on se retrouve avec des chefs de projets incapables de faire une revue de code puisqu'ils n'ont eux même aucun savoir-faire et que l'on retrouve des monceaux de code "sale".
    Je pense qu'un chef de projet en développement doit connaître le métier de développeur, c'est un minimum...
    Pour finir, je pense qu'il faut qu'on arrête d'OutSourcer à tout va pensant que le code s'achète au kilo parcequ'il est fait par des crétins, et c'est malheureusement ce que pensent beaucoup de... allez j'arrête avec ce mot, mon but n'est pas de faire de la provoc, mais tant mieux si mes propos font réagir...
    Si on ne peut pas défendre le développeur sur developpez.com, où le peut-on ?

Discussions similaires

  1. Qu'est ce que cela veux dire un "code propre" selon-vous ?
    Par kagura dans le forum Général Conception Web
    Réponses: 45
    Dernier message: 09/02/2016, 14h22
  2. [Tableaux] Retour chariot pour un code HTML propre
    Par beastman007 dans le forum Langage
    Réponses: 10
    Dernier message: 09/03/2006, 17h43
  3. Code CSS propre
    Par keawee dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 21/10/2005, 21h59

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo