jueves, 18 de febrero de 2016

INTRODUCCIÓN A POO

INTRODUCCION A POO


(PROGRAMACIÓN ORIENTADA A OBJETOS)

  1. DEFINICION


  • OBJETO

Objeto es todo lo que pueda ser identificado dentro de un requerimiento o especificación de un problema o requerimiento, con estados definidos como abierto, cerrado con comportamientos asociados como correr, saltar, volar denominados como métodos y por medio de estos poder comunicarse entre otros objetos, una característica es la transparencia entre la implementación a nivel de código.



                             Resultado de imagen para ejemplos de objeto en poo



  • HERENCIA


Es extender un comportamiento o estado de un objeto que posee las mismas características, facilitando la creación de objetos a partir de otros y obteniendo métodos y atributos a los ya existentes, evitando con ello el rediseño, la remodelación y verificación de la parte ya implementada.


            http://image.slidesharecdn.com/poo-1229990884219449-1/95/poo-27-728.jpg?cb=1229962895



  • POLIMORFISMO


Es una relajación del sistema de tipos, de tal manera que una referencia a una clase (atributo, parámetro o declaración local o elemento de un vector) acepta direcciones de objetos de dicha clase y de sus clases derivadas.

  Resultado de imagen para ejemplo de objeto en poo


  • ENCAPSULACION


Es el proceso de guardar en una misma sección de elementos de una abstracción que constituyen su estructura y su comportamiento, sirve para separar el interfaz contractual de una abstracción y su implantación.

                        http://image.slidesharecdn.com/clase1-1231193481923713-1/95/programacion-orientada-a-objetos-27-728.jpg?cb=1231172045

  • ABSTRACCION


Son las características específicas de un objeto, son las que hacen definir límites conceptuales respecto a quien abstrae dicho objeto, y que los distinguen de los demás tipos.
Una abstracción se enfoca en la visión externa de un objeto, separa el comportamiento específico de un objeto, a esta división que realiza se le conoce como la barra de abstracción.


             https://i.ytimg.com/vi/XOC0pVZzKtI/maxresdefault.jpg




  • INTERFAZ


Es una reunión de propiedades y métodos abstractos, explicando que se debe hacer sin implementarlo, las clases que lo implementan son las que describen la lógica del comportamiento de los métodos, la diferencia entre interfaz y abstracción es que un interfaz proporciona un mecanismo de encapsulamiento de los protocolos de los métodos sin forzar al usuario a utilizar la herencia.
                   http://image.slidesharecdn.com/1poo-150917092046-lva1-app6891/95/1-introduccin-a-los-lenguajes-de-programacin-y-a-la-programacin-orientada-a-objetos-39-638.jpg?cb=1442481749


  • CLASE


En una plantilla que se utiliza para la creación de objetos de datos según un modelo predefinido, se crean para representar entidades o conceptos, y cada uno es un modelo que define un conjunto de variables el estado y el comportamiento. Cada objeto creado a partir de la clase se denomina instancia de la clase.
Las clases son una parte fundamental de POO permite abstraer los datos y sus operaciones asociadas al modo de una caja negra.


            http://image.slidesharecdn.com/poo-1229990884219449-1/95/poo-18-728.jpg?cb=1229962895




  • ATRIBUTOS


Son características individuales que diferencian un objeto de otro y determinan su apariencia, estado u otras cualidades, estos se guardan en variables y denominadas instancia, y cada objeto puede tener valores distintos para estas variables, hay atributos de:
  • Atributos que se definen en Common Lenguage Runtime (CLR)
  • Atributos personalizados que se pueden crear para agregar información adicional al código.


                      http://image.slidesharecdn.com/cursojavainicial-4pooenjava-090425030317-phpapp02/95/curso-java-inicial-4-poo-en-java-24-728.jpg?cb=1240628642


  • METODOS


Es una subrutina cuyo código es definido en una clase, consiste generalmente de una serie de sentencias para llevar a cabo una acción, un juego se parámetros de entrada que regularan dicha acción o, posiblemente un valor de salida de algún tipo.


  • INSTANCIA


Es la realización específica de una clase o prototipo determinado. Se dice que está en instancia cuando se ejecuta un programa en un computador, como también se dice que un objeto es una instancia de una clase, es un miembro de una clase que tiene atributos en lugar de variables.


                        http://image.slidesharecdn.com/clase2poo-090902171327-phpapp02/95/clase-2-poo-11-728.jpg?cb=1253264700


  • COMPOSICION


Es utilizar objetos dentro de otros objetos.

  • CONCURRENCIA


Es cuando dos procesos están en ejecución paralela, los programas pueden competir por los recursos del sistema o también se pueden ayudar entre sí, por lo tanto se crean tareas de colaboración y sincronización, la programación concurrente se encarga de identificar y ayudar en el proceso de ejecución así como en los problemas de comunicación y sincronización.


            


  • VISIBILIDAD
Es lo que permite restringir acceso a los atributos y métodos de un objeto, la más conocida es PRIVATE, que únicamente deja acceder a los atributos y métodos desde la unidad en la que está la clase, en contrapartida, tenemos la PUBLIC y que permite acceder desde cualquier método a los atributos especificados como tales.


  1. LENGUAJE DE PROGRAMACIÓN JAVA.


JAVA es un lenguaje de programación y una plataforma informática comercializada por primera vez en 1995 por Sun Microsystems. Es un lenguaje rápido, seguro y confiable, desde portátiles hasta centro de datos, consola para juegos, súper computadoras, teléfonos móviles, e internet.


  1. JDK (Java Development kit)


Es un Software que provee herramientas de desarrollo para la creación de programas en Java, se puede instalar en una computadora local o en una unidad de red. Es la suma de todo lo que contiene la JRE mas una serie de herramientas de desarrollo como un compilador, debugger, compactador, documentador, etc. Necesarios para desarrollar applets y aplicaciones de escritorio.
En la JDK también se encuentra herramientas de seguridad y de despliegue de aplicaciones.


  1. JIT (Just In Time)


Es un sistema de justo a tiempo, es el uso de recursos por encima del mínimo teórico necesario como mano de obra, equipos, espacio, energía, este método no es simplemente otro proyecto para eliminar despilfarros o desperdicios.


  1. JVM


Es el programa que interpreta el código Java mientras que las librerías de clases estándar son las que implementan el API de Java. Ambas JVM y API deben ser consistentes entre sí, de ahí que sean distribuidas de modo conjunto.


  1. JRE


Es un conjunto de utilidades que permite programar en Java, en su forma más complicado, el entorno en tiempo de ejecución de Java está conformado por una máquina virtual de Java o JVM; un conjunto de Java y otros componentes innecesarios para que una aplicación escrita es lenguaje C++ pueda ser ejecutada. El JRE actúa como un intermediario entre el sistema y Java.


  1. API (Application programming Interface) De Java


Es un conjunto de librerías de código JAVA compilado, facilita a la hora de programar.


  1. GARBAGE COLLECTOR


El concepto de recolección de basura fue inventado por Jhon McCarthy en 1958 para evitar la gestión manual de memoria en el lenguaje Lisp. Es un mecanismo implícito de gestión de memoria implementado en algunos lenguajes de programación de tipo de interpretados o semi interpretado.


  1. IDE (Infraestructura de Datos Espaciales)


Es un conjunto de información integrado por un conjunto de recursos (catálogos, servidores, programas, datos, aplicaciones, páginas web etc.) dedicados a gestionar información geográfica (mapas, orto fotos, imágenes de satélite, topónimos etc.) disponibles en internet que cumplan una serie de condiciones de interoperabilidad (normas, especificaciones, protocolos, interfaces...) que un usuario, utilizando un simple y que permiten que un usuario utilizando un simple navegador, pueda utilizarlos y combinarlos según sus necesidades.


  • TIPOS DE IDE


  1. Eclipse: Software libre, y más utilizados a nivel profesional. El paquete básico de Eclipse se puede expandir mediante la instalación de plugins para añadir funcionalidades a medida que se vayan necesitando.


  1. NetBeans: facilita bastante el diseño gráfico asociado a aplicaciones Java.


  1. blueJ: es utilizado para la enseñanza de Java, es sencillo para que los aprendices tenga la facilidad de comprender aspectos claves de la POO.


  1. JBuilder: permite desarrollos gráficos.


  1. JCreator: este IDE está escrito en C++ y omite herramientas para desarrollos gráficos, lo cual lo hace rápido y eficiente que  otros IDEs.