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 :

Python ou Ruby ?


Sujet :

Langages de programmation

  1. #1
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2004
    Messages
    84
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2004
    Messages : 84
    Points : 68
    Points
    68
    Par défaut Python ou Ruby ?
    Bonjour !

    J'apprends le Python depuis quelques temps mais j'entends également parler de Ruby, présenté comme similaire à Python et plus récent...

    Python me plait beaucoup étant à la fois complet (interfaces graphiques grâce à Tkinter, développement réseau) et très simple d'apprentissage et d'utilisation ! Mais qu'en est-il de Ruby ?

    Je voudrais donc savoir quels sont les avantages, les inconvénients, et les similitudes de ces deux langages, tant au niveau de la communauté, de la propreté du code (bien que relative au développeur évidemment), de la simplicité, de la rapidité de développement, de l'approche objet, des librairies standard proposées, etc...

    Merci d'avance pour vos réponses !

  2. #2
    Membre chevronné
    Avatar de Woufeil
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    1 076
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 1 076
    Points : 2 004
    Points
    2 004
    Par défaut
    Je peux répondre au moins à une question : la clarté du code. Niveau indentation, c'est facile : un code Python mal indenté est un code qui ne fonctionne pas, ce qui n'est pas le cas pour Ruby. Niveau clarté en elle même, je trouve le Python plus clair, mais ce n'est qu'une question d'appréciation.

    Niveau communauté, celle de Python est plus grosse, mais celle de Ruby commence tout de même à grandir. Les deux sont je pense très accueillantes.

    Ruby est relativement sumple d'apprentissage et pemet à peu près les mêmes choses que Python. Le gros avantage de Ruby, c'est Ruby on Rails.

    Enfin, ce sont deux langages orientés objets qui supportent également plusieurs paradigmes.

    En fait, ces deux langages sont vraiment très proches. Ruby on Rails est vraiment sympa, Python est très riche niveau librairie et est de plus en plus utilisé. A toi de voir

    N'hésite pas à demander un complément d'infomation si nécéssaire.

  3. #3
    Expert éminent sénior

    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    19 647
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2004
    Messages : 19 647
    Points : 32 889
    Points
    32 889
    Par défaut
    Les ressources de developpez.com sur ruby
    http://ruby.developpez.com/faq/
    http://ruby.developpez.com/

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    366
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 366
    Points : 440
    Points
    440
    Par défaut
    Je ne suis pas expert ni ruby, ni python mais de l experience que j en ai je te conseillerai vivement ruby que l on peut considerer comme un python + expression reguliere a la perl

    Effectivement, la communaute ruby est moins etendue (en europe en tout cas), mais ruby commence a faire son petit bonhomme de chemin.

    De sucroit, ruby permet la manipulation de blocks d instruction (equivalent de fonctions de callback) assez facilement.

    Enfin, pour la clarte je priviligierais la encore ruby pour sa concision (de plus a mon avis l indentation a la python est loin d etre un avantage : c est une obligation qui ne met pas assez en evidence la fin des blocks d instruction ... et pour peu que les tabulations s en melent ...)

  5. #5
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2005
    Messages
    275
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2005
    Messages : 275
    Points : 493
    Points
    493
    Par défaut
    Enfin, pour la clarte je priviligierais la encore ruby pour sa concision (de plus a mon avis l indentation a la python est loin d etre un avantage : c est une obligation qui ne met pas assez en evidence la fin des blocks d instruction ... et pour peu que les tabulations s en melent ...)
    Entièrement d'accord. Je cherchais un langage de script évolué pour faire du traitement de fichiers et me suis donc renseigné de loin sur les 2 langages qui me semblent équivalents tant par leurs possibilités que par la facilité d'apprentissage, par contre l'indentation de Python a été le critère éliminatoire pour moi!

  6. #6
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2004
    Messages
    84
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2004
    Messages : 84
    Points : 68
    Points
    68
    Par défaut
    Tout d'abord merci pour vos réponses !

    J'avoue que ce qui me tente dans ces langages c'est la simplicité et la panoplie de librairies fournies en standard, pour l'IHM en particulier (assez compliquée à implémenter dans la plupart des autres langages... ça rejoint un peu la question de la simplicité)... Attention ! Je ne cherche pas un nouveau langage pour une utilisation spécifique (réseau, automates, manipulations de chaines,...), c'est juste par curiosité et pour développer des applis lourdes quelconques plus simplement.

    Ruby m'intéresse pour son aspect "tout est objet", qui compense un peu le manque de rigueur de Python dans ce domaine... En revanche il me simple un poil plus compliqué que Python, et la philosophie "plusieurs façons d'arriver à un résultat" m'attire moins... Et il me semble aussi paradoxalement que plus un langage est puissant plus il autorise des incohérences et un manque de rigueur qui ne causent pas d'erreur mais font un code "sale" (encore une fois je sais qu'il n'appartient qu'au développeur de faire attention), et Ruby me semble sur ce point être un champion (pas de parenthèses obligatoires pour les fonctions acceptant un seul paramètre, on peut rajouter des paramètres à l'appel d'une fonction même si sa définition n'en prend pas, tout ça sans poser de souci, ça laisse un code trompeur...).

    Mais concernant la syntaxe, le "end" de Ruby me plait.

    Je vais essayer de me mettre aux deux et je m'accrocherai au langage qui m'aura le plus convaincu...

    Merci pour vos éclaircissements !

Discussions similaires

  1. vulnérabilité Python et Ruby aux attaques par timing
    Par eyquem dans le forum Général Python
    Réponses: 1
    Dernier message: 19/07/2010, 16h45
  2. Réponses: 10
    Dernier message: 17/02/2010, 23h06
  3. Java, Python ou Ruby ?
    Par Mindiell dans le forum Langages de programmation
    Réponses: 4
    Dernier message: 22/06/2009, 22h03
  4. Python ou Ruby ?
    Par aandre2937 dans le forum Général Python
    Réponses: 23
    Dernier message: 26/05/2009, 00h23
  5. Python ou Ruby pour débuter ?
    Par TallyHo dans le forum Débuter
    Réponses: 17
    Dernier message: 02/08/2007, 23h32

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