Articles tagués script

Comment tester une méthode privée en Ruby

Les tests unitaires, c’est nécessaire. Mais jusqu’où faut-il aller ?
Voici ce que je pense du test des méthodes privées :

  1. Tester toutes les méthodes privées serait, au mieux, une énorme perte de temps.
  2. Tester une méthode privée par ci, par là peut vraiment simplifier la vie.

Alors, comment faire ? Avec Ruby il y a plusieurs solutions. La seule dont je me sert a été trouvé sur le blog de Jason Rudolph.
Je vous livre ci-dessous une traduction française, plus quelques brèves explications pour les débutants.

Lire la suite »

, , , , , ,

Poster un commentaire

Comment étendre une classe en Ruby ?

Je découvre encore le monde Ruby et ce langage ne cesse de m’étonner. Je n’aime pas tout, loin de là,
mais ce qui me plaît compense de plus en plus largement ce qui me déplaît.
Dans cet article, j’explique d’abord pourquoi je n’aime pas la manière d’extraire des sous-chaînes. Puis pourquoi j’aime le mécanisme des classes ouvertes. Et enfin je montre comment plier à mes désirs une classe standard. Plus précisément comment ajouter une fonctionnalité à la classe String, sans pour autant perturber les programmes qui ne voudraient pas de cette nouvelle fonction.

Lire la suite »

, , , , ,

Poster un commentaire

Comment installer, configurer et utiliser eRuby pour le développement web

Pour un projet web particulier avec Ruby, j’avais besoin d’utiliser eRuby sur un serveur Debian Lenny.
Pas Ruby and Rails, pas mod_ruby, juste eRuby. La documentation sur internet n’est pas pléthorique.
Que ce soit pour la configuration de eRuby avec le serveur web apache ou pour son utilisation, il faut
jouer au détective. Et si vous ne maîtrisez pas l’anglais, vous pouvez passer votre chemin.
Voilà donc un petit topo, pour les francophones, sur la configuration et l’utilisation de eRuby en développement web.

Lire la suite »

, , , , , , ,

Poster un commentaire

Ruby : étendre la classe Logger

Je ne vous apprendrez rien en vous disant que vos applications gagneraient bien souvent à utiliser un fichier de log. C’est un moyen simple d’améliorer la sécurité, de produire quelques statistiques et de fournir des pistes pour la chasse aux bugs.
La classe Logger de Ruby, dans sa version de base, ne me convient pas parfaitement, pour la plupart de mes projets. Ceci pour 2 raisons :

  1. Il n’est pas évident d’utiliser une même instance de Logger dans toute l’application. Or, dans la plupart des cas, je n’utilise qu’un seul log par application.
  2. 9 fois sur 10, un événement qui sera logué au niveau FATAL devra entraîner la fin prématurée de l’application, ce que ne fait pas la classe Logger.

Je vous propose donc la petite amélioration suivante :
Lire la suite »

, , , ,

Poster un commentaire

Introduction au langage Sed 2 – Les adresses

Cet article est la suite de Introduction au langage Sed.
Lire l’article suivant : Introduction au langage Sed 3 – substitution de texte

Une commande Sed peut être précédée d’une addresse. L’adresse sert tout simplement à sélectionner des lignes spécifiques d’un fichier, en vue de leur appliquer un traitement. Penser donc : « Je m’adresse à telle ligne » et non pas « adresse mémoire ».

Adresses numériques

Dans l’exemple suivant, l’adresse est un numéro de ligne (1) et l’action est p (print). Seule la première ligne du fichier /etc/group sera donc affichée.

Lire la suite »

, , ,

Poster un commentaire

Ecrire un plugin Cairo-Dock avec D-bus en Python

Si vous utilisez Cairo-Dock, vous avez sûrement eu envie d’écrire vous même un plugin. Mais vous ne connaissez pas le langage C (Cairo-Dock est développé en C) ou vous ne voulez pas vous lancer dans la compilation des sources ? Qu’à cela ne tienne, depuis la version 2.1.3 vous pouvez écrire facilement un plugin dans un langage de script, Python par exemple, grâce au démon de communication inter-processus D-bus.

Lire la suite »

, , , , , ,

Poster un commentaire

Introduction au langage Sed

Méconnu des développeurs, Sed est un mini langage, spécialisé dans la transformation de fichiers textuels, qui vous rendra bien des services. Disponible d’office dans linux, il s’utilise dans un script ou comme filtre de la ligne de commande. Il a pour lui quelques atouts :

  • forte spécificité (il ne fait pas grand chose, mais il le fait bien)
  • performances excellentes (il existe depuis près de 40 ans)
  • stabilité/pérennité (on l’utilise toujours au bout de 40 ans)

Lire la suite »

, , ,

Poster un commentaire