هل تريد التفاعل مع هذه المساهمة؟ كل ما عليك هو إنشاء حساب جديد ببضع خطوات أو تسجيل الدخول للمتابعة.



 
الرئيسيةجديد منتدى Dz Screamأحدث الصورالتسجيلدخول


 

 delphi

اذهب الى الأسفل 
كاتب الموضوعرسالة
scream
المِؤسس
scream


delphi Algeri10
scream.1fr1.net
الطاقة : 1835
delphi 2s8mm36
نقاط : 22129915
delphi 10

delphi Empty
مُساهمةموضوع: delphi   delphi Emptyالجمعة 19 نوفمبر 2010 - 23:16

Les fichiers de Delphi

Liste des différents fichiers que vous pourrez être amené à modifier ainsi que leur utilité respective.
Extension du fichier
Description
.DCR
Fichier projet
.DFM
Dessin de la fiche (form) contenant les propriétés des composants graphiques
.DPR
Fichier projet, c'est le coeur de votre application, il faudra lier tout vos différents fichiers contenant du code (.pas) au .DPR.
.PAS
Fichier source contenant le code de l'application
.BDSPROJ
Fichier projet associé au .DPR
.RC
Fichier de ressources Windows
Liste des fichiers générés après la compilation et qu'il n'est pas nécessaire de modifier vous-même.

Extension du fichier
Description
.BPG
Fichier d'un groupe de projet
.DCU
Fichier créé lors de la compilation mais pas indispensable
.DPK
Fichier source d'un paquet
.DOF
Fichier d'option de compilation du projet
.DSK
Préférence de l'IDE
.RES
Fichier de ressources Windows, il peut contenir des icônes, des bitmaps, des sons
Je vais essayer de vous apprendre à coder proprement donc à partir de maintenant, il vous que vous souveniez qu'on code les fonctions et les procédures (vous comprendrez plus tard ce que c'est exactement) dans des fichiers .pas et qu'on les appelle dans le .dpr .
Votre premier projetPour créer un nouveau projet Delphi (.dpr) rendez dans
Fichier > Nouveau > Autres > Projets Delphi > Application console
Project1.dpr

program Project1;
{$APPTYPE CONSOLE}
uses

SysUtils;
begin

{ TODO -oUser -cConsole Main : placez le code ici }

end.
Vous devriez avoir un code ressemblant à celui ci-dessus.
La première ligne définit le nom du programme. Vous pouvez changer le Projet1 en Premierprojet et enregistrer le fichier avec comme nom Premierprojet (.dpr ou .bdsproj). uses sert à inclure des fichiers de fonctions ou de procédure, souvent des .pas.
SysUtils contient les fonctions et procédures de base de Delphi, dont les procédures d'entrées et de sorties.
Je vous conseille de l'inclure dans tous vos fichiers.

{ TODO -oUser -cConsole Main : placez le code ici } peut être supprimé.begin et end. définissent respectivement le début et la fin de votre code à proprement parler.
Types de donnéesLes variables et leur type doivent être déclarées avant d'être utilisées. Le type d'une variable doit être choisi en fonction de ce que contiendra cette variable.integer : ce sont les nombres entiers (exemple : 42 ou -5) single ou double : sont utilisés comme type pour les nombres à virgules (exemple : 3.3) On peut appliquer des opérations aux variables numériques :
+ : addition
- : soustraction
* : multiplication
/ : division
mod : modulo (ne peut être appliqué qu'aux entiers (integer)) char : est utilisé pour contenir un seul caractère (exemple : m)string : est utilisé pour contenir des chaînes de caractères, des phrases (exemple : Hello world) Pour concaténer (assembler) 2 chaînes de caractères on utilise l'opérateur + .
Exemple : 'Hello ' + 'world' équivaut à 'Hello world' boolean : ce sont sont des booléens. Il y a 2 valeurs booléennes True et False, respectivement Vrai et Faux. Il existe beaucoup d'autres types mais je vous ai présenté les plus utilisés.
Variables, Constantes et ParamètresUn paramètre représente les informations que l'on peut passer à une fonction ou à une procédure.

Une variable est une donnée déclarée à l'intérieur d'une fonction, et qui n'est accessible que dans celle-ci. C'est une donnée locale, vous pouvez la modifier comme bon vous semble. Il existe également des variables globales qui sont accessibles dans tout le dpr et le projet mais il ne faut les utiliser qu'exceptionellement. Quand on utilise une variable, elle doit être déclarée dans tous les fichiers où elle est utilisée. Seules les variables passées en paramètre d'une fonction/procédure n'ont pas besoin d'être déclarée dans la fonction/procédure ou elles sont utilisées.Pour déclarer une variable, on utilise le mot clé var. On peut déclarer les variables dans le .DPR ou dans les fonctions/procédures de vos fichiers .pas .

Déclarer une variable dans un .dpr, juste après les uses.
Premierprojet.dpr

program Premierprojet;
{$APPTYPE CONSOLE}
uses

SysUtils;
var

nom_variable1 : type_variable1;

nom_variable2 : type_variable2;
begin

{ TODO -oUser -cConsole Main : placez le code ici }

end.
La déclaration des variables dans les fichiers .pas peut se faire de 2 façons (vous allez bientôt vous en servir). La seule chose qui change par rapport à la déclaration dans le .dpr, c'est l'emplacement où l'on déclare les variable, le code reste le même.

Vous pouvez placer un code similaire à celui ci-dessous après interface dans votre .pas (ne le faites pas encore).

var
nom_variable1 : type_variable1;
nom_variable2 : type_variable2;

Mais le mieux est de déclarer les variables en local dans les fonctions/procédures, c'est ce que nous ferons dans le reste du cours.
Souvenez-vous qu'elles doivent être déclarées entre la ligne de déclaration de la fonction et le begin.

function nom_fonction(nom_variable1 : type_variable1) : type_resultat;

var
nom_variable2 : type_variable2;
nom_variable3 : type_variable3;

begin
// instructions de votre fonction
end;Les variables nom_variable2 et nom_variable3 ne seront déclarées que dans la fonction nom_fonction. Vous remarquerez que je n'ai pas déclaré nom_variable1 dans les var, simplement parce qu'elle je la passe en paramètre dans ma fonction, dans la parenthèse.

Une constante est un nom que vous associez une fois pour toute à une valeur. C'est utile quand on n'a pas envie de changer une donnée 100 fois dans tout un fichier, on ne change que la déclaration de la constante. Par convention les noms de constante s'écrivent en majuscule.
Leur déclaration se fait aux mêmes endroits que celle des variables, la seule différence est le mot clé qui est const et non var.const
nom_constante1 = 42 ;
nom_constante2 = 'une phrase ou un mot' ;
Les entrées et sorties Les entrées et les sorties sont des procédures qui permettent d'afficher ou d'entrer des données dans la console.write permet de d'afficher une phrase ou une variable.
write('Hello world');
write(x); avec x une variable

read permet de lire un paramètre entré par l'utilisateur.
read(var1); avec var1 une variablewriteln et readln ont la même utilité mais elles sautent automatiquement une ligne après exécution.
Fonctions et procéduresUne fonction est un bout de code qui peut prendre des paramètres, effectue un traitement en fonction de ceux-ci et renvoie un résultat grâce à un result. Cela permet d'automatiser un traitement.
Une fonction renvoie un résultat et un seul, mais elle peut être appelée plusieurs fois. Comme je vous l'ai déjà dit on va coder les fonctions dans des fichiers .pas et non directement dans le .dpr, on va donc créer un fichier .pas : Fichier > Nouveau > UnitéEnregistrez votre fichier .pas avec comme nom fichiersource1, vous devriez obtenir un fichier comme celui ci-dessous.
fichiersource1.pas

unit fichiersource1;
interface
implementation end.
Votre fichier de projet .dpr devrait avoir inclus fichiersource1.pas dans les uses et vous devriez avoir un code ressemblant à celui ci-dessous.
Premierprojet.dpr (ou .bdsproj)

program Premierprojet;
{$APPTYPE CONSOLE}
uses

SysUtils,

fichiersource1 in 'fichiersource1.pas';
begin

{ TODO -oUser -cConsole Main : placez le code ici }

end.
Regardons de plus près le fichier .pas. Pour déclarer une fonction ou une procédure, on doit la déclarer dans la partie interface et la coder dans la partie implementation entre des balises begin et end; .
Attention : il faut conserver le end. à la fin du code.
fichiersource1.pas

unit fichiersource1;
interface

function nom_fonction(nom_variable : type_variable; nom_variable2 : type_variable2) : type_resultat;
implementation

function nom_fonction(nom_variable : type_variable; nom_variable2 : type_variable2) : type_resultat;


begin

result := nom_variable * nom_variable2 ;

end;
end.

Essayez de mémoriser au fur et à mesure la structure du code.function nom_fonction(nom_variable : type_variable; nom_variable2 : type_variable2) : type_resultat ;
Cette ligne permet de déclarer la fonction.

nom_fonction c'est le nom de la fonction, choisissez des noms de fonctions clairs et différents du nom du fichier qui contient ces fonctions.

nom_variable : type_variable choisissez également des noms de variables clairs. Le type de la variable dépend de ce qu'elle contient, on l'a déjà vu plus haut dans le cours (ex : integer, string etc.).
Les variables qui se trouvent entre les parenthèses qui suivent le nom de la fonction sont les variables passées en
paramètres. On peut mettre autant de paramètres que l'ont veut, il faut juste respecter la syntaxe et séparer par un point virgule ( ; ) les différents couples nom_variable : type_variable.

: type_resultat ; définit le type du résultat que renverra la fonction result := nom_variable * nom_variable2 ;
result est spécifique aux fonctions, c'est le résultat que renvoie la fonction. Dans notre cas la fonction renverra le résultat de la multiplication des 2 variables que nous avons passé en paramètres.On va donc donner aux variables des noms plus clair et leur associer des types adaptés.
Votre fichier doit maintenant ressembler à cela :
fichiersource1.pas

unit fichiersource1;
interface

function multiplication(var1 : integer ; var2 : integer) : integer;
implementation

function multiplication(var1 : integer ; var2 : integer) : integer;

begin

result := var1 * var2 ;

end; end.
Nous verrons dans la suite du cours comment appeler une fonction et afficher le résultat.
Nous nous servirons également de cette fonction dans la suite du cours. Une procédure peut également prendre des paramètres mais elle ne renvoie aucun résultat. Cela signifie pas qu'on ne peut rien afficher avec, au contraire. Nous allons créer une procédure dans le même fichier.
fichiersource1.pas

unit fichiersource1;
interface

function multiplication(var1 : integer ; var2 : integer) : integer;


procedure hello(nom1 : string);
implementation

function multiplication(var1 : integer ; var2 : integer) : integer;

begin

result := var1 * var2 ;

end;
procedure hello(nom1 : string);

begin

writeln('Bonjour ' + nom1) ;

end;
end.
Vous avez vite dû comprendre que la procédure hello affichait Bonjour suivi de la variable rentrée en paramètre. Comme je l'ai déjà dit, je vous conseille de coder vos fonctions et vos procédures dans un fichier .pas que vous inclurez dans les uses du .dpr.
Votre premier programmeOn va maintenant mettre en pratique toutes ces informations et utiliser les fichiers que nous avons crées jusqu'a présent. Mais avant cela nous allons voir quelques règles de base de la syntaxe Delphi. - chaque instruction doit être suivie d'un ;
- l'opérateur d'affectation est :=
- les commentaires n'ont aucune influence sur le code de votre application, vous pouvez en mettre pour vous aider quand vous relirez votre code. Pour insérer des commentaires dans le code source, on peut utiliser trois techniques différentes :
On peut écrire un commentaire sur plusieurs lignes en plaçant le texte entre bornant le texte entre accolades { } ou entre une paire astérisques/parenthèses (* *). Ou on peut écrire un commentaire d’une ligne en la commençant par deux barres obliques (slash) : //.

Nous avons créé une fonction et une procédure dans fichiersource1.pas, nous allons maintenant les utiliser dans notre fichier projet (.dpr ou .bdsproj).
Premierprojet.dpr (ou .bdsproj)

program Premierprojet;
{$APPTYPE CONSOLE}
uses

SysUtils,

fichiersource1 in 'fichiersource1.pas';
begin

writeln(multiplication(3,5)) ;

readln ;

end.
Vous vous souvenez que l'on a crée la fonction multiplication ?
multiplication(3,5) : va donc appeler la fonction multiplication crée dans fichiersource1.pas avec en paramètres 3 et 5 (les paramètres doivent être rangés dans le bon ordre mais si ici cela n'a pas d'influence sur le résultat).
On utilise la procedure de sortie writeln pour afficher le résultat de multiplication(3,5) dans la console.

multiplication(3,5) va renvoyer le result de la fonction multiplication mais on doit l'afficher c'est pour cela qu'on utilise writeln.

readln est normalement utilisée pour permettre à l'utilisateur d'entrer une variable mais on l'utilise ici (sans les parenthèses et le nom d'une variable) pour empêcher l'application de se fermer jusqu'a ce que l'utilisateur appuie sur une touche, c'est une sorte de pause.

Exécuté ce code en cliquant sur la flèche verte dans la barre d'outil ou en appuyant sur F9, une console s'ouvrira et vous verrai affiché le résultat de la multiplication de 3 et 5, c'est à dire 15.
Essayez d'enlever le readln, vous constaterez que la console se ferme automatiquement.Nous avons vu comment afficher le résultat d'une fonction grâce a la fonction write (ou writeln), nous allons maintenant voir que la fonction write n'est pas nécessaire dans le cas d'une procédure.
Contrairement à la fonction, la procédure renvoie tout ce qu'elle a fait, c'est comme si l'on incluait la procédure dans le dpr.
Le writeln qui est dans la procedure hello va donc être affiché. Ajoutons un appel à la procédure hello avec en paramètres une chaîne de caractère (= string) entre des quotes (ex : ' votre chaîne de caractère' ).
Premierprojet.dpr (ou .bdsproj)

program Premierprojet;


{$APPTYPE CONSOLE}
uses

SysUtils,

fichiersource1 in 'fichiersource1.pas';
begin

writeln(multiplication(3,5)) ;

readln ;

hello('zmaster') ;

readln ;

end.
Entraînez-vous à utiliser les procédures write et read ainsi qu'a vous servir des fonctions déclarées dans un autre fichier.
On va améliorer un peu notre programme pour le rendre plus dynamique et fonctionnel.

On va faire en sorte que notre programme nous demande notre prénom et qu'il nous dise Bonjour grâce à la procedure hello et qu'il nous demande ensuite les 2 chiffres qu'on veut multiplier avant d'afficher le résultat.
On va coder cette partie dans le dpr. Comme vous avez dû le comprendre, il va nous falloir 3 variables car on va entrer dans le programme notre prénom (type string) et les 2 chiffres à multiplier qui seront des integer (entiers). On commence par déclarer les variables, ce qui nous donne :
الرجوع الى أعلى الصفحة اذهب الى الأسفل
https://scream.1fr1.net
 
delphi
الرجوع الى أعلى الصفحة 
صفحة 1 من اصل 1
 مواضيع مماثلة
-
»  Exemple GeoLite City avec Delphi

صلاحيات هذا المنتدى:لاتستطيع الرد على المواضيع في هذا المنتدى
 :: قسم البرمجيات :: Delphi/Pascal-
انتقل الى: