1 / 21

Eiffel – Uma linguagem Completa

Eiffel – Uma linguagem Completa. Bruno Hildenbrand Felipe Desiderati Patrícia Vilas-Boas Vinícius S Nunes. Eiffel - Sumário. Introdução Eiffel Software A Linguagem Eiffel Projeto por Contrato Eiffel e UML Eiffel Studio e Eiffel ENViSioN! Exemplo Prático Informações Complementares

ataret
Download Presentation

Eiffel – Uma linguagem Completa

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Eiffel – Uma linguagem Completa Bruno Hildenbrand Felipe Desiderati Patrícia Vilas-Boas Vinícius S Nunes

  2. Eiffel - Sumário • Introdução • Eiffel Software • A Linguagem Eiffel • Projeto por Contrato • Eiffel e UML • Eiffel Studio e Eiffel ENViSioN! • Exemplo Prático • Informações Complementares • O futuro da linguagem Eiffel

  3. Eiffel - Introdução • Linguagem OO que enfatiza projeto e construção de SW reutilizável de alta qualidade • Não é extensão de nenhuma outra linguagem • Permite interfaceamento com outras linguagens – C ou C++ • Design by Contract – garantir a consistência do SW gerado • Transparente para novas tecnologias como o .NET

  4. Interactive SoftwareEngineering • Fundada em 1985 na Califórnia • Primeira empresa a focar suas atividades inteiramente na tecnologia OO • Objetivo: oferecer aos clientes, beneficios que gerem vantagens competitivas • Diminuir Custos e aumentar a produtividade • Eliminar tempo e esforço gastos no processo de desenvolvimento visando uma solução mais simples e mais completa • Software seguro, reusável e robusto.

  5. Eiffel Software • ISE atualmente chama-se Eiffel Software • Atividades de negócio primárias: • Eiffel Studio • Eiffel ENViSioN! • Treinamento OO e Eiffel • Consultoria Eiffel • Informações orçamentárias não divulgadas pelo fabricante

  6. Eiffel Software • Principais Clientes: • HP (printer division) • ICL (Fujitsu) • Lucent Technologies • Telesoft • Tokyo Gas • Digital Biometrics • EuroDisney, entre outros

  7. A linguagem Eiffel • Puramente OO • Design inspirado em preocupações levantadas por Engenheiros de Software • Visa construir softwares robustos e reusáveis • Aumento de Produtividade – 2 a 10x • Custo até 80% mais baixo • Nível de qualidade 10x maior

  8. A linguagem Eiffel • Usada eficientemente em todas as áreas de computação • Roda facilemente em ambientes como: Windows (e .NET), Unix, Linux e VMS. • Realmente rápida – combina o poder das novas tecnologias com performances iguais ou superiores a C e Fortran • Tecnoligia que combina Compilação com interpretação Bytecode

  9. A linguagem Eiffel • Interface com C, C++ (acesso a classes, métodos e bibliotecas) • Bibliotecas gráficas disponíveis para todos os tipos de aplicações • Acesso nativo a bancos de dados ODBC, Oracle, Sybase e Ingres • Eiffel Studio • Transparente para o .NET

  10. A linguagem Eiffel • Reusabilidade – uso de componentes • Extensabilidade – menos tempo gasto com “programação” e mais tempo com: • Confiabilidade – exceções, tipagem, - bugs • Eficiência – código enxuto, sistemas rápidos • Portabilidade – definição da linguagem independente de plataforma • OO – Classes, Encapsulamento, Herança, Polimorfismo

  11. ISE Eiffel

  12. Design by Contract (DBC) • Mecanismo que demanda a produção de software de qualidade. • Garante códigos com muito menos erros • Segue as regras do desenvolvimento • Diminuição no número de bugs • Mais tempo gasto com o design • Chave para software reusável e documentação

  13. Eiffel e UML • EiffelStudio é capaz de gerar XMI (XML Metadata Interchange) para qualquer sistema Eiffel. • XMI possibilita troca de informações entre quaisquer produtos que suportem esta tecnologia (ex, Rational Rose). • Importado em cada produto e a informação UML gerada.

  14. Algumas Comparações • Design by Contract • Eiffel – Suporte da linguagem e Desnvolvimento • C++ - Nada comparável (apenas a instrução “Assert”) • Java - Nada comparável (nem mesmo a instrução “Assert”) • Tecnologia de Compilação • Eiffel – Combina compilação e interpretação no mesmo ambiente • C++ - Normalmente compilado • Java – mistura de interpretação e compilação “on-the-fly” • Eficiência do Código Gerado • Eiffel – executáveis rápidos • C++ - Executáveis rápidos • Java – muitos problemas de performance relatados • Documentação • Eiffel - Documentação gerada automaticamente (vários formatos) • C++ - Sem mecanismo padrão • Java – JavaDoc – adiciona comentários especiais

  15. Eiffel Studio • IDE desenvolvida exclusivamente para a linguagem de programação Eiffel • Desenvolvimento desde a modelagem e o design até a codificação • Ferramenta CASE e Debugger embutidos • Centrado da metodoliga Design by Contract • Suporte a XMI e UML

  16. Eiffel Studio – Características • Design by Contract • Clean Syntax • Genericity for .NET • Fast Executables • Portability • .NET compatibility • Ideal Migration path to .NET • Best tool for business critical applications • Powerful new GUI library • Reusable code

  17. Eiffel Studio

  18. Eiffel ENViSioN! • Plugin da linguagem Eiffel para o Microsoft Visual Studio .NET • Eiffel integrado normalmente dentro da plataforma .NET • Assim com o Eiffel Studio, oferece suporte à modelagem, design e desenvolvimento dentro do .NET • Reduz debug em 90 a 95% com Design by Contract

  19. Estrutura de Classes

  20. Informações Complementares • Tópicos especiais: • Congeneridade na linguagem Eiffel • Garbage Collection • Tipo de Software mais adequado • Domínios de Classes • (Aplicação, Negócios, Arquitetura e Base) • Exemplo Prático

  21. Considerações Finais • Bibliografia • www.eiffel.com • Bertrand Meyer, Object-Oriented Software Construction, Prentice Hall, 1997. • http://www.elj.com/eiffel/intro/full/ • UFRGS/Informática - Porto Alegre, RS Universidade Federal do Rio de Janeiro Projetos de Sistemas de Informação Prof. Ricardo L Shcneider www.dcc.ufrj.br/~schneide

More Related