Programmation
Transcription
Programmation
Annexe : La Programmation Informatique GLOSSAIRE Table des matières La Programmation......................................................................................................2 Les langages de programmation..................................................................................2 Java.............................................................................................................................2 La programmation orientée objet................................................................................2 Classe et Objet............................................................................................................3 API et Bibliothèque Logicielle....................................................................................3 Environnement de développement intégré..................................................................4 Atelier de génie logiciel...............................................................................................4 Compilateur................................................................................................................4 Éditeur de texte..........................................................................................................4 Code ASCII.................................................................................................................4 Termes.........................................................................................................................5 LT St Jean Baptiste De La Salle 1/5 ©Avignon 2009 Annexe : La Programmation Informatique La Programmation La programmation dans le domaine informatique est l'ensemble des activités qui permettent l'écriture des programmes informatiques. C'est une étape importante de la conception de logiciel. La programmation représente usuellement le codage, c’estàdire la rédaction du code source d'un logiciel. On utilise plutôt le terme développement pour dénoter l'ensemble des activités lié à la création d'un logiciel. Pour écrire des programmes informatiques, on utilise un langage de programmation. Les langages de programmation Les langages de programmation permettent de définir les ensembles d'instructions effectuées par l'ordinateur lors de l'exécution d'un programme. Il existe des milliers de langages de programmation, la plupart d'entre eux étant réservés à des domaines spécialisés. Ils font l'objet de recherches constantes dans les universités et dans l'industrie. Java Java est le nom d’une technologie mise au point par Sun Microsystems qui permet de produire des logiciels indépendants de toute architecture matérielle. Le langage Java est un langage de programmation orienté objet. Java est sous licence GNU GPL depuis novembre 2006. Un programme java s’exécute dans une machine virtuelle, dite machine virtuelle Java . Il contient le bytecode (code binaire) Java qui est le résultat de la compilation d’un programme écrit en Java par le compilateur Java (javac). La Java Virtual Machine (JVM, en français Machine virtuelle Java) est une machine virtuelle permettant d’interpréter et d’exécuter le bytecode Java. Ce programme est spécifique à chaque plateforme ou couple (machine/système d’exploitation) et permet aux applications Java compilées en bytecode de produire les mêmes résultats quelle que soit la plateforme (le slogan Compile once, run everywhere), tant que celleci est pourvue de la machine virtuelle Java adéquate. Depuis des années, Sun Microsystems appelle Java la « technologie Java » dans son ensemble. En pratique, beaucoup de programmeurs utilisent le mot « Java » pour désigner le langage de programmation, tandis que la plateforme d’exécution est appelée « JRE » Java Runtime Environment, environnement d’exécution Java) et le système de compilation : « JDK » (Java Development Kit) plutôt que « compilateur Java ». La programmation orientée objet La programmation orientée objet (POO) ou programmation par objet, est un style fondamental de programmation informatique qui consiste en la définition et l'assemblage de briques logicielles appelées objets. Un objet représente un concept, une idée ou toute entité du monde physique, comme une voiture, une personne ou encore une page d'un livre. Les langages de programmation orientée objet (POO) les plus connus sont : C++, Java, C#, Objective C, Eiffel, Python, Smalltalk ... LT St Jean Baptiste De La Salle 2/5 ©Avignon 2009 Annexe : La Programmation Informatique Classe et Objet Concrètement, un objet est une structure de données et qui répond à un ensemble de messages. Cette structure de données définit son état tandis que l'ensemble des messages qu'il comprend décrit son comportement : Les données (ou champs) qui décrivent sa structure interne sont appelées ses attributs ; ➢ L'ensemble des messages forme ce que l'on appelle l'interface de l'objet ; c'est seulement à travers de celuici que les objets interagissent entre eux. La réponse à la réception d'un message par un objet est appelée une méthode (méthode de mise en oeuvre du message). ➢ La classe est une structure informatique particulière dans le langage objet. Elle décrit la structure interne des données et elle définit les méthodes qui s'appliqueront aux objets de même famille (même classe) ou type. API et Bibliothèque Logicielle Une API (Application Programming Interface) est une interface de programmation qui fournit un ensemble de fonctions, procédures ou classes mises à disposition des programmes informatiques par une bibliothèque logicielle, un système d'exploitation ou un service. Les bibliothèques servent à regrouper les opérations les plus utilisées dans les programmes informatiques, afin d’éviter la redondance de la réécriture de ces opérations dans tous les programmes. Une bibliothèque statique contient des fonctions qui seront intégrées au code généré par le compilateur (édition de liens statique). L’inconvénient est qu’un programme ainsi obtenu n’est pas mis à jour lorsque la bibliothèque change. L’avantage est que le programme seul est autonome. Une bibliothèque dynamique est une bibliothèque qui contient des fonctions qui seront intégrées au code au moment de son exécution (édition de liens dynamique). L’avantage est que le programme est à jour visàvis de la mise à jour des bibliothèques. L’inconvénient est que l’exécution dépend de l’existence de la bibliothèque sur le système cible. LT St Jean Baptiste De La Salle 3/5 ©Avignon 2009 Annexe : La Programmation Informatique Environnement de développement intégré Un environnement de développement intégré (EDI ou IDE pour Integrated Development Environment) est un programme regroupant un ensemble d'outils pour le développement de logiciels. En règle générale, un EDI regroupe un éditeur de texte, un compilateur, des outils automatiques de fabrication, et souvent un débogueur. On peut également trouver dans un EDI un système de gestion de versions et différents outils pour faciliter la création de l'interface graphique (GUI pour Graphical User Interface) ou IHM (Interface Homme Machine). Atelier de génie logiciel On désigne par atelier de génie logiciel (AGL) un ensemble de programmes informatiques permettant euxmêmes de produire des programmes de manière industrielle. Alors qu'un compilateur, par exemple, ne peut que traduire un langage informatique vers un autre, la réalisation de programmes, notamment au sein d'équipes nombreuses, requiert bien d'autres activités qui sont généralement couvertes par un AGL. Compilateur Un compilateur est un programme informatique qui traduit un langage, le langage source, en un autre, appelé le langage cible. En pratique, un compilateur sert le plus souvent à traduire un code source écrit dans un langage de programmation en un autre langage, habituellement un langage d'assemblage ou un langage machine. Le compilateur n'est qu'un maillon de la chaîne qui permet de fabriquer un logiciel. En fin de chaîne de fabrication, on obtiendra un code binaire exécutable par une machine. Éditeur de texte On utilise un éditeur de texte pour produire le code source d'un logiciel. Un éditeur de texte produit des fichiers texte codé en ASCII. On a l'habitude de fixer une extension aux fichiers sources permettant d'identifier facilement le langage de programmation utilisé. Par exemple : l'extension .java désignera des fichiers sources en langage Java, .c des fichiers sources en langage C, etc . Code ASCII La norme ASCII (American Standard Code for Information Interchange « Code américain normalisé pour l'échange d'information ») est la norme de codage de caractères en informatique la plus connue et la plus largement compatible. Cette norme définit 128 caractères numérotés de 0 à 127 et codés en binaire de 0000000 à 1111111. Sept bits suffisent donc pour représenter un caractère codé en ASCII. Toutefois, les ordinateurs travaillant (presque tous) sur huit bits (un octet) depuis les années 1970, chaque caractère d'un texte en ASCII est stocké dans un octet et possède donc un code ASCII correspondant. Les caractères de numéro 0 à 31 et le 127 ne sont pas affichables ; ils correspondent à des commandes de contrôle de terminal informatique (par exemple le caractère 13 est le retour chariot). Le caractère numéro 32 est l'espace. Beaucoup de pages de codes étendent l'ASCII en utilisant le 8e bit pour définir des caractères numérotés de 128 à 255. LT St Jean Baptiste De La Salle 4/5 ©Avignon 2009 Annexe : La Programmation Informatique Termes Certaines traductions en langue anglaise sont indiquées en italique. Bogue Défaut de conception ou de réalisation se manifestant par des anomalies de fonctionnement. bug Classe Modèle décrivant un objet informatique. Compatibilité Qualité d'un matériel ou d'un logiciel conforme aux règles d'interface d'un système informatique défini, et dont l'introduction n'altère pas les conditions de fonctionnement de ce système. Diagramme de classe Représentation graphique des relations entre classes. Donnée Représentation d'une information sous une forme conventionnelle destinée à faciliter son traitement. data Débogueur Programme d'aide à l'élimination des bogues. debugger Implanter to implement Implémenter to implement Installer un logiciel ou un soussystème donné en réalisant les adaptations nécessaires à leur fonctionnement dans un environnement défini. Réaliser la phase finale d'élaboration d'un système qui permet aux matériels, aux logiciels et aux procédures d'entrer en fonction. Information Élément de connaissance susceptible d'être représenté à l'aide de conventions pour être conservé, traité ou communiqué. Informatique Science du traitement rationnel, notamment par machines automatiques, de l'information considérée comme le support des connaissances humaines et des communications dans les domaines technique, économique et social. Utilisé comme adjectif : qui se rapporte à l'informatique. Interface Jonction entre deux matériels ou logiciels leur permettant d'échanger des informations par l'adoption de règles communes, physiques ou logiques. Logiciel Ensemble des programmes, procédés et règles, et éventuellement de la documentation, relatifs au fonctionnement d'un ensemble de traitement de données. software Matériel Ensemble des éléments physiques employés pour le traitement de données. hardware Objet informatique Unité de programme réutilisable constituée d’un ensemble cohérent et protégé de données et d’opérations. Pilote Programme de gestion des échanges avec un périphérique. driver Synonyme : gestionnaire de périphérique. Processus Enchaînement et évolution temporelle ordonnés de procédés. Communément, un programme en cours d'exécution. Système d'exploitation Logiciel gérant un ordinateur, indépendant des programmes d'application mais indispensable à leur mise en oeuvre. operating system LT St Jean Baptiste De La Salle 5/5 ©Avignon 2009