Liens connexes

Dépêche modérée par

Dépêche éditée par

: Ruby 1.9.0 est sorti pour Noël

Posté par Anne au Nimes. Modéré le 27 décembre 2007.
0
Les tests des pré-versions de cette année ont laissé présager des performances accrues (jusqu'a 10 fois plus rapide que la 1.8.5) grâce à la nouvelle machine virtuelle. Ce n'est pas encore Ruby 2.0, qui sera la prochaine version majeure stable. De nombreuses nouvelles fonctionnalités sont encore expérimentales et peuvent disparaître d'ici à la 2.0. Cette sortie en version de développement a été faite le jour de Noël, une fois n'est pas coutume (1.8.2 en 2004, 1.6.6 en 2001, 1.6.2 en 2000, 1.2 en 1998).

Parmi les nouveautés, citons le nouveau moteur d’expression rationnelles Oniguruma, la gestion de m17n (Multilingualization, notamment une meilleure gestion d'Unicode), l'intégration de RubyGems et de Rake et le remplacement du module CSV par FasterCSV.

Ruby est un langage connu dans le monde des serveurs pour son framework Ruby on Rails ou bien les interpréteurs Ruby dans Java permettant un développement plus rapide. Mais il possède également des bindings pour de nombreuses bibliothèques, dont les plus courantes dans le monde du libre (GTK/Gnome, QT/KDE, Cairo, OpenGL, XML, Curl, SDL, etc.), le rendant également utile pour le développement d'applications de bureau, de jeux, etc.

Un projet récent, Gosu permet par exemple de développer des jeux 2D complets mêlant des effets 3D en quelques centaines de lignes de Ruby, utilisant le moteur physique Chipmunk, l'accélération OpenGL et la puissance, concision et clarté du langage Ruby.

> Lire la suite (83 commentaires, moyenne: 1,7).   [dépêche : 0 caractères]

Ruby est un langage intéressant pour le prototypage. Sa syntaxe concise permet un developpement rapide d'application, on peut ensuite convertir les parties les plus gourmandes en C afin d'obtenir de meilleures performances.

Cette discussion est archivée, il n'est plus possible de laisser des commentaires.

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.

Version pour tout le monde ou uniquement pour les developpeur de Ruby?

Posté par reno () le 27/12/2007 à 12:42. (lien). Évalué à 4.

Je n'ai pas bien compris si la 1.9.0 est une version de developpement juste utile pour les developpeurs de Ruby (comme le kernel Linux 2.5.) ou si cette branche est prévu d'être utilisé par tout le monde..

troll de noel

Posté par lordcow () le 28/12/2007 à 11:15. (lien). Évalué à 1.

Je me suis toujours dis que Ruby faisait double emploi avec python.

Je suis un grand amateur de python, langage à bibliothèque très fournie et à multiple paradigmes, qui permet de décrire des choses assez compliquées en restant très concis, tout en gardant une clarté à le relecture très importante.

Quels sont pour vous les gros points fort de ruby qui pourraient me motiver a regarder ça de plus près?

--
Je est un autre.

Python

Posté par Julien (page perso, ) le 29/12/2007 à 13:58. (lien). Évalué à 1.

Grand amateur de Python également (j'en fais tous les jours au boulot), j'ai également fait un peu de Ruby.

Quelques critiques à propos de Ruby (je n'ai pas testé la version 1.9):
- C'est très lent (mais cette critique semble tomber à l'eau avec la version 1.9). Il est vrai que la vitesse d'exécution n'est pas primordiale dans ce genre de langage (Perl, Python, Ruby, ...) ... mais il y a des limites.
- Pas de support de l'Unicode, qui est pour moi _le_ plus gros problème de Ruby.
- J'ai retrouvé beaucoup de truc que j'aimais pas en Perl (notamment les variables @, ...), le langage est un peu "fouilli".
- Pas de multihéritage (mais on dirait que c'est le truc du moment à proscrire..)

Quelques avantages de Python:
- La librairie de base est bien plus fournie que celle de Ruby.
- Langage clair, propre et simple, et surtout qui ne change pas à chaque version (à l'exception de Python 3000), comme en Perl ou PHP. Je suis presque sur qu'un programme écrit il y a 10 ans tourne sans modifications sur les WM actuelles.
- La "communauté" Python met en place des petits "standard" (les PEP) légers comme DBAPI, WSGI, ...
- "There is only one way to do it"

Et puis on trouve vraiment d'excellentes libraires comme Pylons, SQLAlchemy, Genshi, ... on a vraiment plus de choix qu'en Ruby.

Les principales critiques que j'entends toujours à propos de Python:
- L'indentation: on aime ou on aime pas..
- Il faut mettre "self" partout: oui, "explicit is better than implicit". Je trouve ça plus lisible d'accéder à une variable (ou méthode) de l'objet via "self.x" plutot que betement "x"
- Il n'y a pas de support des variables privées: oui et non. On peut créer des variables à peu près privée avec __foo, mais la philosophie de Python est plutot "si vous ne voulez pas accéder à une variable privée, n'y accéder pas et puis c'est tout". De plus ce n'est, pour moi, pas le plus important en POO. Quand on regarde la majorité des programmes Java, on a en général un setVariable() et un getVariable() qui contiennent en général une ligne avec une assignation pour le premier et un return pour le 2ème .. De plus Python a un concept de "properties" (ala C#) qui permet de faire ça de manière élégante.

Pour finir, je me demande aussi si Ruby aurait autant de succès aujourd'hui si Ruby on Rails n'avait pas existé (... d'ailleurs je me demande toujours comment ce framework a autant de succès tant il est inintéressant et mal foutu ...)

Langages ne sont plus comparables en tant que tel

Posté par Bungee Tux () le 01/01/2008 à 00:41. (lien). Évalué à 1.

On ne peut plus comparer les langages comme avant, tant l'ecosysteme qui les entoure devient important.

Tous les arguments en faveur de ruby tombent les uns apres les autres si on tient compte d'eclipse et des librairies tierces:

- accesseurs verbeux en java , mais c'est généré en 3 clics dans eclipse
- mixin c'est cool, mais variable + generate delegate method dans eclipse marche tres bien en java
- typage laxiste ruby versus completion de code complete en java
- syntaxe legere (a voire) ruby versus correction du code en java

et ainsi de suite.

Quand aux perfs, j'ai un facteur 10 sur le même programme en java et ruby a l'avantage de java.

Rajouter a ca, le fait que java est mille fois mieux loti en librairies tierces

Java 1 / Ruby 0

Revenir en haut de page