miércoles, 14 de septiembre de 2016

Conceptos Básicos de Programación Orientada a Objetos parte I

La Programación Orientada a Objetos se define como un paradigma que permite realizar una abstracción de la realidad.

POO comprende una gran cantidad de conceptos que permite el desarrollo de aplicaciones robustas.


1. CLASE:

Una clase se define como un tipo abstracto de dato que contiene atributos y métodos. A través de una clase se implementa un concepto abstraído de la realidad. En este caso, los atributos hacen referencia a las características del concepto abstraído y los métodos hacen referencia a los servicios de dicho concepto.

La sintaxis de la clase debe ser la siguiente:


En Java se debe seguir una buena práctica que consiste en implementar cada clase en un archivo independiente con extensión .java. Parael ejemplo anterior, el archivo debe denominarse Definiciones.java.

1.1. Atributos
Los atributos hacen referencia a las características que se le incluye a la clase. Estos atributos pueden ser declaraciones de tipos primitivos de datos o declaraciones de clases.

1.2. Visibilidad
La visibilidad se refiere al nivel de accesibilidad de los atributos y métodos. Los niveles de accesibilidad se dan por los siguientes términos:

private. Se puede acceder desde un método implementado desde la misma clase.
public. Se puede acceder desde un método implementado en cualquier clase.
protected. Se puede acceder desde un método implementado en una clase que herede la clase que contiene esta visibilidad y desde clases implementadas en el mismo paquete.

1.3. Métodos
Los métodos hacen referencia a los servicios que se le incluyen a a clase. En estos métodos se implementa el código necesario del servicio. Un método contiene los siquientes elementos:

Visibilidad. Se debe establecer si el método es private, public o protected.
Retorno. Un método puede retornar información. Si el método no retorna información se debe colocar la palabra reservada "void".
El retorno puede ser un tipo primitivo de dato o una clase. Si un método tiene retorno, en la implementación del método, debe estar presente la palabra reservada "return".
Nombre. Identificador del método en la clase. 
Parámetros. Un método puede recibir de 0 a n parámetros. un parámetro puede ser un tipo primitivo de dato o una declaración de una clase. los parámetros deben estar separados por comas.

Cada método implementa un código que debe estar contenido entre "{"y"}". La sintaxis de los métodos es la siguiente.


lunes, 5 de septiembre de 2016

PARADIGMA DE LA PROGRAMACIÓN ORIENTADA A OBJETOS


La programación orientada a objetos o POO (OOP según sus siglas en inglés) es un paradigma de programación que usa objetos y sus interacciones, para diseñar aplicaciones y programas de computadoras. Está basado en varias técnicas, incluyendo herencia, abstracción, polimorfismo y encapsulamiento.

Un paradigma de programación representa un enfoque particular o filosofía para la construcción del software. No es mejor uno que otro sino que cada uno tiene ventajas y desventajas. 

En la POO las entidades centrales son los objetos, que son tipos de datos que encapsulan con el mismo nombre estructuras de datos, operaciones o algoritmos que manipulan esos datos.  https://es.wikipedia.org/wiki/Programaci%C3%B3n_orientada_a_objetos

CONCEPTOS FUNDAMENTALES:

La programación orientada a objetos es una forma de programar que trata de encontrar una solución a los problemas que ocasionaba la programación estructurada. Introduce nuevos conceptos, que superan y amplían conceptos antiguos ya conocidos. Entre ellos destacan los siguientes: 
http://www.monografias.com/trabajos/objetos/objetos.shtml

  • Clase: definiciones de las propiedades y comportamiento de un tipo de objeto concreto. La instanciación es la lectura de estas definiciones y la creación de un objeto a partir de ellas.
  •     Herencia: (por ejemplo, herencia de la clase D a la clase C) Es la facilidad mediante la cual la clase D hereda en ella cada uno de los atributos y operaciones de C, como si esos atributos y operaciones hubiesen sido definidos por la misma D. Por lo tanto, puede usar los mismos métodos y variables publicas declaradas en C. Los componentes registrados como (private) también se heredan, pero como no pertenecen a la clase, se mantienen escondidos al programador y sólo pueden ser accedidos a través de otros métodos públicos.
  •     Objeto: entidad provista de un conjunto de propiedades o atributos (datos) y de comportamiento o funcionalidad (métodos) los mismos que consecuentemente reaccionan a eventos. Se corresponde con los objetos reales del mundo que nos rodea, o a objetos internos del sistema (del programa). Es una instancia a una clase.
  •     Método: Algoritmo asociado a un objeto (o a una clase de objetos), cuya ejecución se desencadena tras la recepción de un "mensaje". Un método puede producir un cambio en las propiedades del objeto, o la generación de un "evento" con un nuevo mensaje para otro objeto del sistema.
  •     Evento: El sistema maneja el evento enviando el mensaje adecuado al objeto pertinente. También se puede definir como evento, a la reacción que puede desencadenar un objeto, es decir la acción que genera.
  •     Mensaje: una comunicación dirigida a un objeto, que le ordena que ejecute uno de sus métodos con ciertos parámetros asociados al evento que lo generó.
  •     Propiedad o atributo: contenedor de un tipo de datos asociados a un objeto , hace los datos visibles desde fuera del objeto y esto se define como sus características predeterminadas y cuyo valor puede ser alterado por la ejecución de algún método.
  •     Estado interno: es una variable que se declara privada, que puede ser únicamente accedida y alterada por un método del objeto, y que se utiliza para indicar distintas situaciones posibles para el objeto (o clase de objetos).