Eiffel is an ISO-standardized object-oriented programming language designed for extensibility, reusability, reliability and programmer productivity.
With roots going back to 1985, Eiffel has development environments available from multiple suppliers. Although less well known than many other languages, Eiffel is used by large projects in various industries (finance, aerospace, health care, games and others) as well as for teaching programming in academia.
The language design is closely connected with the method, based on a set of principles: Design by contract, Command-query separation, Uniform access principle, Single choice principle, Open-closed principle, Option-Operand separation and others.
Eiffel Interviews are getting tough these days as the technology grows faster. To get through the Eiffel interview one needs to update him/herself in a regular manner. Having said that, just before the interview, it is very important to have a quick glance of the reputed Eiffel questions and answers to make yourself comfortable during the interview process. This is where DoAnswers.com helps you in renewing yourself on Eiffel and various other technologies interview preparation.
21. What is the difference between Eiffel and EiffelStudio?
Eiffel is the language a developer uses to write great software. EiffelStudio is the environment and toolkit that surrounds the Eiffel language.
22. Where does the name come from?
Eiffel is named after Gustave Eiffel, an engineer who created the famous tower. The Eiffel Tower, built in 1887 for the 1889 World Fair, was completed on time and within budget, as will software projects written in Eiffel. If you look at that wonderful structure, you will see a small number of robust design patterns, combined and varied repeatedly to yield an extremely powerful, bottom-up structure - exactly like a system built out of Eiffel Software's reusable libraries. Like many software systems today, the Eiffel Tower was initially conceived as a temporary structure; and like many systems built with Eiffel, it was able to endure far beyond its original goals.
23. Why is multiple inheritance so clean in Eiffel?
Eiffel tames the power of multiple inheritance through a renaming mechanism that eliminates name clashes, and through a selection facility to remove any ambiguities resulting from multiple redeclarations. Without multiple inheritance, you would lose much of the reusability benefits of the object-oriented method. For example, not all comparable elements are numeric (think of strings) and not all numeric elements are comparable (think of matrices). Without multiple inheritance, you would not be able to select one of these properties when you need to or both when required.
24. Won't I have to forsake my existing software, thus losing millions of dollars?
Absolutely not. Eiffel is an open system, at its best when used as a combination technology to reuse software components written in various languages. In particular, Eiffel includes a sophisticated C and C++ interface, supporting: Calling C functions from Eiffel. Accessing C++ classes and all their components (functions or "methods", data members, constructors, destructors etc.) from Eiffel. Accessing Eiffel mechanisms from C or C++ through the Cecil library (C-Eiffel Call-In Library). Automatically producing a "wrapper" Eiffel class from a C++ class. Eiffel makes it possible to move to modern software technology while reusing the best results of earlier practices.