Az Eiffel programozási nyelv

Általános jellemzők

Az Eiffel programozási nyelvet az 1980-as évek második felében tervezték Bertrand Meyer vezetésével. Az Eiffel egy olyan objektum-orientált nyelv, amelyet termelési környezetekben, minőségi szoftver tervezéséhez és implementálásához ajánlanak. A nyelv elkészítésének szempontjai a következők voltak: támogassa újrafelhasználható, kiterjeszthető, helyes, megbízható, hordozható és hatékony programok írását. Mindezt lehetőleg egyszerûen, elegánsan és könnyen kezelhetően igyekeztek megoldani. Az újrafelhasználhatóság és a kiterjeszthetőség megvalósításához, úgy tûnik, az objektum-orientált technikák adják egyenlőre a legjobb eszközt. Vannak szoftver körök, akik azt mondják, hogy a nyelv nem is fontos a módszertan szempontjából - ez kb. olyan hasznos, mint a madár szárnyak nélkül. A gondolat nem szeparálható el a kifejezésétől - ez a szoftverre fokozottan igaz. Ahhoz, hogy jó szoftvert kapjunk, a jó jelölés nem elégséges, de feltétlenül szükséges.

Az Eiffel nyelv ősei: a Simula 67, az Algol W, az Alphard, a CLU, az Ada és a Z specifikációs nyelv. Ezenkívül egy sor új szempontot figyelembe vettek az öröklődés, a típuskezelés, az exception kezelés és az állítások területén, valamint az előző nyelvekből átvett jellemzőket egységes egésszé konstruálták. Az is jellemző, ami kimaradt - olyan nagy energiát fektettek be abba, hogy a nyelvet kicsivé és elegánssá tegyék, hogy kihagyták pl. a globális változókat, a felsorolási típusokat, a goto utasításokat, a pointer aritmetikát, a főprogram elvét, stb. Az Eiffel nyelvet már úgy tervezték, hogy gyakorlatilag elválaszthatatlan a környezetétől, amit köré építettek. Használata elképzelhetetlen a kiterjedt könyvtári osztályok rendszere nélkül. Szorosan kötődik a LACE nyelvhez is (Language for Assembling Classes in Eiffel), ami tulajdonképpen egy makefile-okhoz hasonló módon írja le a fordításra és futtatásra vonatkozó megkötéseket. Az Eiffel fejlesztőkörnyezet még számos eszközt kínál, amelyek igyekeznek megkönnyíteni a nyelv hatékony használatát.