Gambas France BETA


Pas de compte ? Incription

Soignez la Forme :

J'ai commencé à programmer il y a bien longtemps sur des machines qui feraient hurler de rire vos chers téléphones portables.
J'en ai bien, un, aujourd'hui mais il ne me sert que de téléphone.
Mon premier programme en assembleur m'a pris un mois d'écriture pour faire défiler un "bonjour, madame" sur la ligne écran de mon Z80, c'était en 19.. (de quoi je me mêle ?).

Ensuite je suis passé à un commodore 64, il avait tellement peu de mémoire que pour faire tourner un programme (en basic 16 bits, si madame ça a existé) il fallait découper le dit programme en morceaux que l'on chargeait un par un, en mémoire après avoir vidé celle-ci, du morceau précédent.
Pourquoi je disais ça, faut dire que si vous n'arrêtez pas de m'interrompre tout le temps, je perds le fil, moi.

En fait en arrivant sur Gambas, mes premiers programmes étaient aussi peu rangés que ma chambre si ma femme ne passait pas, derrière moi.
En lisant des articles et des programmes commentés je me suis aperçu qu'ils étaient faciles à suivre et comprendre parce qu'ils étaient aérés et commentés.
En lisant un code d'un certain Cogier, cherchez ses productions sur la logithèque de Gambas, chaque ligne était commentée et la présentation était soignée, les commentaires tirés au cordeau, toujours à 81 caractères sur la ligne (ce qui correspond à plusieurs tabulations, vous les compterez) ce qui rendait le code attractif, facile à lire et compréhensible.

Depuis je me suis imposé ce travail qui de fastidieux est devenu une autre chose, très intéressante, cela m'oblige à relire mon code, à améliorer celui-ci et surtout les commentaires pour qu'ils soient les plus explicites possibles, en peu de place.

Et, ce faisant vous vous rendrez compte des évolutions de vos propres pensées et de la structuration de celles-ci et donc de l'apport indéniable des commentaires dans vos programmes.
Car vos commentaires sont la traduction de vos pensées et non une simple traduction de texte d'une langue à une autre, sans aucune valeur.

Alors n'hésitez pas, commentez vos codes, d'abord pour vous même et ensuite .. pour vous même car les autres suivront.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
PUBLIC SUB Command(Command AS STRING) AS STRING 'Takes the Command and returns the output of the command

IF NOT Command THEN RETURN 'If there is no Command then get out of here!
sCommand = Command 'Move the Command to a global variable

IF sPassword THEN 'If the password has been stored then..
ButtonAuthenticate_Click 'Click the 'Authenticate' button
RETURN sOutput 'Return the Command's output
END IF

LabelHeader.text = ("Authentication is required to run this program\n'") & Command & "'" 'Add a notice and the name of the command to be run

CheckCapsLock 'Check if the Caps Lock is on
ME.Showmodal 'Show the Authentication Form
RETURN sOutput 'Return the Command's output

END


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
PUBLIC SUB obs_Change() ''Contrôle de la saisie

IF ME.text THEN '<---------------------------------------------------------- pour ne pas avoir d'erreur de texte vide
$regex.Exec(ME.Text) '<----------------------------------------------- test de la valeur au crible de l'expression régulière
ME.Text = $regex.Text '<----------------------------------------------- isNumber() donc on récupère chaque chiffre
IF ME.Text MATCH "." THEN ME.Text = Replace(ME.Text, ".", ",") '<------- pour récupérer la virgule à partir du point
IF ME.text THEN $value = Val(ME.Text) '<------------------------------- si j'ai du texte alors j'ai une valeur
IF ME.Value > 999999999.99 THEN '<--------------------------------------- pour ne pas dépasser la somme
ME.Value = 0 '<---------------------------------------------------- la valeur est remise àzéro
ME.Clear '<-------------------------------------------------------- le texte est effacé
ME.SetFocus '<-------------------------------------------------------- le focus est remis au champ
$lab.Text = "" '<---------------------------------------------------- le label d'affichage est effacé
ENDIF
ELSE
$value = 0
$lab.Text = ""
ENDIF

IF ME.Text AND IF $format THEN '<------------------------------------------ si Me.text et $format sont alimentés alors
$lab.Text = Format(Val(ME.Text), $format) '<--------------------------- affichage dans le label selon le format
ENDIF

END


====================

Navigation :



<-- Liens du Wiki : <--
<-- Accueil du WIKI : <--
<-- Rappels de Programmation <--

====================

Documentation :



====================