Environnement de programmation



Documents pareils
Évaluation et implémentation des langages

Institut Supérieure Aux Etudes Technologiques De Nabeul. Département Informatique

Le langage C++ est un langage de programmation puissant, polyvalent, on serait presque tenté de dire universel, massivement utilisé dans l'industrie

Annexe : La Programmation Informatique

Cours 1 : Qu est-ce que la programmation?

Formation Word/Excel. Présentateur: Christian Desrochers Baccalauréat en informatique Clé Informatique, 15 février 2007

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions

Chapitre 1 : Introduction aux bases de données

Le chiffre est le signe, le nombre est la valeur.

Manuel d utilisation 26 juin Tâche à effectuer : écrire un algorithme 2

INF2015 Développement de logiciels dans un environnement Agile. Examen intra 20 février :30 à 20:30

Cours 1 : La compilation

Gé nié Logiciél Livré Blanc

Algorithme. Table des matières

Chapitre 1 I:\ Soyez courageux!

COMMUNICATEUR BLISS COMMANDE PAR UN SENSEUR DE POSITION DE L'OEIL

Intelligence Artificielle et Systèmes Multi-Agents. Badr Benmammar

L informatique en BCPST

Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if

L'instruction if permet d'exécuter des instructions différentes selon qu'une condition est vraie ou fausse. Sa forme de base est la suivante:

ACTIVITÉ DE PROGRAMMATION

Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application

basée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB Olivier Augereau Formation UML

Traitement de texte : Quelques rappels de quelques notions de base

modélisation solide et dessin technique

1. Introduction Création d'une macro autonome Exécuter la macro pas à pas Modifier une macro... 5

Programmation C. Apprendre à développer des programmes simples dans le langage C

Anne Tasso. Java. Le livre de. premier langage. 10 e édition. Avec 109 exercices corrigés. Groupe Eyrolles, , ISBN :

Rappels sur les suites - Algorithme

Le codage informatique

Processus d Informatisation

Introduction à Windows Script Host DescoDev

Logiciel Libre Cours 3 Fondements: Génie Logiciel

Créer le schéma relationnel d une base de données ACCESS

Arithmétique binaire. Chapitre. 5.1 Notions Bit Mot

Chapitre 2. Classes et objets

Prise en main du BusinessObjects XI R2 Service Pack 2/ Productivity Pack

Chapitre I Notions de base et outils de travail

Fiche animateur : module écriture collaborative

Cours d Informatique

Siemens Grâce aux documents intelligents, un leader mondial de la haute technologie augmente l efficacité et la précision de ses employés.

Et si vous faisiez relire et corriger vos textes par un professionnel?

Microsoft Application Center Test

Introduction à NetCDF

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

Nom de l application

Dossier projet isn 2015 par Victor Gregoire

GUIDE Excel (version débutante) Version 2013

TPS 4 Objectifs du programme aide à la lecture et à l'écriture Les fonctions principales lecture à haute voix

Éléments de programmation et introduction à Java

Antidote et vos logiciels

Introduction à la programmation Travaux pratiques: séance d introduction INFO0201-1

Attestation de maîtrise des connaissances et compétences au cours moyen deuxième année

I. Introduction aux fonctions : les fonctions standards

Comment mettre en page votre livre

UE Programmation Impérative Licence 2ème Année

Documentation utilisateur. [EIP] TransLSF

Accès instantané aux mots et aux locutions Le dictionnaire électronique offre une traduction rapide d'un mot ou d'une locution

Télécom Nancy Année

Python - introduction à la programmation et calcul scientifique

Logiciel Enterprise Guide Version 1.3 Windows

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.

Master Métiers de l enseignement scolaire. Mémoire professionnel de deuxième année UTILISER ET COMPRENDRE L ORDINATEUR EN MÊME TEMPS :

De quoi avez-vous besoin pour ce manuel?

TP1. Outils Java Eléments de correction

Conventions d écriture et outils de mise au point

Conception de circuits numériques et architecture des ordinateurs

Découvrir OpenOffice Comment optimiser et formater votre ebook avec OpenOffice

FORMATION PROFESSIONNELLE

Types de REA produites dans le cadre de la séquence pédagogique

Projet de Veille Technologique

Projet d informatique M1BI : Compression et décompression de texte. 1 Généralités sur la compression/décompression de texte

Cours 1 : Introduction. Langages objets. but du module. contrôle des connaissances. Pourquoi Java? présentation du module. Présentation de Java

Comment formater votre ebook avec Open Office

1 TD 2 : Construction d'une chier Acrobat et envoi par

Cégep de Saint Laurent Direction des communications et Direction des ressources technologiques. Projet WebCSL : Guide de rédaction web

Jexcel. V1.1.4 Manuel d'utilisation. modifié le 16 nov. 2004

programmation S initier à la la Avec des exemples en C, C++, C#, Java et PHP Avec des exemples en C, C++, C#, Java et PHP Claude Delannoy

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile

Demande d admission au Centre pédagogique Lucien-Guilbault Secteur primaire

Éléments d'architecture des ordinateurs

Antidote et vos logiciels

Ateliers Python+Qt : Premiers pas : Comment développez ses propres interfaces graphiques sur le RaspberryPi?

Microsoft OSQL OSQL ou l'outil de base pour gérer SQL Server

Règles d élaboration d une évaluation par Questions à Choix Multiple Joël LECHEVALLIER 1

TP : Shell Scripts. 1 Remarque générale. 2 Mise en jambe. 3 Avec des si. Systèmes et scripts

PROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES

Algorithmique & Langage C IUT GEII S1. Notes de cours (première partie) cours_algo_lgc1.17.odp. Licence

Plan. Exemple: Application bancaire. Introduction. OCL Object Constraint Language Le langage de contraintes d'uml

Création de jeu vidéo

Université de Lorraine Licence AES LIVRET DE STAGE LICENCE

1. Introduction Création d'une requête...2

INTERSYSTEMS CACHÉ COMME ALTERNATIVE AUX BASES DE DONNÉES RÉSIDENTES EN MÉMOIRE

Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère

Conservation des documents numériques

TeamViewer 9 Manuel Management Console

Indications pour une progression au CM1 et au CM2

Transcription:

Environnement de programmation 1.La programmation Les ordinateurs sont stupides! à un point dont on n'a pas idée. Ils ne réagissent ni ne répondent qu'à des situations ou à des données anticipées par le programmeur. En fait, leur puissance ne tient pas à une quelconque intelligence, mais à leur vitesse. Un programmeur est un utilisateur un peu particulier. Il réalise des applications qui seront utilisées par d'autres utilisateurs. Les programmeurs débutants attendent souvent de l'ordinateur qu'il se montre astucieux, et sont évidemment frustrés quand il se révèle incapable de comprendre les commandes les plus simples. Ce n'est que lorsqu'ils réalisent sa stupidité qu'ils commencent vraiment à progresser. En fait, l'essentiel de la programmation consiste surtout à apprendre à penser de façon simpliste. a. Un programme, qu'est-ce que c est? Un programme informatique est une succession d'instructions exécutables par l'ordinateur. Un ordinateur exécute très exactement ce que le programme lui ordonne de faire, sans manifester ni imagination ni pondération. Il appartient au programmeur de s'abaisser à son niveau. La machine suivra toujours ses instructions à la lettre : elle ne sait pas faire autrement. La programmation est le processus par lequel on crée des programmes. L'ordinateur ne sachant manipuler que du binaire, c'est-à-dire une succession de 0 et de 1, il est nécessaire d'utiliser un langage de programmation avec lequel on peut écrire des instructions proches de notre langage, qui seront traduites dans un langage compréhensible par l'ordinateur. b. Les langages de programmation Les peuples communiquent au moyen de langages variés. Ces langages peuvent être écrits, lus, parlés, entendus et même signés. Il existe des langages spéciaux pour s'adresser à l'ordinateur, lequel ne peut comprendre les langages humains. Ces langages artificiels sont appelés langages de programmation. Comme il existe des tas de langages de programmation et qu'il faut en choisir un, notre choix s'est porté sur Visual Basic, qui est un langage simple mais suffisamment complet pour nous permettre de créer rapidement de petites applications graphiques. Microsoft fournit tout un environnement de programmation Visual Basic facilitant grandement la vie du programmeur. HEVs bet/sac Octobre 2001 Page 1/5

Les langages informatiques modernes utilisent des mots humains, suivent une grammaire, une syntaxe et une ponctuation, et se lisent parfois vaguement comme des langages naturels. L apprentissage d un langage de programmation est donc similaire à l apprentissage d une langue naturelle, car il faut apprendre: La syntaxe : comment écrit-on correctement? La sémantique : quel est le sens de ce que l'on écrit? Les différences principales avec un langage naturel sont: Le langage de programmation est beaucoup moins riche (moins de mots et de constructions syntaxiques). Le langage de programmation n'est absolument pas ambigu (chaque "phrase" a un seul et unique sens très précis, il n'y a pas d'interprétation possible). Syntaxe La syntaxe d'un langage de programmation décrit les formes correctes que peuvent prendre les programmes. La phrase suivante en français «Les chevals courent la prairie dans» est syntaxiquement incorrecte. Elle ne suit pas les règles d écriture. Toutefois un humain parlant le français arrive à corriger l erreur et à comprendre le sens de cette phrase. Par contre, un ordinateur n est pas capable de corriger les erreurs de syntaxe. Sémantique La sémantique correspond à la signification que peuvent prendre les différentes structures syntaxiques d'un langage. La phrase française suivante «Le repas a maintenant tourné contre l ascension» est syntaxiquement correcte (pas de faute de français), mais elle n a aucun sens, on dit que sa sémantique est incorrecte. Un programme sémantiquement incorrect va s exécuter mais qui «plante» en cours d exécution, ou ne s arrête plus, ou ne fournit pas le résultat voulu. c. Le travail du programmeur Tout programmeur commence avec une idée : tâche à accomplir ou problème à résoudre. Elle consiste à créer la séquence d'instructions à confier à la machine pour qu'elle exécute la tâche ou qu'elle résolve le problème. La première étape consiste à réfléchir à la façon dont on accomplirait la tâche soimême. Par exemple, comment pourrait-on vérifier l'orthographe de tous les mots d'un document? Il faudrait identifier tous les mots du texte et les comparer avec ceux d'un dictionnaire. Il serait impossible de programmer un ordinateur pour accomplir ce travail sans savoir comment l'accomplir soi-même. HEVs bet/sac Octobre 2001 Page 2/5

Quand on sait comment réaliser un travail soi-même, on peut concevoir le programme, c est-à-dire spécifier de manière formelle la marche à suivre pour accomplir la tâche. C est ce qu on appelle un algorithme. On peut voir l algorithme comme une recette de cuisine qui décrit la suite d opérations que l ordinateur doit effectuer. Exemple L algorithme (simplifié) de vérification orthographique peut être le suivant : - identifier les mots du texte - chercher chaque mot dans le dictionnaire Pour obtenir des programmes de qualité, il est nécessaire de prendre du temps pour les concevoir avant de les réaliser. Tout comme un architecte prend le temps d'établir des plans et de discuter avec le client de sa future maison. Une fois la conception terminée, on peut commencer à écrire le code, en n'oubliant pas d'y placer des commentaires explicatifs. Une fois le codage terminé, on peut tester son programme pour y dénicher d éventuelles erreurs d exécution, que l on appelle bogue (bug). Le débogage est un travail de détective qui consiste à trouver les erreurs dans le code et à les corriger. La séquence conception, codage, test et débogage paraît saine en théorie. Cependant, dans la pratique, le développement logiciel n'est pas toujours aussi simple. Il arrive fréquemment que l'écriture du code ou les résultats des tests amènent à modifier le dessin du programme. A mesure que le programme prend forme, on découvre que telle fonction qui paraissait intéressante ne donne pas le résultat escompté et qu'on a une meilleure idée pour la remplacer. Il arrive aussi que l'on soit amené à recoder une partie du programme pour en améliorer les performances. Pseudo-code Dans ce cours, les programmes que vous allez construire étant simples, la partie conception ne sera en fait qu'une réflexion. Réflexion qui aboutira à un pseudo-code. Un pseudo-code est un algorithme écrit en langage courant très simplifié permettant sa traduction aisée et sans ambiguïté dans un langage de programmation quelconque. Exemple Le pseudo-code de l algorithme ci-dessus est le suivant : Identifier les mots du texte POUR chaque mot identifé FAIRE chercher le mot dans le dictionnaire FIN FAIRE HEVs bet/sac Octobre 2001 Page 3/5

2.Les outils du programmeur Un programmeur est également utilisateur d'applications, mais il s intéresse essentiellement aux applications qui lui permettent de réaliser les siennes, c est ce qu il appelle: les outils. Les principaux outils utilisés par le programmeur sont des éditeurs, des compilateurs et des débogueurs. De nos jours tous ces outils sont souvent intégrés dans une même application comme par exemple : Visual Basic, CodeWarrior, Visual C++, Delphi. a. Les éditeurs Les éditeurs ressemblent à des traitements de texte tels que Word, Wordpad, Notepad, etc.). Tout comme eux, ils permettent d'écrire du texte, mais comme ils servent à écrire du code (des lignes dans un certain langage de programmation), ces fonctionnalités des éditeurs sont en partie différentes de celles d'un traitement de texte. Si pour un traitement de texte, on souhaite pouvoir effectuer de la mise en page (marges, en-tête et pied de page, paragraphes, sections, etc.), de la présentation (polices, couleur, etc.), ces fonctionnalités ne sont pas utiles à la programmation, elles troubleraient plutôt le programmeur en le laissant s'égarer dans la présentation de son code. Les fonctionnalités d'un éditeur de code sont: Mise en évidence des mots réservés du langage. Eléments facilitant l'écriture de code avec une syntaxe correcte. Possibilité de regrouper les fichiers de code en projets. Possibilité de compiler, déboguer et exécuter directement depuis l'éditeur. b. Les interpréteurs et compilateurs Un langage informatique est par définition différent du langage machine. Il faut donc le traduire pour le rendre intelligible du point de vue du processeur. Les interpréteurs traduisent au fur et à mesure les instructions du programme, alors que les compilateurs traduisent une fois pour toutes l'ensemble des lignes du programme. Le fichier généré sera autonome, c'est-à-dire qui n'aura pas besoin d'un autre programme pour s'exécuter. On dit d'ailleurs que ce fichier est exécutable ou est un exécutable. Les différents langages de programmation peuvent être soit compilés (Pascal, C, C++, etc.), soit interprétés (Basic, Java, etc.). Un programme compilé a comme avantage de ne plus avoir besoin de programme annexe pour s'exécuter. De plus, la traduction étant faite une fois pour toute, il est plus rapide à l'exécution. Toutefois il est moins souple qu'un programme interprété car à chaque modification du code source, il faudra recompiler le programme pour que les modifications prennent effet. HEVs bet/sac Octobre 2001 Page 4/5

c. Les débogueurs Les débogueurs aident le programmeur à trouver les erreurs dans son programme en lui permettant d'exécuter son programme pas à pas ou de l'interrompre avec des points d'interruption (breakpoints), de visualiser les données utilisées après l'exécution de chaque instruction, de contrôler le déroulement du programme et ainsi de détecter l'endroit de l'erreur. d. Les librairies Les librairies sont des parties de codes et d'exécutables stockés sur la machine qui peuvent être utilisés par plusieurs programmes. HEVs bet/sac Octobre 2001 Page 5/5