Eiffel (langage) - Définition

Source: Wikipédia sous licence CC-BY-SA 3.0.
La liste des auteurs de cet article est disponible ici.

Introduction

Eiffel
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.

Compilateurs

Il existe plusieurs compilateurs pour le langage Eiffel.

SmartEiffel

SmartEiffel est développé par le Loria, 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 plates-formes vers lesquelles C peut être compilé.

Studio de développement complet

Implémentation dans Microsoft .NET

  • On peut mélanger Eiffel avec les autres langages de la plate-forme .NET
  • Implémentation de Eiffel sur Microsoft.NET

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.

« 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      

Bibliographie

Sur les autres projets Wikimédia :

  • Eiffel (langage) sur Wikiversity (communauté pédagogique libre)
  • Bertrand Meyer (1994), Eiffel, le langage,
  • Martine Gautier, Gerald Masini, Karol Proch (1996), Concept de programmation par objet,
  • Bertrand Meyer (2000), Conception et programmation orientées objet,
Page générée en 0.106 seconde(s) - site hébergé chez Contabo
Ce site fait l'objet d'une déclaration à la CNIL sous le numéro de dossier 1037632
A propos - Informations légales
Version anglaise | Version allemande | Version espagnole | Version portugaise