Turbo pascal 5.5
<span class="mw-headline" id="Turbo_pascal_5.5″>Turbo pascal 5.5
Turbo Pascal est un environnement de développement intégré pour le langage Pascal. Sa puissance et son prix démocratique ont fait son succès.
Histoire
Le compilateur est basé sur le compilateur Pascal Blue Label initialement écrit en 1981 par Anders Hejlsberg Nascom pour le système d’exploitation informatique avec cassette Nassy. Il a été réécrit comme le Compass Pascal pour le système d’exploitation CP / M, et il prit le nom de Pascal Poly (société basée de données Poly Hejlsberg) avant d’être racheté par Borland et produit des systèmes DOS et CP / M.
Lorsque la première version de Turbo Pascal PC compatible est apparu en 1983, le concept de Integrated Development Environment (IDE) a été relativement peu connu. Cela, plus la puissance et la vitesse du compilateur (compiler un laissez-passer), auquel s’ajoute le prix plus bas pratiqués par Borland (49,95 $ en 1983) ont créé un grand succès et a coulé le compilateur Microsoft Pascal (vendu dans 500 dollars).
En gérant les messages d’erreur non-licenciés, le code a été très compact afin que le compilateur que l’éditeur (plein écran) peut rester en permanence dans la mémoire RAM: 16 kilo-octets. L’absence de l’utilisation du disque fait aussi des compilations très rapide.
Il convient d’ajouter que les codes produits par le compilateur sont libres de droits.Microsoft entendu la revendication de droits contraires à ces codes, car ils nécessairement inclus modules de la bibliothèque développée par Microsoft.
Delphi programmation fenêtrée
En 1995, pour contrer de programmation visuelle de Microsoft et Visual Basic, Delphi Borland sort est-il, un compilateur qui génère du code vraie machine. Ce langage emprunte clairement certaines caractéristiques du langage C en ajoutant, par exemple, le soutien pour les classes et, par conséquent, un système de programmation objet plus complet. Il a également fondé la VCL pour les bibliothèques d’interface Win32 pour Windows, facilitant grandement la development.Finally, grâce à Delphi pour la première fois, Pascal est un des événements linguistiques.
En 2001, Borland Kylix produit, équivalent à Delphi pour le monde Linux.
Exemple de source Lazarus
Voici un exemple de fichier Pascal associé à une fenêtre (Form1: TForm1) contenant une étiquette (texte). Ce fichier est généré automatiquement et est la structure de base pour la programmation. C’est-à-dire que vous pouvez éditer, etc complète. Les petits points sont des marqueurs lors de l’édition. Ils sont invisibles à l’exécution. La source et Delphi fenêtres sont très similaires.
Petite explication: les {} $ unit1.lrs je peux lier la classe TForm1, décrivant un fichier de ressources fenêtre qui contient la conception unit1.lrs de la fenêtre. Avec Lazare lrs fichier est un fichier intermédiaire créé automatiquement par le compilateur de la lfm informations sur les fichiers et les directives de compilation (y compris la possibilité de choisir la bibliothèque de widgets). Delphi directive équivalent aurait été $ {R} unit1.dfm et il n’y a pas file.Otherwise intermédiaires, il aurait été placé dans l’interface.
Compatibilité
Delphi ne fonctionne que sur Windows. Kylix, son équivalent officielle, fonctionne sur Linux et Unix. Malheureusement, si Delphi continue à évoluer, le développement de Kylix a été arrêté. Par conséquent les versions de Delphi 7 ci-dessus sont moins compatibles avec Kylix. En outre, la compatibilité Delphi / Kylix applications ne peuvent utiliser la bibliothèque CLX. Les applications utilisant la VCL ne peut pas être utilisé avec Kylix.
En ce qui concerne Free Pascal et Delphi / Kylix, de grands progrès ont été réalisés sur la compatibilité des compilateurs. Aujourd’hui, près de 99% de code compatible. Toutefois, un certain nombre de remarques sont les suivants:
Le Pascal GNU n’est pas très populaire parmi les fans de Pascal (il est souvent critiqué par les puristes d’être écrit en C et Pascal pas comme les autres).Avec moins de cotisants eux-mêmes moins concernés (ils font du C), le projet bénéficie des mêmes avances que Free Pascal.It est tout à fait compatible avec les anciens programmes en Turbo Pascal, mais est fourni avec les bibliothèques de base, et donc limité en mode graphique. Fans ou fenêtres Lazare Delphi / Kylix aura beaucoup de travail à réaliser leurs programmes sur GNU Pascal.
Pour résumer, si vous faites un programme compatible avec Turbo Pascal (texte en particulier), vous pouvez le compiler sans trop de difficultés avec le compilateur de votre choix. L’émergence des graphiques et des fenêtres a compliqué les bibliothèques de compatibilité rendre plus difficile mais pas impossible. Quoi qu’il en soit, plus vous utilisez les dernières technologies logicielles, plus la compatibilité entre les compilateurs (et les possibilités de portage) sera compromise.
Portage
En utilisant un compilateur disponible sur plusieurs plates-formes rend cette tâche plus facile. L’utilisation de fonctions spécifiques à un système est à éviter, mais si nécessaire nous pouvons tirer le code suivant:
Le couple Delphi / Kylix est une bonne solution simple pour le portage Windows / Linux mais il est limité à ces deux systèmes, et nécessite l’utilisation de bibliothèques CLX.Portage d’applications pour les applications VCL CLX est simple mais fastidieuse car elle implique une refonte de l’interface entière. Enfin Kylix étant plus développé, son usage est maintenant déconseillé.
Lazare est la meilleure solution pour le développement multi-plateforme. Son compilateur, le compilateur Free Pascal est capable de générer des exécutables pour quasiment toutes les plateformes actuelles (c’est un compilateur croisé), en cours d’exécution Lazare lui-même sur toutes ces plates-formes. Arrêt à l’aide des fonctions spécifiques au système (appels directs aux bibliothèques Win32 par exemple, ou en utilisant l’assembleur), il va compiler le code sans aucun problème quelle que soit le système hôte et le système de réception. Un inconvénient tout de même, Lazarus utilise par défaut dans la version 1.x GTK (donc assez vieux) en ce qui concerne les interfaces graphiques pour Linux, ce qui nécessite l’installation de cette bibliothèque, puis il est considéré comme obsolète. Cela dit, des versions basées sur Qt 4 sera bientôt disponible, le soutien pour Qt 4 a considérablement progressé. Il est également tout à fait possible de recompiler Lazarus pour utiliser GTK 2 au lieu de GTK 1. La version Windows utilise les bibliothèques Win32 directement pour son affichage, mais vous pouvez aussi recompiler Lazarus pour utiliser GTK 1 ou 2, ou Qt
Généricité
Il est possible de définir des types génériques, c’est-à-dire peut être utilisé avec différents types possibles sans avoir à réécrire tout le code. Ceci est un exemple FreePascal:
La dépendance mutuelle des unités
Il est possible que les différentes unités de programmes sont utilisés les uns aux autres, mais il ya une limitation. En effet, en Pascal, vous pouvez vous référer à une autre unité à deux emplacements possibles, à savoir dans l’interface et implementation.If deux unités se réfèrent les uns aux autres dans leur interface, on obtient une erreur de dépendance circulaire. Nous pouvons contourner ce problème en utilisant une troisième unité de base pour les deux autres, et / ou en utilisant des types plus abstrait au niveau des interfaces. Cette limitation n’exist
e pas dans Visual Basic.
Versions
Au fil des ans, Borland a amélioré l’EDI, mais aussi le langage de programmation.
En 1995, Borland Turbo Pascal abandonné et remplacé par l’environnement de développement rapide d’application (RAD) de Delphi, qui comprenait le langage objet Pascal. La version actuelle de Delphi prend toujours en charge tous les enrichissements des premiers produits de Pascal et le modèle ‘ancien’ objet.
Turbo Pascal sont encore largement utilisés, notamment dans l’éducation, il est inclus dans le programme d’ordinateur particulier des classes préparatoires aux écoles de commerce. Pascal est également autorisé à vérifier les compétitions ordinateur classes préparatoires scientifiques, bien que le Caml est prédominante dans l’enseignement de ce sujet.
Pascal est un langage de programmation impératif qui se caractérise par une syntaxe claire, rigoureuse et facilitant la structuration des programmes. Cette clarté et la rigueur sont que Pascal était encore récemment souvent utilisé dans l’enseignement.
Outre la syntaxe et de sa gravité, le langage Pascal possède de nombreux points communs avec C (voir repères). La base du langage Pascal a été conçu fins purement éducatives et était assez limité (pas de chaînes, par exemple), mais il a connu des développements ont fait un langage complet et efficace. Relativement récente, la généricité ajouté en Delphi et Lazarus (appelés modèles en C).
Les versions actuelles de Pascal, utilisées en dehors du monde de l’éducation sont des extensions telles que Turbo Pascal (mode texte), Object Pascal (POO) et Delphi (fenêtré). Il existe des versions libres comme Free Pascal et Lazarus (fenêtré). Vous pouvez programmer en Pascal pour DOS, Windows, Mac OS ou Linux / Unix ou Palm OS.
Pascal est connu pour avoir aidé à développer le logiciel tout à fait reconnu comme TeX et une partie des premiers systèmes d’exploitation Macintosh. Sa syntaxe a aussi été repris par d’autres langues comme Ada, Modula-2 (et Modula-3) ou Oberon.
Le Turbo-Pascal
Turbo Pascal a été écrit par Anders Hejlsberg (son nom a été avant TP, Compass Pascal et Poly Pascal). Très compact (12 K octets) et très rapide car travaillant essentiellement en RAM, il compilées en un seul passage et produit du code machine (x86 DOS) au lieu de P-Code. Il est venu avec un environnement complet (un éditeur de texte et de l’aide en ligne, l’innovation à l’époque, grâce notamment à un système compact de substitution). Au cours des différentes versions, Turbo Pascal apporté son lot d’innovations qui vont continuer à combler certaines lacunes dans le cadre de la langue d’origine.
Ainsi, en 1987, la version 4 apparaît avec un vrai IDE (Integrated Development Environment), 1989 version 5.5 introduit les objets en 1990 la version 6 permet la programmation de Windows (dans la console DOS), les débuts de la event.And depuis 1993, le dernière version, 7, pour DOS et Windows.
Exemple de code: Bonjour tout le monde
Le paramètre de sortie qui suit le nom du programme est maintenant en option (il était obligatoire avec les premières versions des implémentations Pascal). Aujourd’hui, il est la plupart du temps absent.
Contrairement à C, Pascal n’est pas sensible à la casse, c’est-à-dire que les mots réservés (comme commencer) ou les identificateurs (comme écrire ou variable) peut être écrit en majuscules ou en minuscules.
En outre, contrairement C, des déclarations (var dans l’exemple ci-dessus) sont nettement séparés dans une partie du code. Les déclarations locales sont prises au début de la procédure ou la fonction, les déclarations globales, elles se fait nulle part avant le programme principal. Cette ajoute de la clarté de la langue le prix d’un certain manque de souplesse. Nous ne pouvons pas déclarer une variable dans le milieu d’une fonction. Notez que dans Pascal, les déclarations doivent précéder toute utilisation, il est interdit d’utiliser une procédure ou une fonction qui n’a pas encore été déclarée.
Enfin, la distinction entre les procédures et fonctions, présentées dans Pascal, c’est qu’une fois un avantage sur la plupart des autres langues (y compris C) car elle rend possible les erreurs de programmation (par défaut, car d’une syntaxe du compilateur Delphi permet directive ‘étendue’ qui offre la laxisme même que l’utilisation de type C).
Avantages et inconvénients
Le principal avantage de code Pascal est sa clarté, ce qui facilite la lecture. Cet avantage est particulièrement important avec les fonctions de test. Facile à lire en Pascal peut donner des maux de tête à d’autres langues. En outre, la structure du code renforce cette claire: des sections spécifiques pour les déclarations, l’interface notion et l’application, il est inutile de créer un fichier d’interface, la procédure de distinction / fonction … Le mot-clé «avec» – ce qui évite toute re-décrire la hiérarchie d’une structure de données utilisée dans un bloc de début / fin – a beaucoup contribué à la lisibilité du code:
‘