Évaluation et implémentation des langages
|
|
- Louis Savard
- il y a 8 ans
- Total affichages :
Transcription
1 Évaluation et implémentation des langages Les langages de programmation et le processus de programmation Critères de conception et d évaluation des langages de programmation Les fondations de l implémentation des langages de programmation CSI 3525, Évaluation et Implémentation, page 1
2 Les langages de programmation et le processus de programmation Programmer, c est plus que simplement écrire du code. Pourquoi étudier les langages de programmation? Les paradigmes et applications de la programmation. CSI 3525, Évaluation et Implémentation, page 2
3 Programmer, c est plus que simplement écrire du code. Avant d écrire du code, il est essentiel de débuter par une analyse. Un algorithme est développé (ou emprunté), le coût de la solution est évalué. Après avoir écrit le code, le programme doit être maintenu. Les langages de programmation transmettent des instructions aux ordinateurs. Qu est-ce qu un ordinateur comprend? Comment l ordinateur nous répondra? CSI 3525, Évaluation et Implémentation, page 3
4 Programmer, c est plus que simplement écrire du code (suite) Comment les langages de programmation diffèrent-ils des langages naturels? Qu est-ce qui fait de quelqu un un bon programmeur? Un programmeur devrait-il connaître plus d un langage de programmation? CSI 3525, Évaluation et Implémentation, page 4
5 Pourquoi étudier des langages de programmation? Pour mieux comprendre la relation entre les algorithmes et les programmes. Pour apprendre à trouver des solutions générales, indépendantes du langage choisi. Pour pouvoir mieux choisir les outils de programmation les plus appropriés. CSI 3525, Évaluation et Implémentation, page 5
6 Pourquoi étudier les langages de programmation? (suite) Pour apprécier le fonctionnement des ordinateurs en sachant comment les langages sont implémentés. Pour faciliter l apprentissage de nouveaux langages. Pour savoir développer de nouveaux langages formels (pour l entré de données par exemple). Pour constater comment les langages influencent l informatique en tant que discipline, et encouragent les bonnes pratiques de développement de logiciels. CSI 3525, Évaluation et Implémentation, page 6
7 Les différent types de langages: Paradigmes de programmation Différent langages permettent de résoudre différents problèmes de façon différentes. Une opération peut être exprimée dans différents langages, puis exécutée sur la même machine. CSI 3525, Évaluation et Implémentation, page 7
8 Différents paradigmes de programmation Langages impératifs: Ces langages permettent au programmeur d attribuer des valeurs à des espaces de mémoire, afin de décrire explicitement la façon de résoudre un problème. (Java, C++, Pascal) Langages déclaratifs: Ces langages permettent au programmeur de déclarer diverse entités et relations. Le programme pourra ensuite utiliser ces déclarations pour résoudre le problème. (Prolog, Lisp) CSI 3525, Évaluation et Implémentation, page 8
9 Langages Déclaratifs Programmation fonctionnelle: Un programme consistant de déclarations de fonctions. Un appel à une fonction est fait et retourne un élément qui dépend de la valeur de ses paramètres qui peuvent, eux même, être des appels à des fonctions.(lisp) Programmation logique: Un programme consistant de déclarations de séries d axiomes et de règles de déduction, et de la présentation d un théorème à prouver. Le programme répond si le théorème peut être prouvé ou non à partir des déclarations. (Prolog) CSI 3525, Évaluation et Implémentation, page 9
10 Langages Impératifs Programmation procédurale: Le programme est divisé en blocs pouvant contenir des variables locales, ainsi que d autres blocs. (C, Fortran, Pascal) Programmation orientée objet: Des objets se rapportant au problème sont définis, avec leurs attributs et leur façon de réagir à différent événements. Le problème est résolu grâce a l interaction entre ces objets. (Java, Smalltalk) Programmation concurrente: Langage permettant l utilisation de plusieurs CPU opérants en parallèle. Les donnés peuvent être partagées entre les processeurs ou restreintes à certains d entre eux. (Ada 95, Java) CSI 3525, Évaluation et Implémentation, page 10
11 Spécialisation d un langage Langages à usage général: la plupart des langages que vous connaissez. Langages spécialisés: ex: matlab (mathématiques), Cobol (production de rapports), SQL (bases de données), Perl (langage script). CSI 3525, Évaluation et Implémentation, page 11
12 Niveau de complexité et d abstraction Langages de bas niveau (langage machine, assembleur). Langages de haut niveau (les langages les plus utilisés). Langages de très haut niveau (Prolog, ainsi que certain langages spécialisés). Au delà des langages de programmation: Environnements de programmation et outils de développement logiciel (JBuilder, Visual C++) CSI 3525, Évaluation et Implémentation, page 12
13 Domaines d application Traitement de données ("business applications"). Important dans le passé, maintenant largement remplacé par les bases de données, tableurs, et logiciels spécialisés. Calcul scientifique (incluant l ingénierie). Aujourd hui, largement influencé par la conception de nouveau hardwares tel que les super-ordinateurs ou les ordinateurs vectoriels. CSI 3525, Évaluation et Implémentation, page 13
14 Domaines d application (2) Intelligence artificielle et autres applications en marge de l informatique. Logiciel éducatifs, jeux De nouveaux hardware sont proposés (présentement surtout simulés) pour l intelligence artificielle: réseaux de neurones, ordinateurs à connexion. Applications en interne compilateurs, systèmes d exploitation, GUI, API. CSI 3525, Évaluation et Implémentation, page 14
15 Critères pour la conception et l évaluation de langages de programmation Lisibilité Aptitude à l écriture Fiabilité Coût CSI 3525, Évaluation et Implémentation, page 15
16 Lisibilité Ce critère est subjectif, mais important. La lisibilité d un langage est rendu essentielle par les usages courant du génie logiciel, en particulier, pour les fins d évolution, de maintenance, et de mise à jour des logiciels. Abstraction: permet la généralité des programmes, l abstraction procédurale, et l abstraction des données. Absence d ambiguïtés Absence d une surabondance de choix: Par exemple, certain langages permettent d écrire les boucles de plusieurs façon différentes. CSI 3525, Évaluation et Implémentation, page 16
17 Lisibilité (2) Orthogonalité: l absence de restrictions sur la façon de combiner les primitives du langage. (Il est plus facile de constater le manque d orthogonalité.) Exemple: Un tableau peut-il contenir des éléments de n importe quel type? Résulte en une diminution du nombre de cas spéciaux. Peut être poussé trop loin (Algol 68). CSI 3525, Évaluation et Implémentation, page 17
18 Lisibilité (3) Expressivité des structures de contrôle et de données. Qu est-ce qui est plus facile à lire et maintenir: un long programme bâtie à partir d éléments simple? -ouun programme bref bâtie à partir d éléments complexes et spécialises? Exemples d expressivité: la récursivité, le retour arrière incorporé de Prolog, la recherche dans les langages de base de données. Exemple de peu d expressivité: instructions d assembleur. Apparence: syntaxe élégante, commentaires. CSI 3525, Évaluation et Implémentation, page 18
19 Aptitude à l écriture Encore subjectif. Abstraction: comme pour la lisibilité Simplicité: Basic et Pascal sont simples Prolog est conceptuellement simple, mais difficile en pratique. C++ et Java? Expressivité (encore). Modularité: aussi la présence d outils de modularisation et la capacité d être incorporé dans un environnement de programmation intégré. CSI 3525, Évaluation et Implémentation, page 19
20 Fiabilité et Coût Fiabilité: Vérification des types, traitement des exceptions et erreurs, l absence d ambiguïtés (et en générale la lisibilité et l aptitude a l écriture). Coût associées à l utilisation du langage. Temps nécessaire au développement (facilité de programmation, disponibilité de code, de librairies et de documentation). Facilité d implémentation: (affecte la disponibilité et le coût des compilateurs) Algol 68 a échoué, Ada presque; l implémentation de Pascal, C, C++ et Java ont été de grand succès. Temps nécessaire pour traduire, et l efficacité du code résultant. Portabilité et standardisation. CSI 3525, Évaluation et Implémentation, page 20
21 L implémentation de langages de programmation Processeurs de langage Machines virtuelles Modèles d implémentation Compilation et exécution CSI 3525, Évaluation et Implémentation, page 21
22 Processeurs de langage Un processeur de langage est un dispositif (logiciel ou matériel (hardware)) capable d exécuter des instructions de ce langage. La traduction est le processus qui transforme un programme d un langage à un autre, tout en préservant son intégrité et sa fonctionnalité. Le langage cible peut être directement exécutable sur l ordinateur, ou (plus souvent) devra à nouveau être traduit en un langage de niveau inférieur. CSI 3525, Évaluation et Implémentation, page 22
23 Machines virtuelles Une machine virtuelle est une réalisation logicielle (simulation) d un processeur de langage. Il est difficile de programmer directement pour le hardware le hardware est donc généralement «enveloppé» de plusieurs couches logicielles. Une couche peut être partagé par plusieurs processeurs de langage,chacun ayant sa propre machine virtuelle au dessus de cette couche. CSI 3525, Évaluation et Implémentation, page 23
24 Exemple de couches partagées Tout processeurs de langage nécessitent une capacité d entrées /sorties. Tout les processeurs de langage doivent effectuer des calcules (utiliser le CPU). CSI 3525, Évaluation et Implémentation, page 24
25 Machines virtuelles Il existe normalement une hiérarchie de machines virtuelles: Au plus bas niveau: hardware ou matériel. Au plus haut niveau: les langages les plus intuitifs pour le programmeur. Chaque couche est exprimée uniquement en fonction de la précédente, ce qui assure une abstraction approprié. CSI 3525, Évaluation et Implémentation, page 25
26 Exemple de hiérarchie de machines virtuelles Layer 0: Layer 1: Layer 2: Layer 3: Layer 4: Layer 5: Layer 6: Layer 7: hardware microcode langage de machine appels de système code indépendant de la machine langage de haut niveau (ou assembleur) programme d application données d entrées [aussi un langage] CSI 3525, Évaluation et Implémentation, page 26
27 Layer 0: Layer 1: Layer 2: Layer 3: Machines virtuelles exemples IBM Netvista avec Pentium 4 de Intel, 2GHz Langage machine IBM Intel Windows XP Java byte-code Layer 4: Java 2.0 (code developé en JRE 1.4.0) Layer 5: Layer 6: comparateur intelligent de programmes C++, écrit en Java deux programmes C++ à comparer afin de trouver les similarités CSI 3525, Évaluation et Implémentation, page 27
28 Layer 0: Layer 1: Machines virtuelles exemples (2) IBM Netvista avec Pentium 4 de Intel, 2GHz Langage machine IBM Intel Layer 2: Windows NT 4.0 Layer 3: Java byte-code Layer 4: JDK 1.2 Layer 5: Layer 6: Layer 7: Layer 8: Une implémentation en Java de Prolog Une implémentation en Prolog de mysql Un patron de base de données défini et créé des enregistrements à insérer dans la base de données CSI 3525, Évaluation et Implémentation, page 28
29 Compilation: Modèles d implémentation Traduit le programme en un langage de machine virtuelle de couche plus basse. Le code résultant sera exécuté plus tard. Interprétation: Divise le programme en petit fragments (représentants des éléments de syntaxe). Une boucle traduit et exécute immédiatement les fragments. CSI 3525, Évaluation et Implémentation, page 29
30 Modèles d implémentation(2) La compilation pure et l interprétation pure sont peu utilisées. L implémentation des langages de programmation utilise souvent un mélange des deux. - exemple: Java est compilé en «bytecode», qui est par la suite interprété. On désigne un processeur de langage comme interpréteur s il ressemble plus à un interpréteur qu à un compilateur, dans le cas contraire il est considéré comme un compilateur. CSI 3525, Évaluation et Implémentation, page 30
31 Modèles d implémentation(3) Certain langages se prêtent mieux à l interprétation, par exemple Prolog et Lisp qui sont utilisés de manière interactive. D autre se prêtent mieux à la compilation, tel que C++ et Java. Il existe des versions compilés de Prolog et Lisp: Une boucle d interprétation de haut-niveau régît l interaction usagée. Les prédicats / fonctions sont compilées en un format optimisé qui est interprété. CSI 3525, Évaluation et Implémentation, page 31
32 Programme source Compilation et exécution compilateur Analyse lexicale (scaning) Optimisation du code Programme abstrait (optimisé) Génération du code Séquence d unités lexicales Table de symboles Programme abstrait (code intermédiaire) Code exécutable (object code) Analyse syntaxique (parsing) Arbre syntaxique Analyse sémantique Chargeur/Éditeur de liens (Loader/Linker) Programme résultant Données d entré Ordinateur Données de sortie CSI 3525, Évaluation et Implémentation, page 32
Éléments de programmation et introduction à Java
Éléments de programmation et introduction à Java Jean-Baptiste Vioix (jean-baptiste.vioix@iut-dijon.u-bourgogne.fr) IUT de Dijon-Auxerre - LE2I http://jb.vioix.free.fr 1-20 Les différents langages informatiques
Plus en détailCours 1 : La compilation
/38 Interprétation des programmes Cours 1 : La compilation Yann Régis-Gianas yrg@pps.univ-paris-diderot.fr PPS - Université Denis Diderot Paris 7 2/38 Qu est-ce que la compilation? Vous avez tous déjà
Plus en détailChapitre I Notions de base et outils de travail
Chapitre I Notions de base et outils de travail Objectifs Connaître les principes fondateurs et l historique du langage Java S informer des principales caractéristiques du langage Java Connaître l environnement
Plus en détailLes Langages Informatiques
Les Langages Informatiques Les évolutions Michel Riguidel (riguidel@enst.fr) Table des Matières Table des Matières 2 Segmentation Informatique 3 Autrefois 3 Maintenant 3 Informatique 3 Informatique, Ordinateur,
Plus en détailInstitut Supérieure Aux Etudes Technologiques De Nabeul. Département Informatique
Institut Supérieure Aux Etudes Technologiques De Nabeul Département Informatique Support de Programmation Java Préparé par Mlle Imene Sghaier 2006-2007 Chapitre 1 Introduction au langage de programmation
Plus en détailLe génie logiciel. maintenance de logiciels.
Le génie logiciel Définition de l IEEE (IEEE 1990): L application d une approche systématique, disciplinée et quantifiable pour le développement, l opération et la maintenance de logiciels. Introduction
Plus en détailMachines virtuelles Cours 1 : Introduction
Machines virtuelles Cours 1 : Introduction Pierre Letouzey 1 pierre.letouzey@inria.fr PPS - Université Denis Diderot Paris 7 janvier 2012 1. Merci à Y. Régis-Gianas pour les transparents Qu est-ce qu une
Plus en détailINTRODUCTION A JAVA. Fichier en langage machine Exécutable
INTRODUCTION A JAVA JAVA est un langage orienté-objet pur. Il ressemble beaucoup à C++ au niveau de la syntaxe. En revanche, ces deux langages sont très différents dans leur structure (organisation du
Plus en détailIntroduction aux Bases de Données Relationnelles Conclusion - 1
Pratique d un : MySQL Objectifs des bases de données Où en sommes nous? Finalement, qu est-ce qu un? Modèle relationnel Algèbre relationnelle Conclusion SQL Conception et rétro-conception Protection de
Plus en détailCours d Algorithmique et de Langage C 2005 - v 3.0
Cours d Algorithmique et de Langage C 2005 - v 3.0 Bob CORDEAU cordeau@onera.fr Mesures Physiques IUT d Orsay 15 mai 2006 Avant-propos Avant-propos Ce cours en libre accès repose sur trois partis pris
Plus en détailTraduction des Langages : Le Compilateur Micro Java
BARABZAN Jean-René OUAHAB Karim TUCITO David 2A IMA Traduction des Langages : Le Compilateur Micro Java µ Page 1 Introduction Le but de ce projet est d écrire en JAVA un compilateur Micro-Java générant
Plus en détailL informatique en BCPST
L informatique en BCPST Présentation générale Sylvain Pelletier Septembre 2014 Sylvain Pelletier L informatique en BCPST Septembre 2014 1 / 20 Informatique, algorithmique, programmation Utiliser la rapidité
Plus en détailCours 1 : Introduction Ordinateurs - Langages de haut niveau - Application
Université de Provence Licence Math-Info Première Année V. Phan Luong Algorithmique et Programmation en Python Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application 1 Ordinateur Un
Plus en détailProgrammation C. Apprendre à développer des programmes simples dans le langage C
Programmation C Apprendre à développer des programmes simples dans le langage C Notes de cours sont disponibles sur http://astro.u-strasbg.fr/scyon/stusm (attention les majuscules sont importantes) Modalités
Plus en détailLogiciel Libre Cours 3 Fondements: Génie Logiciel
Logiciel Libre Cours 3 Fondements: Génie Logiciel Stefano Zacchiroli zack@pps.univ-paris-diderot.fr Laboratoire PPS, Université Paris Diderot 2013 2014 URL http://upsilon.cc/zack/teaching/1314/freesoftware/
Plus en détailÉléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if
Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if Pierre Boudes 28 septembre 2011 This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike
Plus en détailPréparation à l examen EFA en Macro
Préparation à l examen EFA en Macro Exercice sur les macros en Word / Excel Les questions suivantes doivent constituer un bref rafraîchissement et vous aider à situer le niveau de vos connaissances : Question
Plus en détailDocumentation d information technique spécifique Education. PGI Open Line PRO
Documentation d information technique spécifique Education PGI Open Line PRO EBP Informatique SA Rue de Cutesson - ZA du Bel Air BP 95 78513 Rambouillet Cedex www.ebp.com Equipe Education : 01 34 94 83
Plus en détailChapitre 2 : Abstraction et Virtualisation
Virtualisation et Cloud Computing Chapitre 2 : Abstraction et Virtualisation Objectifs Présenter la notion de niveaux d abstraction séparés par des interfaces bien définies Description des avantages et
Plus en détailCours 1 : Introduction. Langages objets. but du module. contrôle des connaissances. Pourquoi Java? présentation du module. Présentation de Java
Langages objets Introduction M2 Pro CCI, Informatique Emmanuel Waller, LRI, Orsay présentation du module logistique 12 blocs de 4h + 1 bloc 2h = 50h 1h15 cours, 45mn exercices table, 2h TD machine page
Plus en détailUE Programmation Impérative Licence 2ème Année 2014 2015
UE Programmation Impérative Licence 2 ème Année 2014 2015 Informations pratiques Équipe Pédagogique Florence Cloppet Neilze Dorta Nicolas Loménie prenom.nom@mi.parisdescartes.fr 2 Programmation Impérative
Plus en détailCours Bases de données
Informations sur le cours Cours Bases de données 9 (10) séances de 3h Polycopié (Cours + TD/TP) 3 année (MISI) Antoine Cornuéjols www.lri.fr/~antoine antoine.cornuejols@agroparistech.fr Transparents Disponibles
Plus en détailJade. Projet Intelligence Artificielle «Devine à quoi je pense»
Jade Projet Intelligence Artificielle «Devine à quoi je pense» Réalisé par Djénéba Djikiné, Alexandre Bernard et Julien Lafont EPSI CSII2-2011 TABLE DES MATIÈRES 1. Analyse du besoin a. Cahier des charges
Plus en détailAnalyse,, Conception des Systèmes Informatiques
Analyse,, Conception des Systèmes Informatiques Méthode Analyse Conception Introduction à UML Génie logiciel Définition «Ensemble de méthodes, techniques et outils pour la production et la maintenance
Plus en détailAnnexe : 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
Plus en détail4. Utilisation d un SGBD : le langage SQL. 5. Normalisation
Base de données S. Lèbre slebre@unistra.fr Université de Strasbourg, département d informatique. Présentation du module Contenu général Notion de bases de données Fondements / Conception Utilisation :
Plus en détailVulgarisation Java EE Java EE, c est quoi?
Paris, le 1 Février 2012 Vulgarisation Java EE Java EE, c est quoi? Sommaire Qu est ce que Java? Types d applications Java Environnements Java Versions de Java Java EE, c est quoi finalement? Standards
Plus en détailEnvironnements de développement (intégrés)
Environnements de développement (intégrés) Introduction aux EDI, la plateforme Eclipse Patrick Labatut labatut@di.ens.fr http://www.di.ens.fr/~labatut/ Département d informatique École normale supérieure
Plus en détailLangage et Concepts de ProgrammationOrientée-Objet 1 / 40
Déroulement du cours Introduction Concepts Java Remarques Langage et Concepts de Programmation Orientée-Objet Gauthier Picard École Nationale Supérieure des Mines de Saint-Étienne gauthier.picard@emse.fr
Plus en détailGenDbg : un débogueur générique. Didier Eymery Jean-Marie Borello Jean-Marie Fraygefond Odile Eymery Philippe Bion
GenDbg : un débogueur générique Didier Eymery Jean-Marie Borello Jean-Marie Fraygefond Odile Eymery Philippe Bion 2008 Qui sommes nous? Centre d électronique de l Armement (CELAR) Maîtrise et protection
Plus en détailArchitectures web/bases de données
Architectures web/bases de données I - Page web simple : HTML statique Le code HTML est le langage de base pour concevoir des pages destinées à être publiées sur le réseau Internet ou intranet. Ce n'est
Plus en détailInstallation Client (licence réseau) de IBM SPSS Modeler 14.2
Installation Client (licence réseau) de IBM SPSS Modeler 14.2 Les instructions suivantes permettent d installer IBM SPSS Modeler Client version 14.2 en utilisant un licence réseau. Ce présent document
Plus en détailChapitre 1 Qu est-ce qu une expression régulière?
Chapitre 1 Qu est-ce qu une expression régulière? Les ordinateurs n ont pas du tout la même conception des textes que nous : pour nous, un texte est un ensemble d idées couchées sur papier. Nous nous en
Plus en détailRebol, un langage «différent»
02 Rebol (1) Chap 01 Page 13 Mardi, 18. septembre 2001 6:06 18 1 Rebol, un langage «différent» «Il est temps de faire quelque chose de différent.» Cette phrase de Carl Sassenrath, le concepteur de Rebol,
Plus en détailbasée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB www.enseirb.fr/~legal Olivier Augereau Formation UML
basée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB www.enseirb.fr/~legal Olivier Augereau Formation UML http://olivier-augereau.com Sommaire Introduction I) Les bases II) Les diagrammes
Plus en détailCH.3 SYSTÈMES D'EXPLOITATION
CH.3 SYSTÈMES D'EXPLOITATION 3.1 Un historique 3.2 Une vue générale 3.3 Les principaux aspects Info S4 ch3 1 3.1 Un historique Quatre générations. Préhistoire 1944 1950 ENIAC (1944) militaire : 20000 tubes,
Plus en détailIBM Tivoli Monitoring, version 6.1
Superviser et administrer à partir d une unique console l ensemble de vos ressources, plates-formes et applications. IBM Tivoli Monitoring, version 6.1 Points forts! Surveillez de façon proactive les éléments
Plus en détailTable des matières Avant-propos... V Scripting Windows, pour quoi faire?... 1 Dans quel contexte?
Avant-propos... V CHAPITRE 1 Scripting Windows, pour quoi faire?... 1 Dans quel contexte?.................................................. 1 La mauvaise réputation............................................
Plus en détailM1805 - Études et développement informatique
Appellations Analyste cogniticien / cogniticienne informatique Analyste concepteur / conceptrice informatique Concepteur / Conceptrice analyste informatique Concepteur / Conceptrice d'application informatique
Plus en détailLe langage C++ est un langage de programmation puissant, polyvalent, on serait presque tenté de dire universel, massivement utilisé dans l'industrie
Chapitre I : Les bases du C++ Le langage C++ est un langage de programmation puissant, polyvalent, on serait presque tenté de dire universel, massivement utilisé dans l'industrie du logiciel, et ce depuis
Plus en détailBULK SMS Envoi en masse d un message texte moyennant un téléphone mobile (GSM)
Ministère de l Enseignement Supérieur et de la Recherche Scientifique Ecole Supérieure Privée d Ingénierie et de Technologie BULK SMS Envoi en masse d un message texte moyennant un téléphone mobile (GSM)
Plus en détailProgramme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines)
Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines) Module 1 : Programmer une application informatique Durée
Plus en détailMODULE I1. Plan. Introduction. Introduction. Historique. Historique avant 1969. R&T 1ère année. Sylvain MERCHEZ
MODULE I1 Plan Chapitre 1 Qu'est ce qu'un S.E? Introduction Historique Présentation d'un S.E Les principaux S.E R&T 1ère année Votre environnement Sylvain MERCHEZ Introduction Introduction Rôles et fonctions
Plus en détailINF 1250 INTRODUCTION AUX BASES DE DONNÉES. Guide d étude
INF 1250 INTRODUCTION AUX BASES DE DONNÉES Guide d étude Sous la direction de Olga Mariño Télé-université Montréal (Québec) 2011 INF 1250 Introduction aux bases de données 2 INTRODUCTION Le Guide d étude
Plus en détailOptimisation de logiciels de modélisation sur centre de calcul
Optimisation de logiciels de modélisation sur centre de calcul Gérald Monard Pôle de Chimie Théorique http://www.monard.info/ Introduction Les ordinateurs sont des appareils électroniques permettant d
Plus en détailLES OUTILS D ALIMENTATION DU REFERENTIEL DE DB-MAIN
LES OUTILS D ALIMENTATION DU REFERENTIEL DE DB-MAIN Les contenues de ce document sont la propriété exclusive de la société REVER. Ils ne sont transmis qu à titre d information et ne peuvent en aucun cas
Plus en détailManuel d utilisation 26 juin 2011. 1 Tâche à effectuer : écrire un algorithme 2
éducalgo Manuel d utilisation 26 juin 2011 Table des matières 1 Tâche à effectuer : écrire un algorithme 2 2 Comment écrire un algorithme? 3 2.1 Avec quoi écrit-on? Avec les boutons d écriture........
Plus en détailCours intensif Java. 1er cours: de C à Java. Enrica DUCHI LIAFA, Paris 7. Septembre 2009. Enrica.Duchi@liafa.jussieu.fr
. Cours intensif Java 1er cours: de C à Java Septembre 2009 Enrica DUCHI LIAFA, Paris 7 Enrica.Duchi@liafa.jussieu.fr LANGAGES DE PROGRAMMATION Pour exécuter un algorithme sur un ordinateur il faut le
Plus en détailAnne Tasso. Java. Le livre de. premier langage. 10 e édition. Avec 109 exercices corrigés. Groupe Eyrolles, 2000-2015, ISBN : 978-2-212-14154-2
Anne Tasso Java Le livre de premier langage 10 e édition Avec 109 exercices corrigés Groupe Eyrolles, 2000-2015, ISBN : 978-2-212-14154-2 Table des matières Avant-propos Organisation de l ouvrage..............................
Plus en détailProgramme scientifique Majeure ARCHITECTURE DES SYSTEMES D INFORMATION. Mentions Ingénierie des Systèmes d Information Business Intelligence
É C O L E D I N G É N I E U R D E S T E C H N O L O G I E S D E L I N F O R M A T I O N E T D E L A C O M M U N I C A T I O N Programme scientifique Majeure ARCHITECTURE DES SYSTEMES D INFORMATION Mentions
Plus en détailTP1 : Initiation à Java et Eclipse
TP1 : Initiation à Java et Eclipse 1 TP1 : Initiation à Java et Eclipse Systèmes d Exploitation Avancés I. Objectifs du TP Ce TP est une introduction au langage Java. Il vous permettra de comprendre les
Plus en détailInfo0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java
Info0101 Intro. à l'algorithmique et à la programmation Cours 3 Le langage Java Pierre Delisle, Cyril Rabat et Christophe Jaillet Université de Reims Champagne-Ardenne Département de Mathématiques et Informatique
Plus en détailInformatique industrielle A7-19571 Systèmes temps-réel J.F.Peyre. Partie I : Introduction
Informatique industrielle A7-19571 Systèmes temps-réel J.F.Peyre Partie I : Introduction Plan de la première partie Quelques définitions Caractéristiques communes des applications temps-réel Exemples d
Plus en détailM1805 - Études et développement informatique
Appellations (Métiers courants) Analyste décisionnel - Business Intelligence Analyste organique informatique Analyste-programmeur / Analyste-programmeuse informatique Chef de projet étude et développement
Plus en détailInformation utiles. cinzia.digiusto@gmail.com. webpage : Google+ : http://www.ibisc.univ-evry.fr/ digiusto/
Systèmes de gestion de bases de données Introduction Université d Evry Val d Essonne, IBISC utiles email : cinzia.digiusto@gmail.com webpage : http://www.ibisc.univ-evry.fr/ digiusto/ Google+ : https://plus.google.com/u/0/b/103572780965897723237/
Plus en détailDotNet. Plan. Les outils de développement
DotNet Les outils de développement Version 1.03 du 16/10/2006 par Jacky Renno Plan La machine virtuelle Le kit de développement Le kit de langage Le Visual Studio.NET Le serveur web IIS 6.0 Le modeleur
Plus en détailCours 1 : Qu est-ce que la programmation?
1/65 Introduction à la programmation Cours 1 : Qu est-ce que la programmation? Yann Régis-Gianas yrg@pps.univ-paris-diderot.fr Université Paris Diderot Paris 7 2/65 1. Sortez un appareil qui peut se rendre
Plus en détailPrésentation du module Base de données spatio-temporelles
Présentation du module Base de données spatio-temporelles S. Lèbre slebre@unistra.fr Université de Strasbourg, département d informatique. Partie 1 : Notion de bases de données (12,5h ) Enjeux et principes
Plus en détailCompilation (INF 564)
Présentation du cours Le processeur MIPS Programmation du MIPS 1 Compilation (INF 564) Introduction & architecture MIPS François Pottier 10 décembre 2014 Présentation du cours Le processeur MIPS Programmation
Plus en détailINITIATION AU LANGAGE C SUR PIC DE MICROSHIP
COURS PROGRAMMATION INITIATION AU LANGAGE C SUR MICROCONTROLEUR PIC page 1 / 7 INITIATION AU LANGAGE C SUR PIC DE MICROSHIP I. Historique du langage C 1972 : naissance du C dans les laboratoires BELL par
Plus en détailIntelligence Artificielle et Robotique
Intelligence Artificielle et Robotique Introduction à l intelligence artificielle David Janiszek david.janiszek@parisdescartes.fr http://www.math-info.univ-paris5.fr/~janiszek/ PRES Sorbonne Paris Cité
Plus en détailDossier de compétences :
Dossier de compétences : Type de poste recherché : Administrateur SAP BC Junior Formation : 2008 Master 2 Sciences pour l Ingénieur spécialité Complémentaires en Informatique à l Institut des Sciences
Plus en détailIntroduction à la programmation Travaux pratiques: séance d introduction INFO0201-1
Introduction à la programmation Travaux pratiques: séance d introduction INFO0201-1 B. Baert & F. Ludewig Bruno.Baert@ulg.ac.be - F.Ludewig@ulg.ac.be Qu est-ce que la programmation? Programmer Ecrire un
Plus en détailCHEF DE PROJET - DÉVELOPPEUR SENIOR DELPHI. 50 ans - 16 ans d'expérience
M0152 CHEF DE PROJET - DÉVELOPPEUR SENIOR DELPHI 50 ans - 16 ans d'expérience Expert ises mét iers : Langues : Editeur de logiciels, Industrie, M2M Roumain (Langue maternelle), Français (Avancé), Anglais
Plus en détailXML, PMML, SOAP. Rapport. EPITA SCIA Promo 2004 16 janvier 2003. Julien Lemoine Alexandre Thibault Nicolas Wiest-Million
XML, PMML, SOAP Rapport EPITA SCIA Promo 2004 16 janvier 2003 Julien Lemoine Alexandre Thibault Nicolas Wiest-Million i TABLE DES MATIÈRES Table des matières 1 XML 1 1.1 Présentation de XML.................................
Plus en détailUtilisation des tableaux sémantiques dans les logiques de description
Utilisation des tableaux sémantiques dans les logiques de description IFT6281 Web Sémantique Jacques Bergeron Département d informatique et de recherche opérationnelle Université de Montréal bergerja@iro.umontreal.ca
Plus en détailUniversité de Bangui. Modélisons en UML
Université de Bangui CRM Modélisons en UML Ce cours a été possible grâce à l initiative d Apollinaire MOLAYE qui m a contacté pour vous faire bénéficier de mes connaissances en nouvelles technologies et
Plus en détailJava c est quoi? Java. Java. Java : Principe de fonctionnement 31/01/2012. 1 - Vue générale 2 - Mon premier programme 3 - Types de Programme Java
1 - Vue générale 2 - Mon premier programme 3 - Types de Programme 1 2 c est quoi? Technologie développée par SUN Microsystems lancée en 1995 Dans un des premiers papiers* sur le langage JAVA, SUN le décrit
Plus en détailModerniser. le système d information et le portefeuille applicatif. www.bull.com
Moderniser le système d information et le portefeuille applicatif L évolution technologique des plates-formes, l ouverture du système d information et la modernisation du portefeuille applicatif sont des
Plus en détailINFORMATIQUE & WEB. PARCOURS CERTIFICAT PROFESSIONNEL Programmation de sites Web. 1 an 7 MODULES. Code du diplôme : CP09
INFORMATIQUE & WEB Code du diplôme : CP09 Passionné par l informatique et le web, vous souhaitez obtenir une certification dans un domaine porteur et enrichir votre CV? PARCOURS CERTIFICAT PROFESSIONNEL
Plus en détailMachines virtuelles. Brique ASC. Samuel Tardieu sam@rfc1149.net. Samuel Tardieu (ENST) Machines virtuelles 1 / 40
Machines virtuelles Brique ASC Samuel Tardieu sam@rfc1149.net École Nationale Supérieure des Télécommunications Samuel Tardieu (ENST) Machines virtuelles 1 / 40 Machines virtuelles La compilation peut
Plus en détailCompte Rendu d intégration d application
ISMA 3EME ANNEE Compte Rendu d intégration d application Compte Rendu Final Maxime ESCOURBIAC Jean-Christophe SEPTIER 19/12/2011 Table des matières Table des matières... 1 Introduction... 3 1. Le SGBD:...
Plus en détailMise en œuvre des serveurs d application
Nancy-Université Mise en œuvre des serveurs d application UE 203d Master 1 IST-IE Printemps 2008 Master 1 IST-IE : Mise en œuvre des serveurs d application 1/54 Ces transparents, ainsi que les énoncés
Plus en détailCours No 3 : Identificateurs, Fonctions, Premières Structures de contrôle.
Université Montpellier-II UFR des Sciences - Département Informatique - Licence Informatique UE GLIN302 - Programmation Applicative et Récursive Cours No 3 : Identificateurs, Fonctions, Premières Structures
Plus en détailTHEME 1 : L ORDINATEUR ET SON ENVIRONNEMENT. Objectifs
Architecture Matérielle des Systèmes Informatiques. S1 BTS Informatique de Gestion 1 ère année THEME 1 : L ORDINATEUR ET SON ENVIRONNEMENT Dossier 1 L environnement informatique. Objectifs Enumérer et
Plus en détailÉtude de l interopérabilité de deux langages de programmation basée sur la machine virtuelle de Java
Université Catholique de Louvain Faculté des Sciences Appliquées Département d Ingénierie Informatique Étude de l interopérabilité de deux langages de programmation basée sur la machine virtuelle de Java
Plus en détailÉdIteur officiel et fournisseur de ServIceS professionnels du LogIcIeL open Source ScILab
ÉdIteur officiel et fournisseur de ServIceS professionnels du LogIcIeL open Source ScILab notre compétence d'éditeur à votre service créée en juin 2010, Scilab enterprises propose services et support autour
Plus en détailSystèmes et traitement parallèles
Systèmes et traitement parallèles Mohsine Eleuldj Département Génie Informatique, EMI eleuldj@emi.ac.ma 1 Système et traitement parallèle Objectif Etude des architectures parallèles Programmation des applications
Plus en détailSQL Parser XML Xquery : Approche de détection des injections SQL
SQL Parser XML Xquery : Approche de détection des injections SQL Ramahefy T.R. 1, Rakotomiraho S. 2, Rabeherimanana L. 3 Laboratoire de Recherche Systèmes Embarqués, Instrumentation et Modélisation des
Plus en détailIntroduction aux concepts d ez Publish
Introduction aux concepts d ez Publish Tutoriel rédigé par Bergfrid Skaara. Traduit de l Anglais par Benjamin Lemoine Mercredi 30 Janvier 2008 Sommaire Concepts d ez Publish... 3 Système de Gestion de
Plus en détailIntelligence Artificielle et Systèmes Multi-Agents. Badr Benmammar bbm@badr-benmammar.com
Intelligence Artificielle et Systèmes Multi-Agents Badr Benmammar bbm@badr-benmammar.com Plan La première partie : L intelligence artificielle (IA) Définition de l intelligence artificielle (IA) Domaines
Plus en détailRTDS G3. Emmanuel Gaudin emmanuel.gaudin@pragmadev.com
RTDS G3 Emmanuel Gaudin emmanuel.gaudin@pragmadev.com PragmaDev Dédiée au développement d un AGL pour le développement des applications temps réel et embarquées. Réseau de partenaires: Formations, Service,
Plus en détailLe programme d examens du Bureau canadien des conditions d admission en génie d Ingénieurs Canada englobe 19 domaines du génie.
INTRODUCTION Le programme d examens du Bureau canadien des conditions d admission en génie d Ingénieurs Canada englobe 19 domaines du génie. Le programme d examens de chaque domaine se divise en deux catégories
Plus en détailSommaire. Systèmes d Exploitation... 3. Intégration Sage 100 Sage CRM... 3. Disponibilité Client... 3. Bases de données... 3
Communiqué de Lancement Sage CRM v. 6.5 Editions Standard et Avancée Sommaire Systèmes d Exploitation... 3 Intégration Sage 100 Sage CRM... 3 Disponibilité Client... 3 Bases de données... 3 Nouveautés
Plus en détailprogrammation 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
Claude Delannoy S initier à la la programmation Avec des exemples en Avec des exemples en C, C++, C#, Java et PHP C, C++, C#, Java et PHP S initier à la programmation Avec des exemples en C, C++, C#, Java
Plus en détailLa plate-forme DIMA. Master 1 IMA COLI23 - Université de La Rochelle
La plate-forme DIMA Master 1 IMA COLI23 - Université de La Rochelle DIMA Bref aperçu Qu'est-ce? Acronyme de «Développement et Implémentation de Systèmes Multi-Agents» Initié par Zahia Guessoum et Jean-Pierre
Plus en détailGénérer du code à partir d une description de haut niveau
Cedric Dumoulin Générer du code à partir d une description de haut niveau Ce projet vise à fournir un environnement de développement permettant de modéliser des UI Android à un haut niveau d abstraction,
Plus en détailMercredi 15 Janvier 2014
De la conception au site web Mercredi 15 Janvier 2014 Loïc THOMAS Géo-Hyd Responsable Informatique & Ingénierie des Systèmes d'information loic.thomas@anteagroup.com 02 38 64 26 41 Architecture Il est
Plus en détailOutils pour les réseaux de neurones et contenu du CD-Rom
Outils pour les réseaux de neurones et contenu du CD-Rom Depuis le développement théorique des réseaux de neurones à la fin des années 1980-1990, plusieurs outils ont été mis à la disposition des utilisateurs.
Plus en détailLogiciel Libre Cours 2 Fondements: Programmation
Logiciel Libre Cours 2 Fondements: Programmation Stefano Zacchiroli zack@pps.univ-paris-diderot.fr Laboratoire PPS, Université Paris Diderot 2013 2014 URL http://upsilon.cc/zack/teaching/1314/freesoftware/
Plus en détailIndustrialiser la chaîne complète de fabrication 1ère partie - Les bénéfices de la solution logicielle IBM VisualAge Pacbase / Rational
IBM Software Group Industrialiser la chaîne complète de fabrication 1ère partie - Les bénéfices de la solution logicielle IBM VisualAge Pacbase / Rational Fernard Bonaguidi fernand.bonaguidi@fr.ibm.com
Plus en détailM1805 - Études et développement null informatique. R i. Appellations. Analyste cogniticien / cogniticienne informatique
M1805 - Études et développement null informatiue IASEC : i Appellations Analyste cogniticien / cogniticienne informatiue Développeur / Développeuse - jeux vidéo Analyste concepteur / conceptrice informatiue
Plus en détailSuivant les langages de programmation, modules plus avancés : modules imbriqués modules paramétrés par des modules (foncteurs)
Modularité Extensions Suivant les langages de programmation, modules plus avancés : modules imbriqués modules paramétrés par des modules (foncteurs) généricité modules de première classe : peuvent être
Plus en détailProjet de Veille Technologique
Projet de Veille Technologique Programmation carte à puce - JavaCard Ing. MZOUGHI Ines (i.mzoughi@gmail.com) Dr. MAHMOUDI Ramzi (mahmoudr@esiee.fr) TEST Sommaire Programmation JavaCard Les prérequis...
Plus en détailMachines Virtuelles. et bazard autour. Rémi Forax
Machines Virtuelles et bazard autour Rémi Forax Avant propos Quelle est la complexité du code ci-dessous? Avec un processeur à 1Ghz, combien de temps le calcul prendra t'il? public static void main(string[]
Plus en détailRésumé CONCEPTEUR, INTEGRATEUR, OPERATEUR DE SYSTEMES CRITIQUES
Aristote ----- Cloud Interopérabilité Retour d'expérience L A F O R C E D E L I N N O V A T I O N Résumé Les systèmes d'information logistique (SIL) sont des outils qui amènent des gains de productivité
Plus en détailBases de données Cours 1 : Généralités sur les bases de données
Cours 1 : Généralités sur les bases de données POLYTECH Université d Aix-Marseille odile.papini@univ-amu.fr http://odile.papini.perso.esil.univmed.fr/sources/bd.html Plan du cours 1 1 Qu est ce qu une
Plus en détailSystèmes d information et bases de données (niveau 1)
Systèmes d information et bases de données (niveau 1) Cours N 1 Violaine Prince Plan du cours 1. Bibliographie 2. Introduction aux bases de données 3. Les modèles 1. Hiérarchique 2. Réseau 3. Relationnel
Plus en détail