initiation programmation
Répondre à la discussion
Affichage des résultats 1 à 27 sur 27

initiation programmation



  1. #1
    mathier

    initiation programmation


    ------

    bonjour à tous,
    je souhaiterais avoir qq avis/conseils .
    Je voudrais m'initier à la programmation mais essayer de faire cela de façon à être utile si jamais je reprends des études d'info ou si c'est un plus pour un boulot quelconque : je n'en ai jamais fait.
    Puis je commencer par la langage java?
    j'hésite avec le C++

    PS: pour info, je viens de voir seul comment on réalisait des pages web en utilisant du XHTML et du CSS.

    merci

    -----

  2. #2
    Jack
    Modérateur

    Re : initiation programmation

    Ce sont 2 langages objet "généralistes". Le C++ a la réputation d'être plus compliqué, mais le java a ses subtilité aussi.
    Le C++ s'exécute nativement sur la machine, ce qui le rend un peu plus rapide que java qui a besoin d'une machine virtuelle.
    Le C++ permet de faire de la programmation système, ce à quoi java n'est pas destiné.

    Tout dépend donc de ce que tu veux faire.

    Un bon site pour apprendre l'un ou l'autre:
    http://www.siteduzero.com/

    Un autre:
    http://general.developpez.com/cours/

    A+

  3. #3
    mathier

    Re : initiation programmation

    bonjour
    merci pour les infos
    je bosse actuellement sur les tutoriels du site du zero.
    ma situation est la suivante: je suis salarié mais pas du tout dans le domaine de l'info même si je suis amené à l'utiliser (en tant que simple utilisateur)
    je souhaite me former à la rentrée de septembre à distance avec le cnam tout en continuant mon job
    j'aimerais réussir dans qq années pouvoir postuler pour un travail dans l'info
    mais je n'ai pas non plus trop conscience des besoins pro dans le domaine:
    j'ai vu qu'il avait une licence d'info et apparemment java est privilégié
    il y a aussi une formation d'analyste programmeur (là je pense qu'il faut maitriser plusieurs langages)

  4. #4
    Jack
    Modérateur

    Re : initiation programmation

    les domaines couverts par l'info sont tellement nombreux qu'il est difficile de te répondre. Tu veux faire du développement web, de l'embarqué, de l'info de gestion, etc.?

    Chaque domaine possède une formation spécifique. Certaines formations sont plus généralistes. renseigne-toi auprès du CNAM, et choisis la voie qui te convient le mieux.
    J'ai moi-même suivi des cours d'info au CNAM, mais j'ai abandonné au bout de 2 ans car c'était trop orienté gestion et ça ne m'attire pas trop. Je me suis redirigé vers l'automatique, pour revenir plus tard à l'info

    Renseigne-toi donc au maximum avant de t'embarquer dans des années de galère.

    A+

  5. A voir en vidéo sur Futura
  6. #5
    mathier

    Re : initiation programmation

    ok un fourm a lieu en septembre avant d'être inscrit, je serai vigilant.

    juste qq infos puisque tu as déjà "gouté" au CNAM

    à ton avis pour valider en foad une licence d'info il faut 3 ans ou plus ?

    c'est la durée qui me fait peur , s'il faut 5 ans !!!!

    merci

  7. #6
    Jack
    Modérateur

    Re : initiation programmation

    je te réponds en mp si tu veux bien, car ça n'a plus trop rapport avec l'info.

    A+

  8. #7
    Dlzlogic

    Re : initiation programmation

    Bonjour,
    Je vais aussi apporter mon avis, mais c'est surtout sur l'aspect "informatique".
    Ce qui est important et difficile en informatique, c'est la tournure d'esprit, savoir ce qu'il faut faire, comment et pourquoi faire cela comme ça etc.
    Le langage en lui-même ne me parait qu'un détail. C'est comme pour les langues étrangères, si vous comptez aller en Espagne, vous n'allez pas apprendre l'Italien. Par contre, si vous avez de l'oreille, de la mémoire, lorsque vous aurez aurez appris 3 langues, la quatrième ne sera plus qu'une formalité.

    Si vous voulez choisir un langage, puisqu'il faut bien commencer, j'hésiterais entre le VBA et le PHP, avec une préférence pour le PHP.
    Pour de l'apprentissage de la programmation, j'éviterais à tout prix les langages orientés objet, type C++ (sous entendu pas C) ou Java. Personnellement, je pense qu'en informatique il faut savoir et comprendre tout ce qu'on fait. Mais je sais aussi que c'est un gros sujet de discussion.

  9. #8
    Jack
    Modérateur

    Re : initiation programmation

    Ce qui est important et difficile en informatique, c'est la tournure d'esprit, savoir ce qu'il faut faire, comment et pourquoi faire cela comme ça etc.
    Le langage en lui-même ne me parait qu'un détail. C'est comme pour les langues étrangères, si vous comptez aller en Espagne, vous n'allez pas apprendre l'Italien. Par contre, si vous avez de l'oreille, de la mémoire, lorsque vous aurez aurez appris 3 langues, la quatrième ne sera plus qu'une formalité.
    Je suis assez d'accord.

    Si vous voulez choisir un langage, puisqu'il faut bien commencer, j'hésiterais entre le VBA et le PHP, avec une préférence pour le PHP.
    Là, beaucoup moins. C'est assez spécial PHP. D'abord ça ne concerne que le web. Ensuite, ça implique la notion de serveur.

    la programmation orienté objet est incontournable aujourd'hui (d'ailleurs même PHP s'y est mis). Autant faire le saut tout de suite.
    Bien que non spécialiste en java, si j'avais le choix je prendrais java pou faire de l'initiation à l'algorithmique et à la programmation car c'est un langage assez simple à utiliser dans un premier temps et il n'est pas réservé au web comme PHP.

    A+

  10. #9
    ventilopomme

    Re : initiation programmation

    Et puis de toute façon au CNAM , c'est le java qui est utilisé pour les UEs de programmation et le php pour les UE orientés programmation serveur
    exclu à jamais du présent

  11. #10
    Dlzlogic

    Re : initiation programmation

    Bonjour Jack,
    Il est vrai que le PHP est orienté WEB, mais rien n'empêche de l'utiliser exclusivement en local. D'ailleurs, c'est indispensable pour la mise au point. Il a entre autres un avantage important, sa syntaxe est (presque) identique à celle du C/C++.
    De toute façon, c'est un vieux débat. Sur un site, le sujet était "Que conseiller à un débutant ?" Il y a eu une réponse du genre :"Ne pas réinventer la roue" juste après il y a eu une autre réponse du genre : "Je dirai exactement le contraire, un débutant doit réinventer la roue."
    Naturellement je suis de l'avis du second.
    Quant au côté "incontournable" de la programmation objet, ça pourrait faire un sujet possible et qui provoquera beaucoup de réactions. Je ne l'aborderai pas.

  12. #11
    Jack
    Modérateur

    Re : initiation programmation

    Finalement, ça dépendra beaucoup de ce que mathier veut faire par la suite. Si ce n'est que du web, pourquoi pas php.

    Si c'est pour une palette plus large, type info embarquée, il faudra viser plutôt le C ou le C++ par exemple.

    A+

  13. #12
    whoami

    Re : initiation programmation

    Bonjour,

    Avant de penser à la programmation objet, commençons par apprendre les bases "basiques" avec un langage plus ou moins fait pour ça : Pascal (c'était le cas à l'origine de ce langage).

    Il permet d'apprendre toutes les bases, dont les différentes notions de structures de programmation (celles entre autres qui font défaut à celine2, voir http://forums.futura-sciences.com/pr...ile-while.html).

    Une fois cela acquis, il faut penser à regarder du côté des algorithmes basique, dont aucun programmeur, même amateur, ne peut se passer (tris, listes ...).

    On peut alors passer à un autre langage, disposant d'une couche objet. Je conseille généralement de passer au C++, mais Java reste ok (mais attention, contrairement à sa réputation, Java n'est pas un langage aisé) (Pascal a une couche objet, mais j'avoue que je ne l'apprécie pas beaucoup, peut-être par habitude d'autres langages).

    Et ne jamais oublier que le principal est d'apprendre l'algorithmique. Comparativement, l'implémentation dans un langage donné reste presque un détail ("détail" qui peut demander pas mal de travail, selon la maîtrise qu'on a du langage visé).


  14. #13
    bzh_nicolas

    Re : initiation programmation

    J'aurais tendance à dire de ne pas commencer par un langage de script. Notamment parce qu'il sont peu typés, ce qui peu amener à des difficultés plus tard en passant sur un langage fortement typé (style C++ ou java).
    Après commencer directement par un langage objet c'est à voir, pourquoi pas. Du moment que les cours ne sont pas orienté principalement sur l'aspect objet du langage si l'on est débutant.

    A ce titre, le cours de C++ du site du zéro est complet mais s'entend pour une personne qui à déjà de sérieuses connaissances en programmation.
    D'ailleurs il me semble que l'intro du cours C++ du sdz recommande d'avoir déjà effectué le cours de C qui lui aborde les notions de base de programmation.

  15. #14
    mathier

    Re : initiation programmation

    je vais suivre le conseil de Whoami qui me semble sage à savoir je vais essayer le lire un tuto sur le langage Pascal pour acquérir qq bases.
    j'ai trouvé cela http://pascal.developpez.com/cours/ptrau/
    par contre si vous pouviez me donner le nom de l'éditeur et du compilateur à utiliser (notepad++ en éditeur je suppose)
    merci

  16. #15
    Jack
    Modérateur

    Re : initiation programmation

    Citation Envoyé par mathier Voir le message
    je vais suivre le conseil de Whoami qui me semble sage à savoir je vais essayer le lire un tuto sur le langage Pascal pour acquérir qq bases.
    j'ai trouvé cela http://pascal.developpez.com/cours/ptrau/
    par contre si vous pouviez me donner le nom de l'éditeur et du compilateur à utiliser (notepad++ en éditeur je suppose)
    merci
    Bien que je sois un fan du langage Pascal, je me suis mis au C parce que (malheureusement) c'est lui qui s'est imposé, alors que le Pascal a quasiment disparu. Il résiste encore un peu avec delphi, mais pas pour longtemps je pense.

    Bref, je trouve qu'il serait dommage de passer du temps à apprendre un langage certes génial, mais obsolète, alors que le C est syntaxiquement et structurellement très proche et toujours très utilisé aujourd'hui.
    Après, commencer par le C ou le C++? Éternelle question ...

    Concernant l'algo, n'importe quelle langage peu convenir. J'ai bien commencé par le BASIC. Il faut dire qu'à l'époque, on n'avait pas trop le choix des langages sur ordi perso.

    A+

  17. #16
    mathier

    Re : initiation programmation

    et le langage Python vous en pensez quoi ?
    utilisé dans le milieu professionnel?
    merci

  18. #17
    ProgVal

    Re : initiation programmation

    Bonjour,

    J'ai commencé la programmation sur ordinateur avec PHP, puis je suis passé à Python deux ans plus tard. La semaine dernière, j'avais essayé de me mettre au C++, mais j'ai abandonné, pour finalement me lancer, mardi, dans la programmation pour Android (en Java).
    Ça tombe bien, puisque c'est justement les langages auxquels tu t'intéresses.

    Le PHP est certes très facile et très abordable, mais il te donnera d'assez mauvaises habitudes, notamment pour ce qui est de nommer les fonctions et variables (la bibliothèque standard elle-même est dépourvue de toute uniformité).
    Lorsque j'ai appris le Python, j'ai pû assez vite commencer à faire des vrais programmes. C'était probablement dû à mon expérience déjà acquise, mais je pense quand même que les bases de la programmation en Python peuvent être acquises très vite.
    Pour le C++, j'ai vraiment eu du mal, bien que j'en avais déjà une toute petite expérience. Rien que la compilation, j'ai eu du mal à assimiler (écrire ses Makefiles, édition des liens, ...).
    Et enfin, Java. Je pense que le fait que j'utilise l'API d'Android (une "extension" de Java pour programmer pour Android) y est pour quelque chose, mais j'ai quand même été très surpris de la vitesse à laquelle j'ai pû commencer à programmer. J'ai commencé mardi matin, et j'avais déjà une application digne de ce nom hier (jeudi).

    Jusqu'à présent, je critiquais souvent Java, mais Android m'a réconcilié avec. L'API offerte est vraiment un chef-d'œuvre, et le plugin pour Eclipse (l'environnement de développement) est bien intégré et fonctionnel.

    En conclusion, je pense que pour débuter, Python est un assez bon choix. Je pense que Java serait également un bon choix, que ce soit ou non pour Android.

    Enfin, pour ta dernière question : oui, Python est utilisé dans le milieu professionel.
    Par exemple, le framework web Django (c'est, grosso-modo, une extension des fonctionnalités de Python) est assez présent dans ce milieu et est, à mon avis, bien meilleur que PHP.

    ProgVal

  19. #18
    whoami

    Re : initiation programmation

    Bonjour,

    Ce n'est pour apprendre le Pascal en soi que je le propose, mais parce qu'il est parfaitement bien adapté à l'apprentissage de la programmation, ceci étant dû à son typage fort, contrairement au C qui est beaucoup trop laxiste pour les débutants (regardez tous les problèmes basiques engendrés par le C (et/ou le C++ et autres) pour les débutants, parce qu'entre autres, le langage accepte trop de conversions implicites).

    Et il est un fait qu'il faut éviter de commencer par les langages de scripts, les débutants ayant par suite énormément de peine à s'adapter aux autres langages (par exemple, combien de fois avez-vu des débutants étant passés par là demander "Pourquoi ne puis-je pas utiliser un nom de variable créé lors de l'exécution ?").

  20. #19
    Dlzlogic

    Re : initiation programmation

    Bonjour ProgVal,
    Je me demande si vous ne vous trompez pas de sujet. Je pense que la question n'est de savoir si tel langage ou tel autre est plus ou moins facile à aborder et à apprendre, mais quel langage choisir pour s'initier à la programmation.
    La réflexion que vous faites sur la difficulté que vous avez eu avec le C++ laisse entendre que vous avez bien appris des langages, mais peut-être pas encore intégré toutes les bases nécessaires. Il est tout à fait normal et indispensable de savoir ce qu'est un MakeFile.
    Il est indispensable de comprendre la différence entre un langage compilé et un langage interprété. etc.
    Je ne pense pas qu'il existe un seul langage qui n'est pas utilisé dans la vie professionnelle. Mais en fonctions de toute sorte de chose, tel ou tel langage sera utilisé, mais avant il faut s'initier à la programmation.

    A ma connaissance, le Java n'a pas très bonne presse dans la vie professionnelle. Je pense que son intérêt principal est que son utilisation ne dépend pas de la plateforme. Et, à mon avis, il a le gros défaut d'avoir une syntaxe particulière.

  21. #20
    Jack
    Modérateur

    Re : initiation programmation

    Ce n'est pour apprendre le Pascal en soi que je le propose, mais parce qu'il est parfaitement bien adapté à l'apprentissage de la programmation
    oui, je comprends bien ce que tu veux dire, mais ça implique néanmoins l'apprentissage du pascal

    ceci étant dû à son typage fort, contrairement au C qui est beaucoup trop laxiste pour les débutants (regardez tous les problèmes basiques engendrés par le C (et/ou le C++ et autres)
    C++ est très exigent au niveau du typage. Çà n'a plus grand chose à voir avec le C.

    Bon, je crois qu'on pourrait discourir longtemps sur le sujet, sachany qu'il n'y a pas de meilleur langage dans l'absolu. Pour ma part, je trouve que commencer par C/C++, java, python par exemple n'est pas un mauvais choix et peut réaliser directement un investissement pour l'avenir.

    A+

  22. #21
    whoami

    Re : initiation programmation

    Bonjour,

    Bof. De toute manière, apprendre le Pascal revient pratiquement à apprendre un pseudo-langage de description d'algorithmes, qu'il est nécessaire de connaître, ce qui évite de s'en inventer un, alors pourquoi s'en passer (je ne parle pas de le maîtriser totalement, notamment sa couche objet, mais seulement pour faire ses premiers pas, pour lesquels il suffit de comprendre quelques structures de programmation).

  23. #22
    Dlzlogic

    Re : initiation programmation

    A propos de la distinction C <==> C++,
    Je sait très bien que mon avis n'est pas partagé par tout le monde, mais rien ne m'interdit de le donner.
    Le C++ c'est d'abord du C. En gros et en simplifiant, le C++ a rajouté la notion de "class", ce qui implique les nouveaux mots clé new et delete.
    Parallèlement, on a créé des classes toutes faites pour des choses particulières, comme iostream. Lorsque j'ai eu la mise à jour C++ pour mon compilateur, j'ai fait des essais avec cin, cout et j'avoue que je n'ai pas été convaincu, donc, j'utilise toujours fprintf, fread etc.

    Lorsque je dois faire des listes. Soit elle doivent être très performantes, alors je fais des listes chainées à l'ancienne mode, soit au contraire, ce sont des petites listes provisoires, alors j'utilise la classe TList.
    Je tiens à expliquer cela pour dire que le langage en lui-même c'est vraiment pas important. A lire certains forum, on se demande si les gens font du développement ou si ils font du C++.

    A titre d'exemple, en 1986 a été écrit un programme en Fortran sur gros système. Ce programme a été transposé en divers Basics, en C sous Unix, en C/C++ sous Windows, et maintenant il tourne aussi, depuis 10 ans, en PHP sur mon site. Sauf quelques très petites modifications de syntaxe, c'est toujours le même.

    PS. Je n'ai pas fait de Pascal. Mais j'ai eu l'occasion d'écrire un utilitaire, l'une de mes sources était un module écrit en Pascal, je ne suis pas plus malin qu'un autre, mais cela ne m'a pas posé de problème.
    Dernière modification par Dlzlogic ; 22/07/2011 à 17h09.

  24. #23
    bzh_nicolas

    Re : initiation programmation

    Le problème du C++ (ou l'avantage ça dépend des gens) est qu'il ne s'agit pas d'un langage "pur objet".
    On peut très bien écrire un programme en C++ sans utiliser une seule fois les concepts de programmation orientée objet (et cela même en utilisant des classes prédéfinies comme iostream ou string). Mais dans ce cas, utiliser le C++ n'a pas grand intérêt (à part l'utilisation de certaines classes qui détachent un peu le programmeur de l'aspect "bas niveau de C), autant utiliser du C.

  25. #24
    polo974

    Re : initiation programmation

    Allez, dans l'ordre (de quoi ? ):
    sh
    python
    C++
    C
    mais en fait, le problème n'est pas seulement le langage, mais aussi la disponibilité des objets, librairies ou carrément programmes exploitables...

    sh pour lancer des gros trucs (des programmes du système) et finalement ne faire que du contrôle (while..., if..., etc..)
    c'est chiant comme syntaxe, un peu préhistorique, avouons-le, mais parfois on fait des miracles avec.

    Python, on affine, c'est rapide à écrire, ça permet de gérer plus finement que le sh (allez faire une arborescence en sh (sans passer par la création dans le système de fichier)... )
    il y a plein d'objets, il y a des passerelles vers les librairies C, C++, mais il y a aussi des finesses...

    C++, arghh, il faut compiler, donc se taper soit des scripts soit un makefile (oups encore un langage à apprendre...)
    Puissant et très utilisé (et en plus on peut faire du C dedans )

    C, compilé aussi
    très raz des paquerettes, mais fait comprendre plein de choses et...
    LE langage de l'électronicien ...
    Pour taper dans le système.

    Ensuite, il y a un autre aspect qui n'est pas encore abordé:
    le traitement séquentiel vs le traitement évènementiel.
    Tous les langages le permettent, mais le programmeur n'appréhende pas toujours le concept.
    Jusqu'ici tout va bien...

  26. #25
    Dlzlogic

    Re : initiation programmation

    Bonjour Nicolas,
    Décidément nous n'avons la même vision de l'utilisation des langages informatiques.
    Je ne cherche pas à "faire du C" ou "faire du C++" ou je ne sais quoi, j'emploie un langage existant pour me permettre de "dialoguer" avec la machine.
    Mais dans ce cas, utiliser le C++ n'a pas grand intérêt (à part l'utilisation de certaines classes qui détachent un peu le programmeur de l'aspect "bas niveau de C), autant utiliser du C.
    Cette dernière phrase est très significative. Pour une raison que j'ignore vous avez choisi de "Faire du C++" ce qui implique "donc à l'exclusion du C", moi, j'ai choisi de développer, quel que soit le nom du langage.
    Autrement dit on ne parle pas de la même chose.

  27. #26
    bzh_nicolas

    Re : initiation programmation

    Citation Envoyé par Dlzlogic Voir le message
    Bonjour Nicolas,
    Décidément nous n'avons la même vision de l'utilisation des langages informatiques.
    Je ne cherche pas à "faire du C" ou "faire du C++" ou je ne sais quoi, j'emploie un langage existant pour me permettre de "dialoguer" avec la machine.
    Cette dernière phrase est très significative. Pour une raison que j'ignore vous avez choisi de "Faire du C++" ce qui implique "donc à l'exclusion du C", moi, j'ai choisi de développer, quel que soit le nom du langage.
    Autrement dit on ne parle pas de la même chose.
    Je ne parlais pas de "faire du C++" juste pour "faire du C++", mais d'utiliser un langage adapté au besoin.
    Le C++ est un langage objet, si on ne fait pas de POO, inutile d'utiliser un langage objet en l'utilisant comme un langage procédural en appelant de ci de là un objet qui lui est propre. Cela ne fera que générer un programme plus lent et plus gourmand en mémoire.
    C'est d'ailleurs ce que vous avez fait puisque vous dites que vous êtes revenu à l'utilisation des fonctions C.

    P.S. Le C++ ne se borne pas à rajouter la notion de classe, c'est un langage objet.
    L'intérêt du C++ n'est donc pas dans le remplacement de printf par cout (etc...) mais dans la possibilité de faire de la POO, ce qui est parfois bien utile. Après on adhère (et/ou on a besoin) ou pas de la POO mais ça c'est une autre histoire.

  28. #27
    Dlzlogic

    Re : initiation programmation

    Mais oui, j'utilise les notions d'objet, mais pas systématiquement.
    Bien sûr je citais iostream titre d'exemple.
    Je tenais à préciser que, pour moi, C et C++ n'étaient pas exclusifs.
    Petit exemple où les notions d'objet poussées au maximum, comme c'est le cas, me gênent.
    Pour avoir les coordonnées X et Y d'un point, la fonction s'appelle Centroide. C'est à dire que c'est la même pour une ligne, une zone etc.

    Je crois que malheureusement, c'est un débat stérile.

Discussions similaires

  1. Initiation de la subduction?
    Par Pfhoryan dans le forum Géologie et Catastrophes naturelles
    Réponses: 2
    Dernier message: 21/06/2011, 20h08
  2. initiation à la programmation sur Matlab
    Par inviteff6d30b8 dans le forum Mathématiques du supérieur
    Réponses: 0
    Dernier message: 13/10/2010, 17h37
  3. Initiation
    Par invitef29ecfa6 dans le forum Physique
    Réponses: 9
    Dernier message: 01/01/2006, 17h22
  4. initiation à l'informatique.
    Par invite28846bbe dans le forum Logiciel - Software - Open Source
    Réponses: 6
    Dernier message: 23/05/2005, 01h17
  5. Initiation au Webdesign !!!
    Par invitec81e728d dans le forum Internet - Réseau - Sécurité générale
    Réponses: 1
    Dernier message: 22/02/2004, 13h41