• Aucun résultat trouvé

Informations compl´ ementaires

7.4.1 Cr´eation d’un CD bootable Knoppix

Si vous ne disposez pas encore de GNU/Linux mais seulement de Windows, vous pouvez facile- ment graver un CD bootable Knoppix, qui est la distribution id´eale pour d´ecouvrir Linux. T´el´echarger la derni`ere distributions stable de Knoppix et son fichier de somme de contrˆole4: ‘KNOPPIX_Vx.y.z-yyyy-mm-dd-EN.iso’

‘KNOPPIX_Vx.y.z-yyyy-mm-dd-EN.iso.md5’ `

A partir d’une console MSys, contrˆoler le fichier re¸cu par la commande : ‘md5sum KNOPPIX_Vx.y.z-yyyy-mm-dd-EN.iso’

V´erifier le r´esultat grˆace au fichier :

‘KNOPPIX_Vx.y.z-yyyy-mm-dd-EN.iso.md5’

Gravez votre CD-R ou votre CD-RW bootable par la commande :

‘cdrecord dev=x,y,z -v speed=16 -tao -data KNOPPIX_Vx.y.z-yyyy-mm-dd-EN.iso’ 4 Une adresse parmi d’autres : ftp://ftp.free.fr/pub/Distributions_Linux/knoppix.

Chapitre 7: Sauvegarde des donn´ees 41

7.4.2 Ecouter des mp3

Pour ´ecouter un fichier :

>madplay --verbose "/z/cds/01/01. Can’t We Be Friends.mp3"

MPEG Audio Decoder 0.15.2 (beta) - Copyright (C) 2000-2004 Robert Leslie et al. Title: Can’t We Be Friends?

Artist: Ella Fitzgerald and Louis Armstrong Album: Track: 1 Year: Genre: Jazz Encoder: Comment: Track 1

00:00:15 Layer III, 192 kbps, 44100 Hz, joint stereo (MS), no CRC

Pour ´ecouter un r´epertoire :

>madplay /z/cds/01/*.mp3

7.4.3 Int´egration de CDrecord

Afin que Windows n’interf`ere pas avec CDrecord lors de l’insertion des CD dans le graveur, puis ne risque pas d’alt´erer le disque en cours de gravure, il est n´ecessaire de supprimer la d´etection automatique en modifiant la registry :

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Cdrom] Autorun=0

Si le graveur n’est pas visible, les changements ci-dessous, `a effectuer dans la registry, devraient corriger le problˆeme :

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Aspi32] "ErrorControl"=dword:00000001 "Start"=dword:00000001 "Type"=dword:00000001 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Aspi32\Parameters] "ExcludeMiniports"=""

Une commande ‘cdrecord -scanbus’ qui d´eclenche des anomalies est le symptˆome d’un pilote ASPI d´efectueux.

Chapitre 8: Initiation au d´eveloppement 42

8 Initiation au d´eveloppement

Si les architectes construisaient les maisons comme les programmeurs ´ecrivent les programmes, le premier picvert venu d´etruirait la civilisation. Seconde loi de Weinberg

8.1 Pr´esentation

Ce chapitre n’a aucune pr´etention p´edagogique. Toutefois, si vous assimilez la m´ethode propos´ee, vous en saurez d´ej`a beaucoup plus que la plupart des informaticiens de gestion des ann´ees 70, grands utilisateurs de goto et adeptes de la programmation spaghetti.

Une m´ethode pour construire des fondations solides

Pour devenir un d´eveloppeur, il faut poss´eder une m´ethode, poss´eder au sens de maˆıtriser, pour arriver, `a terme, `a une utilisation de la m´ethode comme un r´eflexe si bien ancr´e qu’on ne s’en aper¸coit plus.

C’est la maˆıtrise d’une m´ethode qui distingue l’authentique d´eveloppeur de l’amateur sans for- mation. C’est encore elle qui permet d’´ecrire de tr`es gros programmes sans effort ni probl`eme de fiabilit´e.

La m´ethode de programmation propos´ee est simple et efficace. Cette m´ethode de programma- tion modulaire et structur´ee permet de cr´eer facilement et de maintenir harmonieusement des programmes de taille quelconque, du plus simple au tr`es complexe. Elle fut tr`es en vogue dans les ann´ees 80, avant l’apparition des m´ethodes orient´ees objet.

Cette m´ethode sera accompagn´ee d’une initiation `a l’alg`ebre de Boole, alg`ebre tr`es simple et indispensable `a l’´ecriture de programmes bien construits.

Ce qu’il faut ´eviter pour d´ebuter

La mode est d´esormais `a l’objet, mis `a toutes les sauces et sans discernement. En effet, les langages et les m´ethodes utilisant des objets, qui rajoutent toujours de la complexit´e dans le code cr´e´e par le compilateur, peuvent ˆetre n´efastes dans certaines circonstances : d´eveloppement embarqu´e `a petit budget ou `a tr`es haute fiabilit´e, grandes contraintes d’occupation m´emoire, etc... Cette approche objet peut ˆetre aussi compl`etement inutile en regard du probl`eme `a r´esoudre.

Il en va des m´ethodes comme des outils, il faut toujours utiliser la m´ethode appropri´ee au probl`eme `a r´esoudre. Il est des cas o`u l’approche objet est de loin pr´ef´erable `a tout autre, par exemple pour con¸cevoir des interfaces graphiques.

De mˆeme, la programmation ´ev`enementielle, grande affaire des interfaces graphiques, a fait apparaˆıtre une g´en´eration de d´eveloppeurs qui ´eprouvent des difficult´es `a ´ecrire une application autonome, g`erant seule ses entr´ees-sorties et ´ecrite dans les r`egles de l’art.

Quand vous aurez assimil´e la m´ethode propos´ee, n´ecessaire et suffisante pour faire de vous de bons d´eveloppeurs tout terrain, il sera toujours temps de monter d’un cran et de regarder du cˆot´e de chez HOOD1.

De mˆeme, quand vous serez devenu un familier de la programmation lin´eaire2, c’est `a dire des programmes se lisant du d´ebut `a la fin, avec une continuit´e dans les sources, il sera aussi temps pour vous de d´ecouvrir la programmation ´ev`enementielle, par exemple avec GtkAda !

En conclusion, l’important est d’apprendre `a faire les fondations avant d’apprendre `a poser une toiture. Et pour bien commencer, il faut commencer modestement, et manipuler des concepts simples.

1

Se reporter `a la bibliographie en fin de manuel.

Chapitre 8: Initiation au d´eveloppement 43

Documents relatifs