unidad 2 - uam azcaptzalco - páginas de...
TRANSCRIPT
Paradigmas de ProgramaciónUn paradigma de programación se refiere a la forma en que seentiende, diseña y desarrolla una aplicación
ImperativoDeclarativoFuncionalOrientado a Objetos
Paradigma Orientado a ObjetosLleva al proceso de programación llamado ProgramaciónOrientada a Objetos (OOP)
Las unidades de datos son vistas como objetos en lugar deunidades pasivas
Cada objeto es implementado como una unidad bien definida yseparada del resto
AbstracciónClase
En la programación orientada a objetos, se entiende la palabra clase,como un tipo de dato que a diferencia de un tipo de dato básico, sedefine en el contexto de un problema
ObjetoUn objeto es la instancia de una clase. Esto a grandes rasgos significaque todos los objetos son de un cierto tipo o más bien de una ciertaclase
Interfaz de una ClaseUna vez que se ha creado una clase, se pueden construir tantosobjetos como se necesiten para la solución del problema, paracomunicar un objeto con otros, se maneja el concepto deinterfaz
Los elementos de una interfaz son:Atributos, datos miembro o camposMétodos
AtributosTambién conocidos como datos miembro o campos, puede serun objeto de cualquier tipo con el que se puede tener unacomunicación, también puede ser un dato primitivo
Si es un objeto, primero debe inicializarse para conectarse a unobjeto real, si es un tipo primitivo, es posible inicializarla almomento de definir la clase
MétodosTambién conocidas como funciones miembro, determinan losmensajes que pueden recibir un objeto. Las partesfundamentales de un método son:
Tipo de retornoNombre del métodoLista de parámetrosModificadores
Firma de un MétodoFirma
La firma de una operación se define por el tipo y número deargumentos y el tipo de resultados que devuelve
ParametrizaciónLa parametrización de una operación está definida por el número ytipo de argumentos de cada método
Sobre Carga de MétodosEs posible tener métodos con el mismo nombre
Se deben distinguir en base al tipo de los parámetros quereciben
Los parámetros deben ser diferentes o en orden diferente
No se distinguen por el tipo de dato de retorno
Métodos ConstructoresEs un método especial que garantiza que cada objeto seinicialice
El nombre del constructor es el nombre de la clase
Existe un constructor por defecto que no es necesario incluir amenos que se esté manejando la sobre carga del constructor
Acceso a MétodosDesde la misma clase
Los métodos de una clase pueden ser accedidos solo utilizando elnombre del método siempre y cuando se invoque desde la mismaclase
Desde otras clasesPara tener acceso a los métodos de una clase diferente, se utiliza eloperador punto, es decir:
objeto.nombreMetodo(parámetros)
PaquetesEs el principio para la reutilización de clases
Un paquete puede contener varias clases con nombres únicos
Los nombres de los paquetes deben ser únicos
Es conveniente crear un paquete que agrupe a clases concomportamiento similar
VisibilidadEstablece la proporción en que otras clases podrán acceder a losatributos o utilizar las operaciones de una determinada clase
Tipos de visibilidad:PúblicaPrivadaProtegidaAmistosa
Visibilidad Pública y PrivadaLos elementos declarados como públicos (public) son accesiblestanto desde fuera como desde dentro de la clase
Los elementos declarados como privados (private) sonaccesibles sólo desde la misma clase donde fueron definidos
Visibilidad Protegida y AmistosaLos elementos declarados como protegidos (protected) sonaccesibles desde la misma clase donde fueron definidos y en sussubclases o clases heredadas
Es el modificador por defecto, cuando no se especifica ninguno,en este caso, un tipo de dato friendly o amistoso solo puede servisto por las clases que están en el mismo paquete
HerenciaLa herencia es una parte integral de los lenguajes deprogramación orientada a objetos
Permite que una clase herede las propiedades (atributos ymétodos) de otra clase
La herencia se indica con la palabra reservada “extends”
Sintaxis de la HerenciaLa sintaxis es la siguiente:
class ClaseNueva extends claseVieja
La clase de la que se hereda es conocida como clase base opadre
La clase de la que se hereda es conocida como clase derivada ohija
Algunos lenguajes de programación orientada a objetospermiten el concepto de herencia múltiple, es decir que unaclase pueda heredar de varias clases
La Palabra Reservada “Super”Dado que la clase padre y la clase hija tendrían los mismosmétodos y atributos, debe ser posible diferenciar cuando sequiere tener acceso a unos u otros, para esto se utiliza la palabrareservada “super” que hace referencia a la clase padre
InterfacesLa palabra interface lleva el concepto de abstracción un paso masallá, permite al creador establecer la forma de una clase:nombres de métodos, listas de parámetros y tipos de retornos,pero no los cuerpos de los métodos
Una interfaz proporciona solo la forma, pero no laimplementación
Creación de una InterfaceSe utiliza la palabra clase (interface) en vez de la palabra clave(class), al igual que una clase solamente se puede colocar elmodificador public a la interfaz
Los métodos de una interfaz son públicos de manera automática
ImplementacionesPara hacer una clase que se ajuste a una interfaz particular (o aun grupo de interfaces) se utiliza la palabra reservada(implements)
Con esto se está indicando que la interfaz contiene laapariencia, pero ahora se estará especificando como funciona
Una vez que se ha implementado la interfaz, esaimplementación se convierte en una clase ordinaria que puedeextenderse (heredarse) de forma normal
Modelo Vista ControladorEs un patrón de arquitectura de software que separa los datos,la parte gráfica y la lógica de negocio en tres partes:
Modelo. Clases con la información que el sistema maneja y lasoperaciones
Vista. La parte gráfica del sistema
Controlador. Responde a introducidos por el usuario