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

Etudes Discussion :

Utilité de la logique pour devenir bon en programmation ?


Sujet :

Etudes

  1. #1
    Nouveau membre du Club
    Inscrit en
    Octobre 2004
    Messages
    78
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 78
    Points : 38
    Points
    38
    Par défaut Utilité de la logique pour devenir bon en programmation ?
    Bonjour,

    Je voudrais savoir si lorsqu'on travaille déja dans la programmation, s'il peut être utile pour son efficacité au travail de se perfectionner dans la logique ou dans les mathématiques, ou alors ce n'est qu'utile que lorsqu'on est étudiant. Programme-t-on mieux avec des connaissances avancée en mathématique et/ou en logique?

    Merci

  2. #2
    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
    à vue de nez, je dirais que ça n'est pas directement les connaissances qui aident(quoi que ça puisse dans certains cas). Par contre, ça fait appel aux mêmes qualités intellectuelles. Je verrais donc ça plus comme des gammes : ça n'est pas vraiment de la musique, mais ça y prépare.
    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.

  3. #3
    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
    disons que la logique est NECESSAIRE, bien que relativement peu souvent visible, dans une programmation qui se veut professionnelle et robuste..

    Une PENSEE mal structuree aboutira a un programme mal concu, qui sera la siege d'erreurs, potentiellement lourdes de consequences.

    Et le BON SENS,

    Mais la connaissance "universitaire" de la logique n'a que peu de rapport avec cela.....

    Maintenant, les mathematiques sont tres souvent necessaires, suiivant les logiciels que l'on fabrique.

    La plupart du temps, des mathematiques de base suffisent : "probleme des piquets et des intervalles", equation d'une droite, d'un cercle, d'une ellipse, ou operations relevant d'un cours de seconde.

    Mais des que l'on touche a de la programmation scientifique, SIG, visualisation, traitement d'images, video, son, ou autres domaines comme ca, la les mathematiques deviennent complexes et fondamentales.
    "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

  4. #4
    Inactif  
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    1 958
    Détails du profil
    Informations personnelles :
    Âge : 58
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 1 958
    Points : 2 467
    Points
    2 467
    Par défaut
    Citation Envoyé par souviron34 Voir le message
    disons que la logique est NECESSAIRE,[...]
    Mais la connaissance "universitaire" de la logique n'a que peu de rapport avec cela.....
    Plus maintenant Souviron ça fait de nombreuses années que beaucoup du programme ont adaptés les cours de logique pour qu'ils aient un rapport avec la programmation.

    Mais grosso modo je suis en accord avec ce que tu as dit.

  5. #5
    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 Garulfo Voir le message
    Plus maintenant Souviron ça fait de nombreuses années que beaucoup du programme ont adaptés les cours de logique pour qu'ils aient un rapport avec la programmation.
    bah..
    Que ce soit la logique "philosophique" ou booleenne, c'est pareil.

    Je dis que cette forme de logique, a quelques exceptions pres , n'a aucune importance en programmation (sauf si tu veux faire des operations de bits, ce qui est quand meme rare.... )

    Et que si jamais il t'arrive de tomber sur une fonction faisant cela (un XOR par exemple), en general la doc explique suffisamment ce que ca fait pour ne pas avoir a suivre de cours particuliers (quoique.. ca depend de qui donne les cours )

    En 25 ans de programmation, je n'ai eu que 2 fois a utiliser ca : faire une fonction pour lire/ecrire un bit dans un entier (que j'ai laisse un gars qui comptait en binaire faire), et utiliser un XOR.....

    Et quand, dans du code, je suis tombe dessus (exemple un decodage mpeg), je me suis dit que si c'etait diffuse par mpeg.org c'etait correct, donc je passe...
    "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

  6. #6
    Inactif  
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    1 958
    Détails du profil
    Informations personnelles :
    Âge : 58
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 1 958
    Points : 2 467
    Points
    2 467
    Par défaut
    Citation Envoyé par souviron34 Voir le message
    bah..
    Que ce soit la logique "philosophique" ou booleenne, c'est pareil.

    Je dis que cette forme de logique, a quelques exceptions pres , n'a aucune importance en programmation (sauf si tu veux faire des operations de bits, ce qui est quand meme rare.... )
    La création d'un prédicat nécessite une compréhension des règles de logique. Tu serais peut être surpris de voir combien d'étudiant(e)s de premier année se trompe en utilisant le « ou » logique (donc le || du C++) ou bien en essayant de créer la condition de

    x \in [-50;-20[ \UNION [20;50[

    Ça c'est une chose... mais sinon je ne parlais pas de cette partie là. Les cours de logique intègre de plus en plus un peu d'automate, de théorie des graphes (donc ce qu'on appelle math discrète) qui servent dans le cursus d'un étudiant pour comprendre les fondements, les diagrammes, les algorithmes, la construction de grammaire etc.

    C'est pourquoi au final je suis d'accord avec toi quand tu dis « disons que la logique est NECESSAIRE, bien que relativement peu souvent visible, dans une programmation qui se veut professionnelle et robuste.. » et c'est l'essentiel. Tout est dit là dedans.

    Mais la logique c'est loin d'être juste les portes qui ne sont de toute façon presque plus enseignées. On a quitté l'électronique pour donner des enseignements plus propres aux réflexions qu'ils ou elles auront à faire plus tard. Tu parles de bas niveau, je parle au contraire de très haut niveau.

    Le génie logiciel nécessite souvent une bonne connaissance de base de la logique. L'utilisation de méthode formelle particulièrement, mais cela reste peu significatif dans le monde du GL. Cependant d'autres domaines aussi ont des besoins importants en logique : conception de métrique, conception d'ERP, etc. Ou bien dans des domaines comme l'élaboration de programmes fortement concurrents.

    Le côté plus calculatoire des maths apparaît dans d'autre domaine : 3D, approximation numérique, optimisation des calculs etc. Les employeurs comme EA Games, Ubisoft etc. demande un très bon baggage d'analyse mathématique pour être employé comme développeur des moteurs 3D. C'est extrêmement exigent. C'est de même bien sûr dans les autres domaines que tu as cité (théorie du signal, analyse d'image etc.) où les besoins en analyse fonctionnelle sont très fort.

  7. #7
    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 Garulfo Voir le message
    La création d'un prédicat nécessite une compréhension des règles de logique. Tu serais peut être surpris de voir combien d'étudiant(e)s de premier année se trompe en utilisant le « ou » logique (donc le || du C++) ou bien en essayant de créer la condition de

    x \in [-50;-20[ \UNION [20;50[

    Ça c'est une chose...
    OK, mais ca c'est ce que j'appelle quand meme "des maths de base" ou "de la logique de bon sens"...


    Citation Envoyé par Garulfo Voir le message
    mais sinon je ne parlais pas de cette partie là. Les cours de logique intègre de plus en plus un peu d'automate, de théorie des graphes (donc ce qu'on appelle math discrète) qui servent dans le cursus d'un étudiant pour comprendre les fondements, les diagrammes, les algorithmes, la construction de grammaire etc.
    OK, je ne savais pas... Mais je reitere que je n'en vois pas tres bien l'utilite, a moins de former de futurs chercheurs en info....

    Et quand je vois des questions ou des "reponses" sur les forums, je me demande si on ne melange pas plutot nos "cheres tetes blondes" avec des notions que du coup ils tentent d'appliquer a tort et a travers, au lieu simplement de reflechir... et que donc ce qui a mon avis manque le plus dans la formation est le raisonnement simple, la methode d'expose de ses idees, et leur suite logique de bon sens....


    Mais je suis vieux jeu
    "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

  8. #8
    Expert éminent
    Avatar de Jedai
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2003
    Messages
    6 245
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2003
    Messages : 6 245
    Points : 8 586
    Points
    8 586
    Par défaut
    Citation Envoyé par souviron34 Voir le message
    Et quand je vois des questions ou des "reponses" sur les forums, je me demande si on ne melange pas plutot nos "cheres tetes blondes" avec des notions que du coup ils tentent d'appliquer a tort et a travers, au lieu simplement de reflechir... et que donc ce qui a mon avis manque le plus dans la formation est le raisonnement simple, la methode d'expose de ses idees, et leur suite logique de bon sens....
    T'es marrant toi ! C'est ce qui est le plus difficile à enseigner, si même ça peut s'enseigner... Tu veux donner un cours de "bon sens" à des étudiants ? Je te souhaite bon courage.

    Les matières enseignées sont souvent choisies, non pour leur utilité immédiate mais pour leur effet formateur et justement le fait que leur pratique nécessite d'entraîner ce "bon sens" et ce raisonnement logique de base dont tu parles.
    Bon évidemment quand tu vois des gugusses trainer sur le forum en demandant un programme tout fait ou la solution de leur équation ou... tu te dis que ça passe au-dessus de la tête de certains.

    --
    Jedaï

  9. #9
    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
    je ne te (ou vous, les profs) met pas en cause...

    Ce que je dis depuis tout a l'heure, c'est que je ne suis pas sur qu'apprendre la theorie des graphes ou les automates ou tout autre chose "un tantinet complexe" donne une notion de ce qu'est le bon sens....

    C'est pour ca que je parlais des maths "de seconde" (en France). Meme sur les principes d'algorithmes ou d'algorithmie, de preuve, etc..

    Je pense qu'il nous serait a tous tres utile d'avoir des jeunes sachant simplement mettre sur papier leurs idees dans le bon ordre, en francais, lorsqu'on leur soumet un petit probleme...

    Et que ce serait sans doute un (grand) pas vers des gens censes..

    Bon, ceci etant dit, je suis d'accord avec vous deux.. Je me fais un peu l'avocat du diable, mais il faut dire aussi que j'en ai un peu m.rre de voir des gens declarer "cette technique est la solution", et que leur code soit aussi peu maintenanble ou lisible (voir plus), PARCE QUE le bon sens n'etait pas la, ni la "logique" (avec ma definition ) ... Mais comme je disais, je suis vieux jeu
    "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

  10. #10
    Inactif  
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    1 958
    Détails du profil
    Informations personnelles :
    Âge : 58
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 1 958
    Points : 2 467
    Points
    2 467
    Par défaut
    Citation Envoyé par souviron34 Voir le message
    je ne te (ou vous, les profs) met pas en cause...
    Je ne l'avais pas pris ainsi tu as raison sur le point aussi que ce qui leur manque c'est d'exprimer clairement leurs idées. C'est pour cela qu'on leur enseigne tôt les principes de la logique et des outils pour schématiser les problèmes. Une grammaire ce n'est pas nécessaire qu'aux chercheurs, pas plus que savoir comprendre un automate ou être capable de reconnaître une tautologie. Et on cumule ça avec un cours de GL dès le premier cours de programmation. Pendant longtemps ça n'était pas fait et ça a donné des cours délirants de GL complètement théorique.

    Mais en tout cas, l'enseignement a beaucoup évolué depuis que moi je suis passé dedans (DEUG MIAS en 93). Je suppose donc que par rapport à toi c'est encore plus flagrant.

  11. #11
    Expert éminent
    Avatar de Jedai
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2003
    Messages
    6 245
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2003
    Messages : 6 245
    Points : 8 586
    Points
    8 586
    Par défaut
    Citation Envoyé par souviron34 Voir le message
    C'est pour ca que je parlais des maths "de seconde" (en France). Meme sur les principes d'algorithmes ou d'algorithmie, de preuve, etc..

    Je pense qu'il nous serait a tous tres utile d'avoir des jeunes sachant simplement mettre sur papier leurs idees dans le bon ordre, en francais, lorsqu'on leur soumet un petit probleme...

    Et que ce serait sans doute un (grand) pas vers des gens censes..
    Je suis tout à fait d'accord avec ça, le problème c'est que ça ne marche pas, on a de plus en plus de mal à obtenir des gens "censés" selon tes critères en fin de lycée : trop peu sont capables de "lire un énoncé" même simple. Quelle qu'en soit la cause (et l'enseignement au collège/lycée n'a pas tant dévié par rapport à ton époque), les résultats ne sont pas au rendez-vous.

    --
    Jedaï

  12. #12
    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 Garulfo Voir le message
    Je suppose donc que par rapport à toi c'est encore plus flagrant.


    "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

Discussions similaires

  1. Quelles sont les compétences à avoir pour devenir un bon graphiste ?
    Par sidahmed dans le forum Webdesign & Ergonomie
    Réponses: 6
    Dernier message: 05/10/2007, 10h31
  2. Quel parcours pour devenir un très bon web designer ?
    Par pdtor dans le forum Webdesign & Ergonomie
    Réponses: 2
    Dernier message: 31/01/2007, 09h54
  3. Réponses: 2
    Dernier message: 03/08/2006, 22h53
  4. [DEBUTANT]modifier pour devenir incrémentant
    Par tripper.dim dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 16/05/2006, 14h24
  5. [Formation] Aide pour devenir webmaster ?
    Par cool80 dans le forum Etudes
    Réponses: 4
    Dernier message: 02/12/2005, 14h19

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