Page loading

Share your opinion
What do you think about gambaslinux.fr?
 
Interesting
It miss some informations
Excellent website
Results
WIDGETS GAMBAS
GAMBAS 3 SOFTWARES
TUTORIALS
Library
Lessons - lesson 1
french only sorry...



COURS 1 : PREMIERE APPROCHE DE LA PROGRAMMATION



INTRODUCTION
dans ce cours nous allons voir la différence entre la programmation structuré et la programmation orientée objet. Ce cours a été improvisé  par un amateur alors soyez indulgent quantà la rédaction et au tournures de phrases.

LA PROGRAMMATION STRUCTUREE

Pour expliquer  rapidement ce qu'est la programmation structuré, prenons un petit exemple de la vie courante.

posons un probleme

je vais de la gare a chez moi, plusieurs chemin s'offrent a moi, pourtant un seul but, c'est un raisonnement structuré.
je pourrais ecrire un programme qui dis :

Va tout droit
tourne a gauche deux fois
si rue barre demi tour.
va deux fois a gauche et voila tu es arrivé !


cette methode la etait valable a l'epoque. on partait d'un point a un autre en suivant betement la structure du programme.
Aujourd'hui avec l'apparition des interfaces et de la programmation orientée objet (poo) le langage a evolué. un programme ne va plus d'un point a un autre mais reagait a des evenements. reprenons notre exemple en poo cette fois ci, nous pourrions ecrire:

je marche, je marche
quelqu'un m'interpele et me dit a gauche
je vais a gauche et... je marche, je marche
un avion passe, je m'arrete et le regarde..
je marche..je marche
quelq'un me pousse et... je suis arrivé !


Cette philosophie de programmation est geniale ! pourquoi ? car elle permet une souplesse de prog exceptionnelle. autrefois le programme etait une fonction figée du debut a la fin. aujourd'hui led programme est constitué d'une multitude de fonctions(petits bouts de codes).
dans notre exemple :

je marche, je marche peut être comparé à la fonction principale
on la nomme MAIN

quelq'un m'interpele et me dit a gauche est la fonction vaagauche
a la fin de vaagauche il y a  je marche, je marche curieux c'est la fonction MAIN

et oui ! on a sauté d'une fonction a l'autre
nous pouvons donc decomposer un programme en une multitude de petites fonctions appelé :OBJETS !!!!!


Petit rappel historique à titre d'information :

Un microprocesseur,partie centrale de notre matériel,  traite des informations qui rentrent et qui sortent
par exemple, je rentre 000001010111011 j'effectu une adition et je sors 11101110
a l'epoque des informaticiens ont inventé le "langage assembleur", langage assez difficile a maitriser qui traduit ces 000111 en code du style :
MOV 3H,CS
CALL INT3
ce qui est un peu plus compréhensible par l'homme mais qui reste difficile à assimiler pour le commun des mortels.
le langage assembleur etant trop compliqué et les ordi devenant de plus en plus performant il a fallut  changer de langage
Notre bon vieux "bilou gatsou" nous a sorti son BASIC
qui est en fait une surcouche de l'assembleur.
c'est a dire, par exemple,
print"bonjour"

 equivaudra en assembleur a :

MOV 32,CH DS 23 , CALL INT45

le basic "interpretait" les ecritures de code comprehensibles par tous les programmeurs contenues dans un fichier .BAS.
Seulement , le code etait exécuté du début jusqu'à la fin , on dit qu'il est STRUCTURE.
Avec la puissante de calcul toujours grandissante de nos machine, et la gestion multitaches, Il a fallut ameliorer cela.
La notion de POO arrivait a grand pas avec le c

LA PROGRAMMATIO ORIENTEE OBJET OU POO
nous ne pouvons pas parler de poo sans parler du C, langage precurseur de ce nouveau mode de programmation.

en C on utilise ce principe de bout de fonction(appelé objet) qui sont stocké dans des "bibliotheques"
ainsi pour prendre un exemple, je veux ecrire bonjour a l'ecran avec le basic,

c'est print"bonjour"


en C , j'importe la bilibotheque stdio.c (entree sorite affichage ecran)
puis j'ai maintenant accès à l'affichage ecran et un printf"bonjour" et ca marche
pourquoi faire plein de petites bibliotheques pour le c ?
tu n'inclu a ton prog que ce que tu as besoin


mais ATTENTION !
la difference fondamentale entre le c et le basic est enorme
avec le c tu inclu tes librairies (petits bouts de code) puis tu COMPILES !
la compilation et le fait de passer du code ecrit et transformer ton code en assembleur pour creer un executable autonome.
C'est a dire qu'il marche sour toute plateforme sans les librairies
en basic c'est different !
 c'est du code INTERPRETé !
c'est a dire que ta machine lit ton prog au debut et "raisonne" comme ceci

Je lis PRINT alors je dois ecrire une chose a l"ecran. ensuite "bonjour" donc positionne le curseur pour ecrire bonjour, ensuite...
pas de compilation en basic alors ?
non pas de compilation !

mais gambas alors ?
c'est plutot l'interpretation de ton code a travers un petit executable codé en c !
pour verifier mes dires ouvrez cette page et lisez le debut ..http://gambas.shos.fr/news.php
Gambas est un environnement de développem....
C'est pour cette raison qu'un logiciel en gambas ne pourra tourner que sur une machine qui possede ce fameux petit executable appeléé RUNTIMES !
 y a t'il un runtime independant de l'ide de gambas?
oui pas obliger d'installer gambas mais les runtimes uniquement !a ne pas confondre les runtimes de windaubes qui sont tout autre chose.
difference runtime wind / gambas ?
les runtimes windaube sont plutot des librairies graphiques en plus . Pourquoi ne peut pas inclure ces Runtimes dans les éxécutables des prog en Gambas ? parce que... ce n'est pas un executable tout simplement. c'est un langage interprété qui demande a etre lu par l'executable gambas



Concept de creation de programme
gambas est composé d'une iDE qui permet de definir l'interface graphique
pour programmer il faut DEFINIR le besoin..
un exemple : la gestion d'entretien d'une voiture,
il faut clairement expliquer le projet
et DECOMPOSER en plein de petits bouts  notre probleme
sous forme d'arboresence

exemple :
tout en haut la voiture
ensuite en dessous les pneus
dessous les pneu, changement tous les
a coté passage en pneus neige le...
ensuite on remonte
huile
en dessous vidange le
a cote controle le...
J'oubliais a vidange le
en dessous
je rentre dans la FONCTION vidange et commence a decrire la FONCTION :
ouvrir bouchon
vider huile
remettre bouchon
remplir huile
Mmmm... mais dans la fonction cela ressemble a de la programmation structurée
et oui !
on part du debut et on va a la fin de la fonction en suivant une structure
la METHODOLOGIE pour definir  notre besoin
en general j'ecris les grandes lignes sur un papier en reflechissant unpeu au contenu des fonctions
ce qui fait que mon prog pourra etre repirs jour apres jour en ajoutant une fonction
et puis une autre
etc...
en résumé, on DEFINI le besoin
on recence les fonctions dans une arborescence

2 eme partie l'interface graphique
La on s'amuse
exemple ma fonction vidange dans l'exemple :
une textbox pour saisir la quantite d'huille
un bouton pour faire la vidange
un timer pour decompter les goutes d'huiles
etc...
l'inspiration quoi !



3eme partie : LE CODE
l'ide gambas est tres bien faite
et il m'est impossible de me rappeler toutes les instructions du gambas basic
alors je bosse en multi ecran
a gauche l'ide
et a droite l'aide gambas
voila je debute le programme par la fonction que j'ai envi
je commence par la fonction vidange
elle me plait celle la
par definition etsi vous lisez comment ecrire le code gambas dans la doc il est dit
une fonction commence par

PUBLIC SUB
nomdelafonction_evenement()

et fini par

 END

donc j'ai tous les outils pour realiser ma fonction :

PUBLIC SUB vidange()
END

une autre fonction allez !

la fonction attentionmanquedhuile

PUBLIC SUB attentionmanquedhuile()
END

voila pour le concept POO.
Merci de votre attention.
A bientôt


Creation date : 07/06/2009 @ 22:13
Last update : 07/06/2009 @ 22:13
Category : Lessons
Page read 4536 times


Print the article Print the article


react.gifReactions to this article


Reaction #2 

by spheris 08/03/2011 @ 11:22

ericigor5962,
Votre remarque est pertinente. Merci pour l'information. Seriez-vous d'accord pour corriger éventuellement les fautes de frappe et m'envoyer l'article par mail afin que je puisse le modifier?
D'avance merci.
Bonne semaine.
wink

Reaction #1 

by ericigor5962 07/03/2011 @ 15:14

C'est avec regret que je vous informe qu'il y a un peu trop de faute de frappe.eekcry

QUICK MENU
SEARCH




LANGUAGE
COMPONENTS
Other
LANGUAGE
Where, who?
VISITS

   visitors

   visitors online

ARCHIVES GAMBAS 1/2
^ Top ^