L'éditeur
Lorsque vous démarrez l'environnement de programmation VisualBasic pour DOS, vous remarquerez l'apparence modifiée - lorsque vous ayez déjà travaillé avec QuickBasic. Une fenêtre beaucoup plus petite est disponible pour le code source, et la fenêtre familière "Immediate" est initialement manquante. Avec l'aide de Ctrl+F10 et du menu fenêtre, vous pouvez facilement agrandir la fenêtre de code et ouvrir à nouveau une fenêtre "Direct". Contrairement à avant, il est désormais possible d'afficher un plus grand nombre de fenêtres de code côte à côte. Le VisualBasic for DOS peut gérer la mémoire de manière plus flexible que QuickBasic. Il utilise l'EMS et XMS et peut également réduire considérablement ses besoins d'entreposage conventionnels en déplaçant des parties de lui-même sur le disque dur.
Un dernier petit changement concerne la saisie de guillemets dans les constantes de chaîne de caractères. Si vous vouliez le texte plus tôt «"Bonjour," dit-elle.» sortie à l'écran, vous deviez le faire avec la ligne de programme suivante :
PRINT CHR$(34); "Bonjour,"; CHR$(34); ", dit-elle."
Cependant, le Visual Basic pour DOS évalue deux guillemets consécutifs comme un seul inclus, de sorte que maintenant vous pouvez utiliser la ligne de code suivante :
PRINT """Bonjour,"" dit-elle."
Ainsi, pour sortir un guillemet simple, vous pouvez maintenant écrire PRINT """" au lieu de PRINT CHR $(34).
Extensions au BASIC standard
Si vous ne tenez pas compte des nouvelles fonctionnalités de la programmation événementielle, il ne reste pratiquement plus de nouvelles commandes BASIC standard: les fonctions de traitement des codes temporels (NOW et autres), ayant été incluses dans le BASIC PDS (Basic Professional Development System) en tant qu'addition. Sur la bibliothèque, font désormais partie intégrante du langage de programmation; il y a aussi une fonction FORMAT$ permettant aux nombres d'être (presque) formatés au fur et à mesure que PRINT USING les sort. Enfin, une fonction en retard appelée ERROR$ a été mise en oeuvre, renvoyant le texte brut pour une erreur s'étant produite ou pour tout numéro d'erreur. Le dernier changement, également très positif, est que les fonctions peuvent désormais être déclarées avec le type de données AS au lieu de l'identificateur de type parfois ennuyeux. Là où c'était :
FUNCTION Fonction&(Numero AS INTEGER)
vous pouvez maintenant écrire :
FUNCTION Fonction(Numero AS INTEGER) AS LONG
Édition standard et professionnelle
Dans le passé, BASIC avait déjà la subtile différence entre BASIC 6.0 et PDS d'une part et QuickBASIC d'autre part. Mais vous n'avez jamais eu à vous avouer si clairement : suis-je un professionnel ou plutôt un standard ? La principale différence entre l'édition professionnelle et sa petite soeur est que :
- la possibilité de créer des programmes avec des recouvrements,
- le support ISAM intégré;
- davantage d'exemples de programmes et de boîtes à outils;
- la possibilité de créer vos propres modules d'exécution;
- la bibliothèque mathématique alternative supplémentaire pour une meilleure puissance de calcul en virgule flottante sur les ordinateurs sans coprocesseur;
- les programmes fournis Profiler, CodeView et Custgen;
- la possibilité d'optimisation du code pour les microprocesseurs 80286 et 80386
- certains fichiers abandonnées.
Cependant, les deux dernières fonctionnalités mentionnées peuvent également être utilisées dans la version standard de manière détournée.
Recul par rapport au BASIC PDS
Quiconque a déjà travaillé avec BASIC PDS peut manquer certaines choses :
- Le Visual Basic pour DOS n'offre pas de support OS/2. Comme on le sait, Microsoft s'est retiré du développement d'OS/2 et misé sur WINDOWS NT, étant un système d'exploitation indépendant.
- Avec le Visual Basic pour DOS, vous ne pouvez plus choisir entre les chaînes de caractères Near et Far; le Visual Basic pour DOS utilise toujours des chaînes de caractères Far.
- La bibliothèque d'interface utilisateur du PDS n'est plus incluse, car la programmation événementielle est beaucoup plus puissante. Cependant, si vous souhaitez continuer à utiliser des routines individuelles - par exemple GetBackground et PutBackground, il devrait être possible sans aucun problème, tant que vous choisissez les variantes Far String.
- La prise en charge d'ISAM sous la forme d'un programme résidant en mémoire (PROISAM.EXE ou PROISAMD.EXE) est toujours requise pour Visual Basic pour DOS; Alors qu'avec le PDS vous aviez la possibilité de concevoir vos propres programmes de manière à ce qu'ils utilisent les routines chargées en mémoire, ce n'est plus possible. Au lieu de cela, les routines ISAM sont intégrées dans le programme lorsqu'elles sont compilées avec le paramètre /O et sont dans le cas contraire dans le module d'exécution. Si vous créez un module d'exécution sans prise en charge d'ISAM (NOISAM.OBJ) et appelez quand même des routines ISAM, une erreur est générée, que vous ayez chargé PROISAMD ou non.
Optimisation légèrement améliorée
Pour ceux venant de QuickBASIC, le Visual Basic pour DOS offre une génération de code améliorée grâce à la plus grande granularité des bibliothèques. Une optimisation des appels de fonction et de procédure, tels qu'ils pourraient être activés dans BASIC PDS par le paramètre /Ot, a maintenant lieu par défaut. La version professionnelle propose avec les paramètres /G2 (déjà disponibles sur le BASIC PDS) et /G3 (est nouveau) une optimisation pour 286 ou 386 processeurs.