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

Langages de programmation Discussion :

Les règles d'or de la programmation


Sujet :

Langages de programmation

  1. #1
    Responsable SAS


    Inscrit en
    Septembre 2006
    Messages
    3 176
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 3 176
    Points : 16 219
    Points
    16 219
    Par défaut Les règles d'or de la programmation
    Bonjour,

    Voici un nouvel article relatant quelques règles importantes pour réussir et mener à bien ses projets de programmation.
    Celui-ci présente les bonnes pratiques à prendre afin de rendre son projet viable, modulable, portable et robuste.
    De plus, quelques perspectives sur le travail collaboratif et les logiciels à utiliser pour mettre en place un environnement fiable sont également présentés.
    Cet article ne vise aucun projet en particulier, ni de langage précis et se veut le plus généraliste possible.

    Les règles d'or de la programmation.

    Bonne lecture et n'hésitez pas à réagir et à donner votre opinion.

    Les balises code
    FAQ SAS
    Rubrique SAS

    Si vous souhaitez contribuer à la rubrique SAS, contactez-moi ou tout autre membre de l'équipe BI par MP.

  2. #2
    Expert éminent sénior

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10 603
    Détails du profil
    Informations personnelles :
    Âge : 66
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 603
    Points : 17 913
    Points
    17 913
    Billets dans le blog
    2
    Par défaut
    2 petites remarques vite fait :

    • La notation hongroise est fortement déconseillée (elle vient d'ailleurs à l'origine d'une erreur de traduction), car lourde, redondante, non maintenable et surtout non évolutive.

    • La refactorisation est aussi à déconseiller dans la majorité des cas (voir Rewites considered harmful ? )
    "Un homme sage ne croit que la moitié de ce qu’il lit. Plus sage encore, il sait laquelle".

    Consultant indépendant.
    Architecture systèmes complexes. Programmation grosses applications critiques. Ergonomie.
    C, Fortran, XWindow/Motif, Java

    Je ne réponds pas aux MP techniques

  3. #3
    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 058
    Points
    32 058
    Par défaut
    Citation Envoyé par souviron34 Voir le message
    La notation hongroise est fortement déconseillée (elle vient d'ailleurs à l'origine d'une erreur de traduction), car lourde, redondante, non maintenable et surtout non évolutive.
    la notation hongroise de type, oui, à éviter absolument, c'est lourdingue et inutile. Par contre, une normalisation des noms de données en fonction des éléments fonctionnels peut être futée. Par exemple, dans une macro EXCEL, préfixer de la même manière toutes les lignes, et d'une autre toutes les colonnes, peut être très utile.

    Citation Envoyé par souviron34 Voir le message
    La refactorisation est aussi à déconseiller dans la majorité des cas (voir Rewites considered harmful ? )
    Euh, ton article parle de réécriture complète. le refactoring, c'est beaucoup plus léger, et c'est souvent indispensable. Article classique de Joel Spolsky sur le sujet. Avec les règles suivantes :

    1. 1.No New Features, not even small ones, would be added.
    2. 2.At any time, with any check in, the code would still work perfectly.
    3. 3.All I would do is logical transformations -- the kinds of things that are almost mechanical and which you can convince yourself immediately will not change the behavior of the code.


    Il s'agit de nettoyer proprement, mais sans essayer de réinventer la poudre. Je suis d'accord avec ton article : mettre à la poubelle et tout réécrire, c'est un exercice dantesque. Je l'ai fait une fois, sur un périmètre limité, C'est un boulot énorme(et qui n'a pu marcher que parceque j'avais les moyens de comparer totalement les 2 chaines, anciennes et nouvelles, de manière totalement automatique). A limiter à des cas particulier. Joel Spolsky est d'accord avec ton article, en plus. (il est même plus extrême encore).

    Mais refactoriser un code pourri, ou alors un code à maintenir pour le faire évoluer, c'est une pratique saine si on se donne les moyens de tester la non-regression.
    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.

  4. #4
    Expert éminent sénior

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10 603
    Détails du profil
    Informations personnelles :
    Âge : 66
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 603
    Points : 17 913
    Points
    17 913
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par el_slapper Voir le message
    Par contre, une normalisation des noms de données en fonction des éléments fonctionnels peut être futée. Par exemple, dans une macro EXCEL, préfixer de la même manière toutes les lignes, et d'une autre toutes les colonnes, peut être très utile.
    Je ne connais pas les maco excel ou autres, mais de manière générale, il est alors préférable de normaliser par fonctioanlité en précisant par VerbeSujet/Complément qu'autre chose..

    DisplaysDataset

    ChecksValidity

    IsThresholdReached




    Citation Envoyé par el_slapper Voir le message
    Euh, ton article parle de réécriture complète. le refactoring, c'est beaucoup plus léger, et c'est souvent indispensable. Article classique de Joel Spolsky sur le sujet. Avec les règles suivantes :

    1. 1.No New Features, not even small ones, would be added.
    2. 2.At any time, with any check in, the code would still work perfectly.
    3. 3.All I would do is logical transformations -- the kinds of things that are almost mechanical and which you can convince yourself immediately will not change the behavior of the code.


    Il s'agit de nettoyer proprement, mais sans essayer de réinventer la poudre. Je suis d'accord avec ton article : mettre à la poubelle et tout réécrire, c'est un exercice dantesque. Je l'ai fait une fois, sur un périmètre limité, C'est un boulot énorme(et qui n'a pu marcher que parceque j'avais les moyens de comparer totalement les 2 chaines, anciennes et nouvelles, de manière totalement automatique). A limiter à des cas particulier. Joel Spolsky est d'accord avec ton article, en plus. (il est même plus extrême encore).

    Mais refactoriser un code pourri, ou alors un code à maintenir pour le faire évoluer, c'est une pratique saine si on se donne les moyens de tester la non-regression.
    D'une part l'article parlait de "refactorisation" sans préciser.

    D'autre part, au vu du niveau de l'article, qui s'adresse à des débutants, il est à mon avis peu souhaitable de prler de "re"-factorisation... surtout si le sens n'est pas le sens généralement admis de "refactorisation complète"... Dans le cas de l'article, il s'agit plutôt de modularité, fabrication et utilisation de biblothèques...
    "Un homme sage ne croit que la moitié de ce qu’il lit. Plus sage encore, il sait laquelle".

    Consultant indépendant.
    Architecture systèmes complexes. Programmation grosses applications critiques. Ergonomie.
    C, Fortran, XWindow/Motif, Java

    Je ne réponds pas aux MP techniques

  5. #5
    Membre éprouvé
    Homme Profil pro
    Architecte Décisionnel
    Inscrit en
    Février 2008
    Messages
    866
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte Décisionnel

    Informations forums :
    Inscription : Février 2008
    Messages : 866
    Points : 1 260
    Points
    1 260
    Par défaut
    Un point qui n'apparait pas dans cet article, et qui fait partie d'une des principales choses qu'on demande à un développeur dans le cadre d'un projet informatique, c'est le reporting sur son avancement.

    Suivre le temps qu'il y a passé, et estimer le temps qu'il lui reste à faire pour clore son développement sont 2 choses primordiales pour le bon fonctionnement du projet.
    C'est notamment sur la qualité de l'estimation du reste à faire qu'on identifie les bons développeurs.

    Nicolas

  6. #6
    Expert éminent Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Points : 7 903
    Points
    7 903
    Par défaut
    C'est notamment sur la qualité de l'estimation du reste à faire qu'on identifie les bons développeurs.
    C'est surtout comme cela qu'on identifie les bons chef de projet qui doivent tenir compte de la qualité des dévellopeurs affectés au projet pour établir un planning réaliste.
    " Le croquemitaine ! Aaaaaah ! Où ça ? " ©Homer Simpson

  7. #7
    Membre chevronné
    Avatar de mogwai162
    Homme Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 376
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Vosges (Lorraine)

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 376
    Points : 1 860
    Points
    1 860
    Par défaut
    Bonjour

    Tout à fait d'accord avec les remarques concernant la notation hongroise (pas de typage) et la refactorisation (le mieux est l'ennemi du bien trop refactorisation et c'est le clash assuré surtout sans tests de non régression qui sont nécessaires lors de chaque modification du programme).

    En ce qui concerne l'évaluation et le respect des délais, en ce qui me concerne c'est déjà du hors sujet. En dehors de la portée de l'article. Il n'a pas été question de la rédaction du cahier des charges ni du suivi des utilisateurs. Arrêtons nous là.

    Merci
    Patrick Catella

    Je ne réponds pas aux messages privés si ceux ci suivent un sujet. Il est préférable pour tous de poursuivre la discussion dans le sujet d'origine.

    Je suis Concepteur développeur Windev (10 ans) et Windev mobile (4 ans) en recherche d'emploi. J'etudie toute proposition

  8. #8
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2013
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2013
    Messages : 1
    Points : 1
    Points
    1
    Par défaut
    Merci bcp pour ces règles

  9. #9
    Membre confirmé
    Inscrit en
    Janvier 2009
    Messages
    598
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 598
    Points : 628
    Points
    628
    Par défaut
    Bon article mais qui ne s'adresse pas aux débutants car le trait est rapide, sec, utilisant souvent des termes de professionnels et de techniques qui le sont aussi.

    Le titre de ce topic ne correspond pas du tout au sujet de l'article, qui est selon l'auteur :
    comment faire pour devenir un meilleur développeur ?
    Je verrais cet article comme plutôt réservé à des programmeurs d'expérience, et même en milieu professionnel je dirais.
    Quel que soit votre environnement de développement, langage, société dans laquelle vous travaillez,
    Nullement question de niveau dans la description, même si le sigle "pour tous" est affiché.

    Ce serait utile de modifier le titre en conséquence donc.

    Pour les débutants je prévois bientôt un article sur mon site qui leur est réservé. (ma signature)
    Cliquez ici et reprenez le pouvoir !
    A bas IE !, Google, et le pistage du net, testons DuckDuckGo.com
    Lords Of The Realm II Download : Lords of the realm 2
    Infos en anglais :Ici

Discussions similaires

  1. [À lire] Les règles de ce forum
    Par hiko-seijuro dans le forum C++Builder
    Réponses: 4
    Dernier message: 07/09/2009, 16h55
  2. Important : Les règles incontournables d'utilisation de ce forum
    Par Community Management dans le forum Général Conception Web
    Réponses: 0
    Dernier message: 20/05/2009, 10h36
  3. Obligatoire : lisez les règles du forum : MAJ 06/08/2010
    Par Anomaly dans le forum Mode d'emploi & aide aux nouveaux
    Réponses: 0
    Dernier message: 03/07/2008, 13h46

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