Eiffel (Langage)


Eiffel (Langage)

Eiffel (langage)

Page d'aide sur l'homonymie Pour les articles homonymes, voir Eiffel.
Eiffel
Importez le logo de ce langage de programmation
Apparu en 1986
Auteur Bertrand Meyer
Développeurs Bertrand Meyer & Eiffel Software
Dernière version stable 4.2[+/−]
Paradigmes Objet
Typage Statique, Fort
Dialectes SmartEiffel EcmaEiffel
Influencé par Ada, Simula, Z
A influencé Sather, Ruby, Java, C#, D, Lisaac
Implémentations EiffelStudio, SmartEiffel, Visual Eiffel

Eiffel est un langage de programmation orienté objet (POO) conçu par Bertrand Meyer.

Il implémente les principaux concepts d'un langage orienté objets (classes, héritage simple et multiple), ainsi que des concepts originaux, comme l'héritage de type (les types élémentaires héritent les uns des autres) et la programmation par contrat (assertion), qui est sa principale innovation. Il est toujours le seul langage industriel implémentant en standard les concepts de programmation par contrat.

Sommaire

Compilateurs

Il existe plusieurs compilateurs pour le langage Eiffel.

SmartEiffel

SmartEiffel est développé par le Loria, qui est libre et téléchargeable gratuitement. Depuis la version 2.2, cette distribution s'écarte volontairement du standard ECMA pour proposer sa propre version du langage.

SmartEiffel ne compile pas directement l'Eiffel en un programme exécutable, mais utilise l'intermédiaire du C ou du Java. L'utilisation du C a différents avantages :

  • Faire de la compilation incrémentale : si l'on modifie quelques lignes dans un très grand travail, grâce aux fonctionnalités de l'outil make, seuls les programmes-cible C modifiés seront recompilés, d'où gain de temps ;
  • Utiliser les fonctions d'optimisation des compilateurs C ;
  • Être portable sur toutes les plate-formes vers lesquelles C peut être compilé.

Studio de développement complet

  • EiffelStudio est un environnement de développement (éditeur, compilateur, débogueur…). EiffelStudio est disponible sous licence libre depuis la version 5.7.

Implémentation dans Microsoft .NET

« Hello, world »

Voici un exemple de Hello world en eiffel :

  1. class HELLO_WORLD
    
  2.  
    
  3. creation
    
  4.      make
    
  5.  
    
  6. feature
    
  7.      make is
    
  8.          do
    
  9.              io.put_string("Hello world!%N")
    
  10.          end
    
  11.  
    
  12. end -- class HELLO_WORLD
    

Anecdote

Le nom du langage provient de l'ingénieur Français Gustave Eiffel, concepteur bien connu de la tour Eiffel, qui a été construite dans les délais et en respectant le budget, ce qui est le but avoué du langage Eiffel pour les projets logiciels importants. Le nom lui-même du langage est donc un clin d'œil à l'objectif de respect de saines pratiques lors des développements logiciels.

Bibliographie

Sur les autres projets Wikimedia :

  • Bertrand Meyer (1994), Eiffel, le langage, (ISBN 2729605258)
  • Martine Gautier, Gerald Masini, Karol Proch (1996), Concept de programmation par objet, (ISBN 2225853010)
  • Bertrand Meyer (2000), Conception et programmation orientées objet, (ISBN 2212091117)
  • Portail de l’informatique Portail de l’informatique
  • Portail de la programmation informatique Portail de la programmation informatique
Ce document provient de « Eiffel (langage) ».

Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article Eiffel (Langage) de Wikipédia en français (auteurs)

Regardez d'autres dictionnaires:

  • Eiffel (langage) — Pour les articles homonymes, voir Eiffel. Eiffel Apparu en 1986 Auteur Be …   Wikipédia en Français

  • Langage Eiffel — Eiffel (langage) Pour les articles homonymes, voir Eiffel. Eiffel …   Wikipédia en Français

  • Langage De Transformation XML — Un langage de transformation XML est un langage de programmation créé spécifiquement pour créer toute forme de document en sortie à partir d un document XML en entrée. Il y a deux cas spécifiques de transformation : XML vers XML : le… …   Wikipédia en Français

  • Langage Intermédiaire — En informatique, un langage intermédiaire est le langage d une machine abstraite conçu pour l analyse d un programme informatique. Le terme vient de son utilisation dans les compilateurs, où un compilateur transcrit d abord le code source d un… …   Wikipédia en Français

  • Langage de transformation xml — Un langage de transformation XML est un langage de programmation créé spécifiquement pour créer toute forme de document en sortie à partir d un document XML en entrée. Il y a deux cas spécifiques de transformation : XML vers XML : le… …   Wikipédia en Français

  • Langage intermediaire — Langage intermédiaire En informatique, un langage intermédiaire est le langage d une machine abstraite conçu pour l analyse d un programme informatique. Le terme vient de son utilisation dans les compilateurs, où un compilateur transcrit d abord… …   Wikipédia en Français

  • Langage intermédaire — Langage intermédiaire En informatique, un langage intermédiaire est le langage d une machine abstraite conçu pour l analyse d un programme informatique. Le terme vient de son utilisation dans les compilateurs, où un compilateur transcrit d abord… …   Wikipédia en Français

  • Langage De Description De Format De Document — Un langage de description de format de document est un langage permettant de définir un jeu de règles et contraintes qui seront utilisées pour savoir si une instance de document est valide par rapport à ce même jeu de règles et contraintes.… …   Wikipédia en Français

  • Langage de description — de format de document Un langage de description de format de document est un langage permettant de définir un jeu de règles et contraintes qui seront utilisées pour savoir si une instance de document est valide par rapport à ce même jeu de règles …   Wikipédia en Français

  • Langage-objets — Programmation orientée objet La programmation orientée objet (POO) ou programmation par objet, est un paradigme de programmation informatique qui consiste en la définition et l assemblage de briques logicielles appelées objets ; un objet… …   Wikipédia en Français


Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”

We are using cookies for the best presentation of our site. Continuing to use this site, you agree with this.