B-Basic.net

Innovation Informatique France

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.

 

Imprimer cette page