Support de formation initiation à Delphi

Support de formation initiation à Delphi, tutoriel & guide de travaux pratiques en pdf.

INTRODUCTION

Delphi est un système de développement visuel rapide sous Windows (Rapid Application développement) qui permet de créer des applications fenêtrées directement exécutables (.EXE) et redistribuables librement sou Windows ou DOS. Il est à noter qu’i existe une version pour Linux nommée KYLIX (compatible avec les composants CLX, il suffit de recompiler). Sa simplicité d’emploi autorise une utilisation immédiate, car il suffit de cliquer-glisser des composants dans une fiche et de gérer quelques événements pour créer des applications simples. Des assistants, modèles et tuteurs interactifs facilitent la prise en main du logiciel.
Delphi utilise le langage Pascal Orienté Objet (il est toutefois possible d’utiliser d’anciennes sources en Pascal standard grâce au compilateur en ligne de commande). Ce langage est facile à apprendre et beaucoup plus sim ple que le C++ traditionnel. Les objets utilisés ont des propriétés et des méthodes. Les opriétés sont les caractéristiques de l’objet (couleur, taille, …) tandis que les méthodes sont les procédures (classiques ou événementielles) et fonctions qui y sont rattachées.
Des outils puissants sont rattachés à Delphi. Le canevas facilite les graphismes et évite l’appel aux API de Windows (cette solution reste évidemment possible). Les principales boîtes de dialogue de Windows existent en tant qu’objets et sont facilement réutilisables. L’utilitaire BDE permet la création et l’accès aisé aux bases de données de tous types. La liaison avec ACCESS se fait directement, grâce à un driver natif intégré.
Il est facile d’écrire des DLL utilisables par n’importe quel autre programme sous Windows. Ces DLL peuvent contenir des fiches Delphi, des procédures, des données ou des ressources graphiques (bitmaps, icônes, curseurs).
La création d’objets (visuels ou non) réutilisables est un gain de temps appréciable pour le développement. L’intégration des objets Active Xpeut compléter la bibliothèque existante.
Il existe d’autres systèmes de développement rapide sous Windows. Delphi est particulièrement bien placé:
• moins de lignes de code et rapidité de compilation
• possibilité d’utiliser des procédures événementielles partagées
• notion de modèles réutilisables (fiches, menus, objets)
• orientation objet totale et native
• richesse des composants fournis: pas d’OCX à acheter en complément
• assembleur intégré, compilateur en ligne de commande
• débogage facile au niveau du source et du processus
• possibilité d’allocation dynamique de la mémoire en utilisant les pointeurs

Nouveautés

Consulter l’aide en ligne sous « nouveautés » On note des:
• la vue arborescente des objets
• le débogueur d’applications WEB, serveur WEB
• de nombreux nouveaux composants dont
o « TActionManager » qui permet de centraliser les procédures événementielles de chaque fenêtre
o les composants CLX qui peuvent être portés sur LINUX o les composants ADO

PROGRAMMATION ORIENTEE OBJET

PRESENTATION

Sans le savoir, vous utilisez des objets dans votre ordinateur. Par exemple, vous désirez changer la carte graphique. C’est un objet: vous ne connaissez pas exactement son fonctionnement interne mais vous désirez des résultats. Vous pouvez interchanger facilement cet objet puisque l’interface est standard (connecteurs). Vous n’avez donc pas besoin de changer toute l’unité centrale ou de faire des études poussées en électronique pour ce faire. Il suffit d’échanger la carte par une autre plus performante.
L’avantage de cette notion d’objet est la possibilité de partager les composants avec d’autres utilisateurs. Vous pouvez donner votre ancienne carte vidéo à l’un de vos collaborateurs. D’autre part, il n’est pas nécessaire de connaître le détail du fonctionnement de l’objet pour l’utiliser. La maintenance est facilitée, il suffit d’échanger l’objet sans toucher au reste de l’application.

CONCEPTS DE BASE

Propriétés

Procédures
événementielles
Fonctions
Ce sont les composants de l’objet. Sa taille, sa couleur, son nom, … sont des propriétés.
Les propriétés sont initialisées à la création de’objetl et certaines peuvent être modifiées par programmation. Delphi possède un éditeur de propriétés qui permet de les modifier en phase de conception de projet.

Méthodes

Les méthodes relèvent du comportement de l’objet: lles recensent ce que l’objet « sait » faire. S’il sait par exemple faire une multiplication, le nom du module de programme concerné est appelé méthode.

Fonctions

Les fonctions sont des modules (ou sous-programmes) qui retournent une seule valeur ou résultat après acceptation d’un certain nombre ‘arguments d (0 à n).

 Procédures simples

Les procédures sont des modules qui effectuent des actions. Elles acceptent également des arguments. Elles peuvent retourner des arguments modifiés (s’ils sont déclarés en donnée-résultat).

Procédures événementielles

Elles conditionnent les réactions de l’objet vis-à-vis des actions extérieures (clavier, souris, …). Ce sont des procédures appelées par nu déclencheur. Windows recense un grand nombre d’événements dont la nature est précisée par un système de messages internes. Par exemple, le fait d’appuyer sur une touche du clavier ou de déplacer la souris provoque l’émission d’un message interne à Windows qui pourra être traité par la procédure événementielle.

Programmation structurée

Contrairement au premiers langages (basic) qui utilisaient des étiquettes avec des instructions de saut de type « goto » où l’on risquait un enchevêtrement dans le déroulement du programme, la POO demande une programmation modulaire et le langage Pascal est particulièrement adapté. L’écriture d’un programme se fait sous forme de blocs hiérarchisés, ce qui permet une meilleure compréhension. L’indentation des modules donne une lecture proche du développement algorithmique.

L’encapsulation

C’est le concept de base de la POO. L’idée est de assembler les données et les modules de programme dans une seule et même structure appelée objet. Les données sont appelées « propriétés » et les modules sont les « méthodes ». On peut utiliser des méthodes de l’objet sans connaître le détail de l’implémentation de chacune d’elle. L’encapsulation protège les données contre leur utilisation par d’autres modules extérieurs.

L’héritage

Les objets sont capables d’être dérivés à partir objets d’ préexistants. Les objets « fils » héritent les propriétés et méthodes de leur parent de façon automatique. Il suffit alors de rajouter des propriétés et méthodes spécifiques: ce procédé est appelé programmation par exception. De plus, tous les changements effectués dans l’objet « parent » sont répercutés automatiquement sur les objets « descendants » sans manipulation supplémentaire.

Le polymorphisme

Le nom d’une méthode existante peut être réutilisé dans un objet « fils » en déclarant une implémentation différente. Le polymorphisme est la capacité de désigner des méthodes différentes (bien que portant le même nom) en fonction de l’objet concerné. Par exemple le signe « + » peut servir à l’addition, à la concaténation ou à l’incrémentation d’une date.
Dans le cas de redéfinition(OVERRIDE) d’une méthode, il est possible de réutiliser le code hérité (INHERITED) et d’ajouter simplement quelques lignes (qui pourront par exemple redéfinir certaines propriétés).

Développeur ou utilisateur?

On distingue deux catégories de personnes. Les développeurs qui connaissent bien la POO et qui créent des objets et les utilisateurs qui construisent leurs applications à partir de ces objets préfabriqués.

LEXIQUE

La source principale de confusion pour les débutants en POO est le grand nombre de nouveaux termes techniques

Classe (CLASS)

C’est l’ensemble des définitions, propriétés et méthodes qui serviront à créer l’objet. Elle définit la structure de l’objet et quelles en seront les propriétés. Ses modifications seront répercutées sur les classes descendantes.

Objet (OBJECT)

C’est une instance de la classe. Il a une existence physique et occupe de la place en mémoire. Il est créé à partir d’une classe. Toutes les modifications effectuées en exécution n’affectent en rien les descendants de sa classe.

Instanciation

C’est le processus qui crée en mémoire un objet basé sur une classe.

Constructeur (CONSTRUCTOR)

C’est le module de la classe qui dit au système comment effectuer l’instanciation de celle-ci. Il réserve de la place mémoire et initialise certaines propriétés. Delphi appelle cette méthode « Create ».

Destructeur (DESTRUCTOR)

C’est l’inverse du constructeur. Ce module est chargé de libérer la mémoire occupée par l’objet. (« Destroy » en Delphi).

Classe ancêtre

C’est une classe à partir de laquelle sont héritées les propriétés et les méthodes. Ce n’est pas obligatoirement la classe parente immédiate, mais elle peut être plus élevée hiérarchiquement.

Classe parent

C’est la classe immédiatement supérieure au niveau hiérarchique

Classe enfant

C’est la classe immédiatement inférieure au niveau hiérarchique

Classe descendante

Son niveau hiérarchique est inférieur à la classe considérée. Ce n’est pas obligatoirement la classe enfant qui est située directement au niveau inférieur suivant.

Propriétaire(OWNER)

Une application est propriétaire des fenêtres qu’lel manipule. Une fenêtre est propriétaire des objets quelle contient. Un panneau, comme la barre d’outils, est propriétaire de ses turbo-boutons…

Héritage

Une classe hérite automatiquement des propriétés et méthodes de ses ancêtres.

Cours gratuitTélécharger le cours complet

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *