CONCEPTOS FUNDAMENTALES DE
LA P.O.O.
Objetos: Los objetos son/representan cosas
Los objetos pueden ser simples o complejos
Los objetos
pueden ser reales o imaginarios
PERSONA
|
ATRIBUTOS
Datos
|
METODOS
Acciones para modificar o
utilizar las caracteristicas
|
nombre
|
Cambiar
nombre
|
apellido
|
Cambiar
edad
|
edad
|
Diga
nombre
|
-Herencia: es el mecanismo fundamental para implementar la
reutilización y extensibilidad del software.
A través de ella los diseñadores pueden
construir nuevas clases partiendo de una jerarquía de clases ya existente
(comprobadas y verificadas) evitando con ello el rediseño, la remodificación y
verificación de la parte ya implementada.
La
herencia facilita la creación de objetos a partir de otros ya existentes,
obteniendo características (métodos y atributos) similares a los ya existentes.
La herencia es uno de los mecanismos, por medio del cual una
clase se deriva de otra, llamada entonces superclase, de manera
que extiende su funcionalidad. Una de sus funciones más importantes es la de
proveer Polimorfismo y late binding.
-Polimorfismo: se refiere a la posibilidad de definir clases
diferentes que tienen métodos o atributos denominados de forma idéntica, pero
que se comportan de manera distinta.
Por ejemplo, podemos crear dos clases distintas: Pez y Ave que
heredan de la superclase Animal. La clase Animal tiene el método abstracto
mover que se implementa de forma distinta en cada una de las subclases (peces y
aves se mueven de forma distinta).
Como
se mencionó anteriormente, el concepto de polimorfismo se puede aplicar tanto a
funciones como a tipos de datos. Así nacen los conceptos de funciones polimórficas
y tipos polimórficos. Las primeras son aquellas funciones que
pueden evaluarse o ser aplicadas a diferentes tipos de datos de forma
indistinta; los tipos polimórficos, por su parte, son aquellos tipos de datos
que contienen al menos un elemento cuyo tipo no está especificado.
-Encapsulación: se le llama encapsulamiento al ocultamiento del
estado, es decir, de los datos miembro, de un objeto de manera que sólo se
puede cambiar mediante las operaciones definidas para ese objeto.
-Abstracción: La abstracción consiste en aislar un elemento de su
contexto o del resto de los elementos que lo acompañan y trasladarlo del mundo
real al Lenguaje de Programación deseado. En programación, el término se
refiere al "¿cómo lo hace?".
-Interfaz
-Clase: Cada clase tiene asociado un código (definición de
la clase), que determina
Los atributos que tienen los objetos de la
clase
Los métodos que pueden ejecutar los objetos de
la clase y cómo lo hacen
Programar orientado a objetos consiste en
escribir código de clases de objetos
-Atributos
Valores
o características de los objetos
Permiten definir el estado del objeto u otras
cualidades
VARIABLES
Velocidad
Aceleración
Capacidad de
combustible
variables
constantes
CONSTANTES
Marca
Color
Potencia
Velocidad máxima
Carburante
-Métodos
-Instancia
-Composición
-
Concurrencia
-Visibilidad.
Métodos
Acciones que puede realizar un objeto:
Arrancar motor
Parar motor
Acelerar
Frenar
Girar a la derecha (grados)
Girar a la izquierda (grados)
Cambiar marcha (nueva marcha)
Método argumentos o
parámetros
Ocultamiento: Consiste en dar a cada objeto del programa una
identidad única y propia, esto se logra gracias a la Programación orientada a
objetos, la cual permite la manipulación y modificación de los atributos de
cada objeto por medio de métodos, y sin importar como sean estos métodos
implementados para lograr el objetivo.
Qué es el JDK
(Java Development Kit)
Se trata de
un conjunto de herramientas (programas y librerías) que permiten desarrollar
(compilar, ejecutar, generar documentación, etc.) programas en lenguaje Java.
Java Development Kit o (JDK), es un software que
provee herramientas de desarrollo para la creación de programas en java. Puede
instalarse en una computadora local o en una unidad de red.
En los sistemas Windows sus variables de entorno
son:
·
JAVAPATH: es un path
completo del directorio donde está instalado el JDK.
·
CLASSPATH: son las librerias
o clases de usuario.
·
PATH: variable donde se
agrega la ubicación de JDK
Los programas más importantes que se incluyen
son:
·
Appletviewer: es un visor de
applet para generar sus vistas previas, ya que un applet carece de método main
y no se puede ejecutar con el programa java.
·
Javac: es el compilador
de JAVA.
·
java: es el intérprete
de JAVA.
·
javadoc: genera la documentación
de las clases java de un programa.
El JDK tiene el compilador que
permite convertir código fuente en bytecode, es decir, el código
"maquina" de la máquina virtual de Java.
La JVM
es una de las piezas
fundamentales de la plataforma Java. Básicamente se sitúa en un nivel superior
al Hardware del sistema sobre el que se pretende ejecutar la aplicación, y este
actúa como un puente que entiende tanto el bytecode, como el sistema sobre el
que se pretende ejecutar. Así, cuando se escribe una aplicación Java, se hace
pensando que será ejecutada en una máquina virtual Java en concreto, siendo
ésta la que en última instancia convierte de código bytecode a código nativo
del dispositivo final.
¿Qué es el JRE?
Es un conjunto de utilidades que permite la
ejecución de programas java, En su forma más complicada, 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 en lenguaje c++ pueda ser ejecutada. El JRE actúa como un
"intermediario" entre el sistema y Java.
"Just in
time" (JIT), literalmente quiere decir "Justo a tiempo". Es una
filosofía que define la forma en que debería optimizarse un sistema de
producción.
Se trata de entregar materias primas o componentes a la línea de
fabricación de forma que lleguen "justo a tiempo" a medida que son
necesarios.
El JIT no es un medio para conseguir que los proveedores hagan muchas
entregas y con absoluta puntualidad para no tener que manejar grandes volúmenes
de existencia o componentes comprados, sino que es una filosofía de producción
que se orienta a la demanda.
La ventaja competitiva ganada deriva de la capacidad que adquiere
la empresa para entregar al mercado el producto solicitado, en un
tiempo breve, en la cantidad requerida. Evitando los costos que no
producen valor añadido también
se obtendrán precios competitivos.
Con el concepto de empresa ajustada hay que aplicar unos cuantos
principios directamente relacionados con la Calidad Total.
El concepto parece sencillo. Sin embargo, su aplicación es compleja, y
sus implicaciones son muchas y de gran alcance.
El JIT tiene 4 objetivos
esenciales:
·
Poner en evidencia los problemas fundamentales.
·
Eliminar despilfarros.
·
Buscar la simplicidad.
API
(application
programming interface
- interfaz de
programación de aplicaciones). grupo de rutinas (conformando una interfaz) que
provee un sistema operativo, una aplicación o una biblioteca, que definen cómo
invocar desde un programa un servicio que éstos prestan. en otras palabras, una
api representa un interfaz de comunicación entre componentes software.
Garbage
Collector.
Un recolector
de basura es un mecanismo
implícito de gestión de memoria implementado en algunos lenguajes de programación de tipo interpretado o seminterpretado.
Recolección de basura.
El espacio de memoria se va llenando con diferentes "objetos"
(representados con colores), también 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 recolección de basura, la memoria
es "compactada", colocando todos los "objetos" que se están
usando al principio, y consolidando todos los "huecos" de memoria al
final, quedando así una gran área de memoria disponible para la futura creación
de objetos.
IDE (integrated development environment
- entorno integrado de desarrollo). Aplicación
compuesta por un conjunto de herramientas útiles para un programador. Un
entorno ide puede ser exclusivo para un lenguaje de programación o bien, poder
utilizarse para varios. suele consistir de un editor de código, un compilador,
un debugger y un constructor de interfaz