Está en la página 1de 6

6.

-Implementaciones y entornos

Dentro de las implementaciones que presenta Eiffel se resalta las desarrolladas por el creador del lenguaje Eiffel Bertrand Meyer, el cual ofrece implementaciones bajo una licencia GPL o comercial, las implementaciones que realizo son: [6] EiffelStudio Scoop Estas implementaciones servirn para el desarrollo del lenguaje. Se pueden descargar en su portal web: http://www.eiffel.com/.E

Este portal ofrece servicios para desarrolladores del lenguaje, para ejecutivos, para educadores, y el gobierno.

6.1.- EiffelStudio: EiffelStudio permite modelar el sistema como se piensa - la captura de sus necesidades y sus procesos de pensamiento con EiffelStudio. Cuando se esta listo para el diseo, que se basan en el modelo que acaba de crear, siempre con EiffelStudio. No se tiene que tirar nada y empezar de nuevo. Usted no necesita herramientas adicionales para

poder volver atrs y hacer cambios en la arquitectura de forma segura. Est construido en el diseo. Pruebas, mtricas y herramientas de productividad. Como consecuencia EiffelStudio acomoda de manera eficiente los nuevos planteamientos para el apoyo a cambios en el negocio rpido y flexible. Soporta los diferentes polataformas. [7] EiffelStudio para Windows EiffelStudio para Linux/Unix Eiffel para VMS (Virtual Memory System) EiffelStudio para Macintosh EiffelStudio para Embedded Systems EiffelStudio para Cloud Computing En la depuracin. Diseo nativo de Eiffel por ContractTM evita el 90% de los errores ocurra siempre en el primer lugar - y lo siguen siendo los errores son fciles de localizar y reparar. EiffelStudio est disponible bajo un modelo de licencia dual. Los usuarios pueden elegir cualquiera de las licencias comerciales o de cdigo abierto.

6.2.- Scoop: Los enfoques habituales a la programacin concurrente se basan en las bibliotecas de bajo nivel proporciona los mecanismos de sincronizacin y comunicacin, tales como las bibliotecas de subprocesos disponibles para Java, C + +, C # y otros lenguajes. Estas bibliotecas se basan en los conceptos de la dcada de los aos sesenta, como los semforos, que son difcilmente compatibles con las modernas tcnicas orientadas a objetos. Obligan a los programadores a cambiar su modo de pensar y la arquitectura de sus programas de forma radical en la introduccin de la concurrencia. La experiencia demuestra que para la mayora de los programadores de tal cambio es muy difcil, e incluso si dominan el razonamiento de bajo nivel necesario para hacer que sus aplicaciones concurrentes, los programas

resultantes son difciles de escribir, difcil de llevar a la correccin (ya que las tcnicas tradicionales de las pruebas y depuracin no funcionan para los programas concurrentes), y difcil de entender y mantener ya que las anotaciones son tan de bajo nivel. [7]

SCOOP, el mecanismo de concurrencia para Eiffel, simplifica la programacin concurrente, para que se convierta en una extensin natural de la programacin orientada a objetos. SCOOP se suma a Eiffel slo una palabra clave (por separado), pero proporciona toda la potencia de la concurrencia. La clave es dejar que la aplicacin Eiffel hacerse cargo de todas las cuestiones difciles, en particular en la sincronizacin, por lo que los programadores puedan concentrarse en el lado del negocio de sus aplicaciones. [7]

7.- Ventajas Desventajas

Ventajas de los lenguajes OO


Fomenta la reutilizacin y extensin del cdigo. Permite crear sistemas ms complejos. Relacionar el sistema al mundo real. Facilita la creacin de programas visuales. Construccin de prototipos Agiliza el desarrollo de software Facilita el trabajo en equipo Facilita el mantenimiento del software

Ventajas del EiffelStudio


EiffelStudio permite a los desarrolladores las siguientes ventajas:
Es ms simple, el lenguaje es ms potente. Garantiza un software robusto y eficiente. Permite a los desarrolladores utilizar genericidady un modelo de herencia

mltiple. Reduce el tiempo de depuracin del 90-95%.

Compila para mltiples

plataformas: Windows (Classic y NET.), Unix, Linux, VMS,sistemas integrados y Mac OS X. Funciona muy bien como una herramienta para: - Lograr alta calidad del software. - Migrar aplicaciones heredadas de .NET. - Crear componentes de alta calidad y bibliotecas.

8.- Comparacin con los lenguajes Eiffel C++ java Smalltalk 8.1.- Diseo por contratos
El diseo por contrato es una metodologa para el diseo e implementacin de aplicaciones y componentes popularizada por el lenguaje de programacin Eiffel

Se realiza mediante la utilizacin de expresiones lgicas denominadas aserciones. Existen diferentes tipos de aserciones. En el Diseo por Contratos se utilizan tres tipos de aserciones: [8] Precondiciones Poscondiciones Invariante de Clase.
Eiffel Design by Contract: lenguaje del entorno soporta assert C++ No utiliza Java Smalltalk

notorias es la implementacin de No utiliza contratos para el lenguaje llamada iContrac

8.2.- Tipos estticos Tipos estticos mejorar la legibilidad y permite a los compiladores para detectar errores de tiempo antes de que puedan convertirse en un problema de tiempo de ejecucin, lo que ahorra tiempo de desarrollo, ahorra dinero, y los rendimientos que producen cdigo ms confiable. [8]
Eiffel Estaticamente C++ Estaticamente Tipificado Java Smalltalk Dinmicamente

Tipado dinmico, pero se requiere para las estructuras de contenedores genricos.

8.3.- Herencia mltiple La herencia mltiple son esenciales para apoyar la combinacin de diversas abstracciones y componentes reutilizables, tanto en el modelado. [8]
Eiffel La herencia mltiple, ampliamente utilizado C++ Presenta herencia multiple, pero causa problemas en la herencia repetida explicita Java Smalltalk Herencia simple

Herencia simple

8.4.- Gestin de memoria automtica El espacio de memoria se va llenando con diferentes "objetos" (representados con colores), tambin pueden destruirse algunos de ellos, dejando "huecos" en el espacio de memoria. Cuando ya no queda espacio disponible, o cuando lo decide la rutina de recoleccin de basura, la memoria es "compactada", colocando todos los "objetos" que se estn usando al principio, y consolidando todos los "huecos" de memoria al final, quedando as una gran rea de memoria disponible para la futura creacin de objetos. [8]
Eiffel C++ Java Smalltalk Garbage Collection/Gestion de memoria automtica Garbage Sin Garbage Collection, Garbage Collection/Gestion de en las implemetaciones Collection/Gestion memoria automtica comerciales de memoria automtica

8.5.-Documentacion Automtica
Eiffel Documentacin se extrae de forma automatica C++ Mecanismo no estndar Java Java docs: aadiendo comentarios Smalltalk Mecanismo no estndar

9.- Conclusiones

Se comprob que Eiffel est diseado para proyectos de mayor jerarqua Se reconoci las ventajas de los lenguajes orientados a objetos Se comprob que Eiffel facilita trabajo en equipo , comunicacin y documentacin mediante su documentacin automtica

Se analiz las ventajas y sus diferencias entre el lenguaje Eiffel frente a los otros lenguajes, mostrando al lenguaje Eiffel ms slido frente al diseo por contratos

10.- Referencias
[6]

Meyer (2012) Eiffel software pagina web [Online] . Disponible; Meyer (2012) Eiffel software pagina web [Online] . Disponible; Meyer (2012) Eiffel software pagina web [Online] . Disponible;

http://www.eiffel.com/products/studio/ [7]

http://www.eiffel.com/products/ [8]

[http://archive.eiffel.com/doc/manuals/technology/oo_comparison/page.html]