home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
DP Tool Club 19
/
CD_ASCQ_19_010295.iso
/
dos
/
fr
/
tvdbapp
/
tvdbdoc.txt
< prev
next >
Wrap
Text File
|
1994-08-07
|
9KB
|
209 lines
TVDBDOC.TXT
A Le cahier des charges
-----------------------
1) Idée initiale
Professeur de Mathématiques utilisant l'informatique, j'ai décidé de
créer une banque d'exercices dans laquelle je pourrai puiser pour préparer
mes cours ou mes devoirs. Evidemment la réalisation d'un tel projet implique
la possession d'un logiciel permettant de manipuler la banque d'exercices.
Etant aussi limité par la taille de mon portefeuille que par celle de mon
disque dur, j'ai choisi de créer moi même ce logiciel.
2) Ne pas sombrer dans le particularisme
L'avenir étant plein d'aléa, je continue de rêver au jour où je
disposerai de centaines de MégaOctets et de superbes usines à gaz logicielles
pour réaliser mes projets. Mon logiciel personnel de poche se doit donc d'être
'compatible' avec ce qui existe déjà ou ce qui va exister. J'ai ainsi choisi
de le faire travailler sur des fichiers au format DBase3. La banque d'exercices
pourra ainsi être utilisée par tout autre logiciel plus évolué dédié à la
gestion de bases de données.
3) Un certain confort
Un logiciel qui ne gère pas la souris ou les menus déroulants ne donne
pas très envie d'être utilisé, surtout pour les personnes qui comme moi sont
incapables de mémoriser des listes de fonctions clavier. Ces considérations
m'ont amené à choisir l'environnement proposé par TurboVision (avec Turbo
Pascal 6.0) pour développer mon application.
4) Que faire de ce logiciel ?
Les principes de base étant posés, il reste à définir les potentialités
du logiciel, c'est à dire les diverses opérations qu'il doit permettre de
réaliser.
**Visionner
Le minimum est de pouvoir consulter la banque d'exercices en disposant d'une
fonction de recherche.
**Editer
Corriger d'éventuelles erreurs est tout aussi indispensable.
**Sélectionner
Le logiciel doit permettre de sélectionner les exercices correspondant à
certains critères.
**Exporter
Le résultat de la sélection d'exercices doit pouvoir sortir de la base pour
pouvoir être utilisé par ailleurs. Cette sortie se fait de 2 façons :
1) Sortie directe sur imprimante.
2) Sortie sous forme de fichier ASCII réutilisable par tout traitement de
texte.
**Importer
Le logiciel et la banque d'exercices qui l'accompagne étant distribués aux
collègues de Maths informatisés de mon collège, une procédure d'échange
d'exercices doit exister. La méthode retenue est le Copier/Coller.
5) Et à part les exercices de Maths ?
Du fait de la généralité de son cahier des charges, le logiciel permet
finalement de gérer toute collection (livres, disques, logiciels, articles de
presse, etc...).
6) La ligne de commande
La ligne de commande permet de charger directement un fichier DBF
en indiquant son nom complet (avec chemin d'accès).
D'autre part l'option /nb permet de forcer un affichage en noir et
blanc utile sur certains portables.
B Les limites
-------------
Revenons quelques instants sur terre, pour admettre qu'il y a certaines
limites que le logiciel ne pourra pas dépasser.
1) Nombre d'enregistrements
Il est limité à un peu plus de 30000. Pour une banque d'exercices,
c'est quand même suffisant.
2) Champs Mémo
Les bases de données manipulées par le logiciel ne peuvent avoir
qu'un seul champ Mémo dont la taille est limitée à 512 octets. Cette taille
s'est révélée parfaitement suffisante pour un exercice de maths.
3) Effacements
La procédure d'effacement physique des enregistrements marqués à cet
effet ne gère pas l'effacement physique du champ Mémo dans le fichier DBT
associé. D'où la recommandation suivante pour un gain de place sur disque:
utiliser les enregistrements marqués pour introduire de nouveaux enregistrements.
4) Champs Date
Les champs Date gèrent correctement les dates du 20ème siècle. Il
faudra procéder à une révision en l'an 2000.
5) Disque dur recommandé
La fréquence des accès au disque contenant les données rend un disque
dur indispensable pour assurer une certaine fluidité de l'affichage.
6) Nombre de fichiers ouverts
La consultation d'une base de données provoque l'ouverture de 2 ou 3
fichiers en même temps (le fichier DBF, le fichier DBT s'il y a lieu et un
fichier temporaire servant à effectuer les sélections). Un autre fichier
temporaire peut aussi être ouvert momentanément pour certaines opérations.
Ainsi, pour pouvoir consulter plusieurs bases simultanément, il faudra veiller
à avoir un paramètre Files suffisant (voir Config.sys).
7) Création d'une base de données
Cette version du logiciel ne permet pas de créer des bases de données.
L'initialisation devra se faire à l'aide d'un autre logiciel.
C La banque d'exercices
-----------------------
La banque d'exercices se trouve dans les deux fichiers EXOBANK.DBF et
EXOBANK.DBT.
Elle contient environ 130 exercices du niveau collège qui ne brillent
pas par leur originalité mais qui sont représentatifs de ce qu'on (ou de ce
que je) demande à un élève de collège. Ces exercices sont soit mon oeuvre,
soit tirés de différents manuels.
La banque d'exercices est structurée par les champs suivants :
- NIV : égal à 6, 5, 4 ou 3 qui représente la classe; G indique un
exercice pouvant être proposé à tous les niveaux.
- DOMAINE : champ de 4 caractères indiquant le domaine traité. J'ai
utilisé CALC pour calcul, arithmétique, fractions ...
GEOM pour géométrie plane
ESPA pour géométrie dans l'espace
ALGE pour algèbre
GRAP pour graphiques
LOGI pour logique.
- ACTION : contient un verbe indiquant le type d'activité demandé.
- CHAPITRE : contient un titre de leçon.
- TEXTE : champ mémo contenant l'énoncé de l'exercice.
- MARQUE : champ généralement vide de 1 caractère destiné à permettre
des sélections impossible autrement.
Cette banque n'est évidemment pas complète, mais elle constitue un
point de départ non négligeable. Merci d'avance à ceux qui la complèteront
et qui voudront bien m'envoyer le résultat de leur travail.
D Rendons à César ...
---------------------
Le logiciel TVDBAPP n'aurait pas pu être écrit sans le concours
'involontaire' de certaines personnes que je me dois de citer et remercier.
1) Gestion des Fichiers DBF
Je dois les quelques choses que j'ai apprises sur les fichiers DBase à :
a) Frédéric Hardy, grâce à l'article qu'il a publié sur ce sujet dans
la revue Réponse Micro numéro 4.
b) Richard F. Griffin grâce à ses GRIFFIN Solutions, diffusées par le
DPTool Club de Villeneuve d'Ascq sur la disquette 533 sous le titre GS_Dbase 2.8.
2) Utilisation de Turbo Vision
J'ai utilisé et pillé les programmes fournis en exemple avec Turbo
Vision, en particulier pour l'installation de l'horloge et du système d'aide.
3) Ma part personnelle
Ce que j'ai apporté est essentiellement le lien entre ces 2 sources
d'informations : c'est à dire la méthode d'affichage.
E Mode de diffusion
-------------------
1) Programme et banque d'exercices
Le programme (TVDBApp.Exe), son fichier d'aide (DBHelp.Hlp) et le
fichier de présentation (TVDBDoc.Txt) peuvent être diffusés gratuitement
ensemble accompagnés de la banque d'exercices contenue dans les fichiers
ExoBank.Dbf et ExoBank.Dbt.
2) Conditions d'utilisation
Si vous utilisez TVDBAPP de manière régulière, vous êtes prié de
bien vouloir vous inscrire auprès de :
KOSTRZEWA Bruno
54 rue des Chardonnerets
59350 SAINT ANDRE.
en envoyant une carte postale pour ma fille accompagnée d'un beau timbre
pour la collection de mon fils.
3) Sources
Le source complet, compilable avec Turbo Pascal 6.0 et les unités
fournies avec Turbo Vision, peut être obtenu pour 200F.
F Création d' une base de données
---------------------------------
Voici pour terminer le listing d'un petit programme qui utilise une
unité des GRIFFIN Solutions déjà citées et qui permet de créer les fichiers
DBF et DBT de votre prochaine base de données.
Program GSDBMAKE;
Uses crt,
gs_db3wk; {unité des Griffin Solutions et qui fait tout}
Var filename:string;
posit:byte;
Begin
clrscr;
writeln('GSDBMAKE DBase File Builder');
writeln('Richard F.Griffin');
writeln('102 Molded Stone Pl');
writeln('Warner Robins, GA 31088');
writeln;
write('Nom du fichier : ');
readln(filename);
posit:=pos('.',filename);
if posit<>0 then filename:=copy(filename,1,posit-1);
if GS_DB3_Create(filename)
then writeln('La base de données est créée.')
else writeln('La base de données n''a pas été créée.');
End.