Elementos Básicos y Comparativa De Lenguajes De Programación

Páginas: 6 (1349 palabras) Publicado: 20 de julio de 2011
Tecnología de la Programación Tecnologí Programació
Francisco Ortín Soler

Tema 3
Elementos Básicos del Bá Modelo de Objetos. Comparativa C++, Java y C#

Escuela Universitaria de Ingeniería Técnica en Informática de Oviedo

Universidad de Oviedo

Contenido

• • • • • • • •

Modularidad (Modularity) Niveles de Ocultación Gestión Explícita de Memoria Heap Constructores y DestructoresOperador de Ámbito Espacios de Nombres Propiedades Diseño por Contratos
Francisco Ortín Soler

Modularidad
• Tanto Java como C# se compilan a plataformas basadas en máquinas virtuales Sun Java Virtual Machine (JVM); la plataforma se denomina Java Microsoft Common Language Runtime (CLR); la plataforma se denomina .Net Sin embargo, la plataforma de Microsoft fue diseñada para dar soporte a“cualquier” lenguaje de programación Esto ha causado que aparezca un elemento de modularidad no existente en el caso de Java: el ensamblado (assembly) Un ensamblado es la unidad básica de reutilización y despliegue, formada por una colección de archivos (recursos) En él deben encontrarse, al menos, una librería de enlace dinámico (dll) o un ejecutable (exe) Los ensamblados son módulos independientes dellenguaje de programación Francisco Ortín Soler







1

Modularidad

Ocultación de Tipos Ocultació
• En Java, sin embargo, la reutilización pasa por el despliegue de archivos .class o .jar • En ambos casos, se distingue qué tipos son accesibles desde otros módulos
En Java, las clases accesibles desde otro módulo se declaran public; no indicarlo supone lo contrario En .Net, lasclases accesibles desde otro módulo se declaran public; no indicarlo (o declararla como internal) supone lo contrario

• En ambos casos, los módulos son independientes de la plataforma (no como en C++) • La principal diferencia es que en .Net el módulo es independiente del lenguaje Francisco Ortín Soler

Modularidad

Archivos Objeto
• En .Net, el único modo de reutilizar código objeto (yacompilado, sin poseer los fuentes) es mediante el concepto de ensamblado • En Java, sin embargo, es posible reutilizar cada tipo por separado: utilizando su fichero .class
Todo tipo en Java (clase, interfaz o enumerado – v1.5) es compilado a un .class Una clase pública ha de estar en un fichero con el mismo nombre que la clase (y extensión java) En un fichero .java, sólo puede haber, como máximo,una clase pública

• En C++, la reutilización de código objeto es totalmente dependiente de la plataforma y herramienta (.obj, .o, .dll, .so, .lib)

Francisco Ortín Soler

Niveles de Ocultación Ocultació
• En Java existen cuatro niveles de ocultación para los miembros de una clase: Mantiene los ofrecidos por C++: public private y protected package: Se puede acceder desde cualquier parte delpackage al que pertenezca la clase; es la ocultación por omisión (no tiene palabra reservada) • En C# hay cinco niveles de ocultación: Mantiene private (por omisión) public y protected del C++ internal: Los miembros son accesibles desde cualquier parte del ensamblado de la clase protected internal: Accesible tanto por los miembros derivados como por cualquier parte del ensamblado (es comoprotected OR internal) • Gracias a la existencia de más niveles de ocultación no ofrecen el concepto de clases amigas
Francisco Ortín Soler

2

Gestión Explícita de Memoria Heap Gestió Explí
• Tanto en C# como en Java La asignación (reserva) dinámica de memoria es explícita (por parte del programador) No es posible liberar explícitamente la memoria heap (se libera implícitamente por el recolectorde basura) • En Java todos los objetos se introducen en la heap • Sin embargo, la plataforma .Net ofrece la posibilidad de utilizar objetos en la pila (value types) C# ofrece el concepto de struct para crear objetos en ámbito de pila Pueden tener atributos, métodos y constructores El nivel de ocultación por omisión es private Los structs no permiten herencia punto.cs

Francisco Ortín Soler...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Cuadro comparativo lenguajes de programacion
  • CUADRO COMPARATIVO
  • Elementos del lenguaje de programación C
  • Elementos De Un Lenguaje De Programacion
  • Elementos básicos de Programación en C#
  • LENGUAJE DE PROGRAMACIÓN VISUAL BASIC
  • Lenguaje C programación Basica
  • lenguaje de programacion basic

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS