• # Inform, objc et python

    Posté par . En réponse au journal Commencer à programmer ?. Évalué à 3.

    parmi les nombreux conseils que je lis, cela me rappelle lorsque l'on veut débuter la guitare électrique, et que l'on entend : " avant d'attaquer la guitare électrique fais d'abord de la guitare classique, c'est la base de tout, et puis ensuite de la basse, c'est plus facile dans un premier temps" (ou vice versa), quand on n'entend pas aussi "fais du piano en premier, c'est universel... etc."

    c'est sans doute pareil pour la programmation, on arrive souvent dans un cercle vicieux (ou vertueux, si on considère que l'on pourra ainsi connaitre une dizaine de langages ;) ), et c'est vrai que la meilleure réponse dépend certainement de ce que tu veux faire, et aussi de tes capacités.

    Si tu es doué et as besoin de coder des applications où la rapidité est primordiale, alors va y direct en objectif C ou en C++ l'avantage du C++ est qu'il est plus "répandu". Par contre objectif C me semble plus élégant, et ceux qui connaissent bien le préfèrent au C++ généralement. Cela te marginalisera sans doute un peu, mais tu pourras coder pour Mac OSX et pour GNUstep. Et même ailleurs sans doute également. Tu dois connaitre le site si tu t'intéresses à la question, mais voici un lien vers une vidéo présentant la facilité de programmation avec Gorm / Project Center / objc : http://www.gnustep.org/experience/DevelopmentDemonstration.html(...) (valable également pour xcode et mac os x)
    De plus autre avantage à cela, Apple fournit bcp de doc gratuites sur son site, ainsi que tous les outils de développement. Le fait que GNUstep existe permet de savoir que l'on ne sera jamais inféodé à Apple si on veut changer d'air un jour.
    Par contre sur bcp de tutoriels que l'on trouve, ils semblent considérer comme acquit que tu connais déjà bien le C... (on en revient à mon introduction).

    J'avais essayé le C il y a qques années, mais j'ai trouvé cela trop dur par rapport à mes capacités et l'investissement que je voulais mettre dedans, du coup j'ai arrêté. Mais mon intérêt grandissant pour objc me fais me replonger un peu dedans. Le problème avec C ce sont les déclarations etc, c'est un peu la galère, si bien que dans un premier temps on ne peut pas faire grand chose d'impressionnant avec et cela rebute un peu.

    Du coup, si on n'a pas besoin spécialement d'un langage de bas niveau, rapide et optimisé, il est possible de débuter en programmation avec python. Bon, bcp on déjà conseillé cela, et je pense que tout a été dit (y compris le lien vers l'excellent cours de python). Moi qui suis pourtant un grand débutant en programmation, en suivant ce cours et du fait de la facilité de ce langage de haut niveau orienté objet, j'ai pu créer très rapidement et très facilement de petites applications qui correspondaient vraiment à mes besoins. Je pense que cela permet de mettre un pied à l'étrier sans être rebuté, quitte à étudier ensuite le C et ses dérivés si besoin est (attention, je ne dis pas que python est moins bien que C, mais que les 2 sont pour des objectifs différents : il faut savoir utiliser le bon outil au bon moment).

    Je suis ouvert à toutes les propositions


    enfin, je voulais aussi parler du langage inform, dédié à la création de jeux d'aventures textuels. C'est un langage simple, mais qui est fait uniquement pour ce but, même si certains ont pu programmer des choses différentes avec (petits hacks pour la machine virtuelle qui va avec). Il y a des déclarations, cela permet d'avoir une introductions aux procédures, boucles etc dans une forme proche du C tout en obtenant rapidement quelque chose d'utilisable (c'est gratifiant quand on débute, et pousse à aller plus loin). C'est un langage idéal pour les débutants, mais bien entendu limité pour son domaine d'utilisation :
    http://www.inform-fiction.org/(...)
    http://ifiction.free.fr/(...) (en français)

    Only wimps use tape backup: real men just upload their important stuff on megaupload, and let the rest of the world ~~mirror~~ link to it