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.
Il existe plusieurs compilateurs pour le langage Eiffel.
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 :
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.
Voici un exemple de Hello world en eiffel :