Ruby | Mise à jour 08-2014 |
|
Ruby est un langage de script permettant, grâce à l'importation de modules (commande require), d'ajouter de nombreuses capacités au langage de base. Il dispose des fonctions classiques de tout langage : boucles, procédures et fonctions, accès au système de fichiers, accès base de données. Il propose également la programmation objet avec la définition de classes. Toutes les données sont des objets, possédant plusieurs méthodes. Les données, non typées, sont de différentes natures :
L'interpréteur de commande s'appelle irb.bat et se trouve dans le dossier bin de ruby. Au lancement, un certain nombre de modules sont automatiquement intégrés pour réaliser diverses fonctions. On peut introduire directement les instructions dans l'interpréteur mails il est plus pratique de créer un fichier d'extension rb et de le charger par la commande load "x:\\...\\nompgm.rb" ou load "x:/.../nompgm.rb". |
Le programme présente quelques fonctions de manipulation de chaînes.
Manipulation d'un tableau associatif : création et initialisation, mise à jour, lecture et tri.
Création et suppression de répertoires, comptage. Création de fichiers, ajout de lignes, lecture par ligne. Comment ouvrir en mode binaire pour modifier des caractères? Copie de fichier.
Le programme utilise une base sqlite 3. Classiquement, il faut d'abord ouvir un lien avec la base de données (db = SQLite3::Database.open "x:\\...\\bibli.db"). Ensuite, deux méthodes :
Ensuite, il relit les données de plusieurs manières. Certaines chargent toute la table dans un tableau, d'autres lisent ligne par ligne. Chaque ligne lue peut être stockée dans un tableau associatif dont les clés sont les noms de champs de la requête. Pour ceci, inclure l'instruction db.results_as_hash = true. La requête peut contenir des paramètres, passés à la commande execute, soit directement, soit par l'intermédiaire du paramètre bind pour lier le paramètre à la requête. Dans le premier cas, le paramètre est identifié par un ? (ils sont interprétés dans l'ordre des paramètres passés à execute), dans le second par un nom de variable :xxx lié grâce à bind.
Le programme transforme une phrase en "javanais" en intercalant entre une consonne et une voyelle la syllable AV. Si le programme est lancé directement, il demande la saisie de la phrase à transformer (gets pour lire, chomp pour supprimer les blancs inutiles). Sinon, il prend le paramètre reçu. Ensuite, une fonction identifie à l'aide d'expressions régulières les voyelles et les consonnes. Il ne reste plus qu'à insérer AV entre les deux (consonne suivie de voyelle).
Ce programme est un jeu qui utilise le module tk pour créer une interface graphique. Le jeu présente un tableau de 3 fois 3 cases, chacune pouvant être allumée ou éteinte. La distribution de début est aléatoire. Le but du jeu est d'obtenir toutes les cases allumées, sauf la centrale. Pour ceci il faut, en cliquant sur une case, inverser les couleurs de ses voisines, sachant que toutes ne possèdent pas les mêmes règles. Ecran du jeu: Le programme est constitué d'une classe Cases que l'on instancie avant de lancer la boucle interactive par Tk.mainloop. Tout se pase ensuite à l'intérieur de cette classe. Les 9 cases sont des boutons créés dynamiquement dans une boucle et stockés dans un tableau. Leur position ligne/colonne dans l'écran est retournée par une fonction calclc, qui retourne un couple de valeurs, donnant lieu au calcul des coordonnées x/y sur l'écran. Ils sont disposés dans un widget principal, représentant la fenêtre du programme. A chaque bouton est associé une procédure d'exécution qui modifie la couleur des cases adjacentes. |
Irb, windows 7 64 bits Disponible gratuitement en téléchargement sur le site rubyinstaller.org. Télécharger la version 7zip (logiciel) et la documentation au format chm.
Ces sites proposent des cours et documentations sur le langage. developpez.com, pour débuter tutorialspoint, complet |