Valid XHTML     Valid CSS2    

Langages de scripts, automatisation de commandes et

production de documents structurés :

1. Langages de script, développement rapide et développement Web

                     gilles.hunault "at" univ-angers.fr

 

Table des matières cliquable

  1. Installation des interpréteurs et numéros de version

  2. Le sigle (gH) RPPPR

  3. Mode one-liner en Python et Ruby et guides d'écriture

  4. Vérification et amélioration des programmes dictionnaires

  5. Interfaces ligne de commande et interfaces graphiques

  6. Installation de plusieurs versions, de packages et de modules

  7. Les versions Active State de Tcl, Perl et Python

  8. Installation de Ruby on Rails et Django

 

Il est possible d'afficher toutes les solutions via  ?solutions=1 .

 

1. Installation des interpréteurs et numéros de version

Vérifiez que vous disposez bien des langages Awk, Rexx/Regina, Perl (version 5), Rhino, Php (au moins 5.3), Python (version 3.1), Ruby (version 1.9) ; dans le cas contraire, installez les versions demandées. Pour chaque langage, afficher le numéro de version et pour tous les langages sauf Awk, calculer 2 puissance 8 en mode interactif.

Au passage, à quoi cela sert-il de connaitre (au moins) le nom de tous ces langages ?

Solution :  

 

2. Le sigle (gH) RPPPR

Que signifie le sigle (gH) RPPPR ?

Solution :  

 

3. Mode one-liner en Python et Ruby et guides d'écriture

Peut-on écrire des scripts Python et Ruby en mode one-liner ? Que signifie obfuscated ? Y a-t-il des «bonnes façons» d'écrire des scripts Ruby, des scripts Python ?

Solution :  

 

4. Vérification et amélioration des programmes dictionnaires

Vérifier que les scripts pour la création de dictionnaires fonctionnent sur votre ordinateur si on les applique au fichier long.txt (texte en iso-8859) ou au fichier long.utf (texte en UTF). On ajoutera un "timing" de la durée d'exécution.

Solution :  

 

5. Interfaces ligne de commande et interfaces graphiques

Ecrire en RPPPR un script testarg qui "comprend" aussi bien --nblig=5 --nomfic=test.xml que --nomfic=test.xml --nblig=5 et nomfic test.xml nblig 5. Modifier ensuite ces scripts pour qu'ils affichent une interface de saisie de ces deux paramètres.

Solution :  

 

6. Installation de plusieurs versions, de packages et de modules

Après réflexion, installer à la fois Python2.7 et Python3.3 et leur installeur de module respectif pip. On passera par virtualenv.

Après réflexion, installer à la fois Ruby1.8 et Ruby 1.9. On passera par rvm.

Installer le package Tk pour Perl puis lister tous les modules Perl installés. On installera aussi YAML::Perl et perldoc et les pmtools. Installer les modules easygui et pymysql pour Python puis et hirb pour Ruby. Est-ce un gemme  ? Comment fait-on pour lister les packages ou modules installés en Python et en Ruby ? Et pour gérer des versions différentes des langages Python, Perl ou Ruby sur un même ordinateur ?

Solution :  

 

7. Les versions Active State de Tcl, Perl et Python

Installer pour Linux ActiveTcl, ActivePerl et ActivePython (3.3) à partir du site activestate. Définir ensuite des commandes exécutables atclsh, awish, apython et aperl (avec les -I qu'il faut) de façon à pouvoir tester les programmes de l'archive tk4l.zip. Et pour Ruby, que faut-il faire ?

Que contiennent les scripts d'installation install.sh ?

Solution :  

 

8. Installation de Ruby on Rails et Django

Installer Ruby on Rails 4 (ou 5 ?) et réaliser le chapitre 1 du tutoriel french.railstutorial. Installer aussi rake, rspec, hirb, racc, ruby-xslt. On pourra ignorer tout ce qui concerne git et heroku. Donner la liste de toutes les options de ces commandes. Remarque  : on commencera par installer rvm.

Installer django 1.9 (ou 2.1 ?) pour python 2 (ou 3 ?) et réaliser les parties 1 et 2 du tutoriel first app ; on pourra lire (sans les réaliser) les autres parties du tutoriel pour avoir une idée de ce qu'on peut faire avec django. On écrira dans la base de données sqlite3 nommée mabase le texte Quoi de neuf, docteur  ? au lieu de What's up? avec le moteur sqlite3, on utilisera monsite au lieu de mysite et sondage au lieu de poll (donc au pluriel sondages au lieu de polls). Remplacer aussi Choice par choix, et mettre un maximum de champs et phrases en français.

Voilà à peu près ce qu'on doit obtenir  :

 

        djangofr1.png

 

        djangofr2.png

Solution :  

 

 

Code-source php de cette page ; code javascript utilisé. Retour à la page principale du cours.

 

 

retour gH    Retour à la page principale de   (gH)