Introduction a B-Basic
B-Basic est une alternative a ces vieux standards des années 60/90 dont vous n'avez toujours rien eut a faire. B-Basic ajoute un nouveau modéle de langage de programmation a la courte liste des langages sources existants, un compilateur en temps réel, un menu démarrer en mode écho ainsi que qu'un environnement d'édition intégrant tous les outils nécessaires à la création, la manipulation, le partage de ressources.
Entrons dans le vif ... L'environnement B-Basic intégre un support de developpement en mode script semi assisté prenant en charge une bonne part de l'effort de programmation nécéssaire a la création d'un logiciel. Pas de détails techniques à résoudre, pas a ce préoccuper d'octets, de bytes, de déclarations de variables, vous pouvez concentrer votre attention sur l'enchaînement de taches nécessaires à une fonction, en laissant le système s'occuper du reste.
Quelques lignes de codes suffisent parfois a la réalisation d'applications d'un excellent niveau.
Structure d'interface paginée Plus de 200 classes de fonctions intégrées Fonctions logiques exclusives B-Basic Répertoires système Possibilité d'interaction avec le langage C (par la classe EXECUTE)
1 - Interface paginée
L'interface logicielle B-Basic dispose d'une option de pagination. La pagination consiste à réunir dans une même zone de l'interface, jusqu'a 32 feuilles indépendantes dans lesquelles vous placez vos elements d'interface. La gestion des processus de paginations, étant entièrement piloté par le système, et décrites par des fonctions de classes B-Basic, l'effort de programmation est des plus léger.
2 - Les classes
Le langage B-Basic, intègre des milliers de fonctions réunies dans plus de 200 classes de fonctions.
Graphisme Vidéo Gestion (base de donnés) Animation 2D Publication assisté dite PAO Réseau et internet Utilitaires divers Etc...
Une classe B-Basic, est la réunion d'un groupe de fonctions spécialisées. La classe DESSINE par exemple, propose 17 fonctions d'éditions graphiques.
DESSINE(A, ... paramètres ...) DESSINE(B, ... paramètres ...) ....
En langage B-Basic, une fonction de classe, peut être une action, telle que, dessine un cercle. Elle peut également être un sous programme complet tel qu'un traitement graphique, la résolution d'une image fractale ou la compression d'un répertoire. Le langage B-basic dispose de millier de fonctions et sous programmes intégrés pré-compilés, secondés par des dispositifs particuliers de l'interface graphique dont vous n'aurez par ailleurs pas a vous préoccuper, voir même en avoir une connaissance exacte.
3 - Les fonctions logiques
Les fonctions logiques, sont, les centres nerveux d'un logiciel permetant d'interpréter des situations et prendre des décisions. Le langage B-basic met en œuvre de nouvelles fonctions, permettant de déployer une structure logique intuitive, souple, malléable et en somme moins de codes. La programmation B-Basic, devant faire l'objet d'un didacticiel plus détaillé, Nous ne parlerons ici que de la structure de base d'un code source B-Basic.
4 - Les répertoires systèmes
Un logiciel B-Basic, est un descriptif d'interface, compilé dans un format exploitable par le moteur de compilation interne, stocké sur disque dur dans un format binaire hyper compact de quelques Ko.
Chaque programme dispose d'un accés a deux répertoires. Un répertoire dédié dit RLA et un répertoire commun a tous les logiciels dit RLC. Ces répertoires font l'objet de classes spécifiques du langage B-Basic. Il s'agit des classes RLA et RLC.
Le répertoire RLA ..
Ce répertoire, sera utilisé pour les icônes, et divers fichiers, il peut être archivé et transmis lors de processus d'exécution de logiciel distant. Le répertoire RLA doit etre considéré en tant que répertoire système d'un logiciel B-Basic.
Fichier programme Programme.bin Nom du logiciel Répertoire Programme-rla Nom de répertoire Fichier archive Programme-rla.bin Archive de répertoire RLA
Lors de toutes opération de suppression ou de renommage de programme, la fonction impactera sur le répertoire RLA associé ainsi que l'archive de ce répertoire.
Le répertoire RLC ..
Le répertoire de ressources RLC, est un répertoire partagé entre tous les logiciels B-Basic et donne à vos logiciels, un accès à des ressources communes. Cela peut être des images, des textes etc.
5 - La structure d'un logiciel B-Basic
Un logiciel B-Basic, est subdivisé en groupes, qui pourraient êtres comparés aux chapitres d'un livre. Chaque groupe a une identité numérique notée par pas de 10. Nous avons donc les groupes 10 20 30 40 ..... 640
Un bloc d'instructions permet d'affecter une identité numérique à un groupe d'instructions. Mettons en scène cette structure ....
! -------------- ! Groupe 10 ! -------------- ! BLOC(1) ... Instructions V1=2*2 GROUPE(A,20,V1) ... TERMINE(B) ! BLOC(2) ... Instructions ... TERMINE(B) ............................................................. ! --------------- ! Groupe 20 ! --------------- ! BLOC(1) ... Instructions GROUPE(A,10,2) ... TERMINE(B) ! BLOC(2,4,6) ... Instructions GROUPE(B,1) ... TERMINE(A,1,2,3) -- (En retour de bloc 4 : v1=1 v2=2 v3=3)
Si nous observons l'enchainement des liaisons. Le programme démarre et cherche le bloc 1 du groupe 10. Il exécute la procédure, puis trouve la commande GROUPE(A.10,V1). V1 étant égal à 4, cette commande demande l'exécution du bloc 4 dans le groupe 20. Le programme se connecte sur le bloc. Il exécute les instructions puis trouve la commande GROUPE(B,1). Cette commande demande l'exécution du bloc 1 du groupe actuel. Le programme se connecte sur le bloc 1 du groupe 20. Il exécute les instructions puis trouve la commande GROUPE(A,10,2). Cette commande demande l'exécution du bloc 2 du groupe 10. Le programme se connecte sur le bloc. Il exécute les instructions puis trouve la commande de fin de bloc Termine(B). Il revient sur le point d'appel du bloc 1 du groupe 20, et continu l'exécution des instructions, et ainsi de suite..
6 - La fonction BLOC
Un bloc d'instruction, peut être considéré comme une nouvelle fonction du langage, obtenue par associations. La fonction Charger un fichier lié à l'icône Charger d'une interface, sera réalisé par une connexion sur un bloc(x) d'un groupe(y) contenant les étapes nécessaires à un chargement et un affichage dans une structure quelconque.
Un bloc peut avoir plusieurs identités numérique, pouvant être connue par la valeur de la variable de groupe, V0. On peut écrire.
BLOC(1,3,5,10) V1=V0 ..... TERMINE(B)
7 - Quelques règles de syntaxe
L'analyseur de code identifie et contrôle la cohérence de votre script, puis le transmet au compilateur. Sous B-Basic, un logiciel doit pouvoir être décompilé en format ASCII. B-basic intègre donc un compilateur, ainsi qu'un restaurateur de code dont vous n'aurez pas a connaitre les détails. Un logiciel B-basic est systèmatiquement analysé et recompilé avant d'être éxécuté ou stocké sur disque dur.
En langage B-Basic, une ligne ne peut contenir qu'une chose à la fois. Une ligne peut contenir, une instruction, une expression mathématique, une fonction de chaîne de caractère, un commentaire.
Les instructions INSTRUCTION( .....) Les expressions mathématiques V1=2+2+(4\2) Fonction de chaîne de caractères V1$(E) Les commentaires ! Commentaire !? Titre
Il n'est pas permis, d'insérer des commentaires sur une ligne d'instruction ou expression mathématique.
Si vous écrivez :
INSTRUCTION( ... ) ! Commentaire
Une erreur de syntaxe interrompt la compilation du groupe.
! ! -- Commentaire ! INSTRUCTION( ... ) V1=2+2 ! ! -- Commentaire !
Correct !
Vous ne pouvez pas insérer de commentaires sans débuter la ligne par le caractère "!"
! Commentaire bla bla bla bla !
Pas correct. Vous devez écrire ...
! Commentaire ! bla bla ! bla bla !
La tabulation est, ce qui rend vos scripts plus lisibles. La tabulation est obtenue par la touche tab du clavier.
REPETE(..) INSTRUCTION( ...) .... SI(..) REPETE(..) INSTRUCTION( ...) .... REPETE(B) SI(F) INSTRUCTION( ...) REPETE(B)
Est plus clair que
REPETE(..) INSTRUCTION( ...) .... SI(..) REPETE(..) INSTRUCTION( ...) .... REPETE(B) SI(F) INSTRUCTION( ...) REPETE(B)
8 - Naviguer dans les sources
La zone d'édition dispose de deux listes déroulantes, permettant d'accéder directement à des groupes et des blocs d'instructions. La navigation se repére a des balises que vous insérez dans le code source d'un groupe.
La liste de groupes, extrait les titres de la 2eme ligne de commentaire du script
! ------------------------ ! Le titre du groupe --- (inséré dans la liste) ! ------------------------ BLOC( ..) ... TERMINE(B)
La liste des blocs du groupe, extrait les titres du code commentaire "!?"
! --------- ! bla bla ! --------- ! !? Premier titre --- (inseré dans la liste) ! BLOC( ..) ... TERMINE(B) ! !? Deuxieme tire ! ...
9 - Exécution d'un logiciel B-Basic
Lorsqu'un logiciel B-Basic démarre, il cherche dans le groupe 10 (premier groupe) le bloc 1, et exécute les instructions de ce bloc. Le bloc 1 du groupe 10, est réservé à la description de l'interface de votre logiciel. Le moteur interne B-Basic crée la structure d'interface, puis installe les éléments, les liaisons, et effectue les branchements nécessaires à l'initialisation des processus logiques de votre logiciel.
Lorsque l'instruction TERMINE(B) est trouvé, Il affiche l'interface et se met en mode ... Prêt !
Un logiciel B-basic, commence toujours, par la création de l'interface du logiciel.