LENGUAJE DE PROGRAMACIÓN JAVA - JESUS DAVID MEJIA VERGARA -
ING. DE SISTEMAS - II SEMESTRE
¿QUE ES UN PARADIGMA DE PROGRAMACIÓN?
Paradigma de programación es una propuesta tecnológica que es adoptada por una Comunidad de
Programadores cuyo núcleo central es incuestionable en cuanto a que unívocamente trata de resolver
uno o varios problemas claramente delimitados.
TIPOS DE PARADIGMAS DE PROGRAMACIÓN
PARADIGMA DE PROGRAMACIÓN DECLARATIVO
PARADIGMA DE PROGRAMACIÓN FUNCIONAL
PARADIGMA DE PROGRAMACIÓN LÓGICA
La programación lógica es un paradigma que se encuentra dentro del paradigma de la programación
funcional. Aunque no es tan conocido como otros paradigmas de programación, es realmente interesante. Se
basa en la declaración de hechos y reglas que permiten ir creando lo que para nosotros sería el
conocimiento. Aunque inicialmente sea un poco complejo de entender, la programación lógica trabaja de
forma muy similar a los humanos en cuanto al manejo de información y conocimientos se refiere.
En ciencias de la computación, la programación funcional es un paradigma de programación declarativa
basado en el uso de funciones matemáticas. Un programa funcional está constituid enteramente por
funciones; el programa principal es una función que toma como argumento la entrada al programa y
genera la salida del programa como su resultado. Típicamente, la función principal se define en
términos de otras funciones, y éstas, a su vez, en término de más funciones; esta cadena finaliza en
funciones predefinidas o primitivas.
Paradigma de programación es una propuesta tecnológica que es adoptada por una Comunidad de
Programadores cuyo núcleo central es incuestionable en cuanto a que unívocamente trata de resolver
uno o varios problemas claramente delimitados.
PARADIGMA DE PROGRAMACIÓN IMPERATIVO
PARADIGMA DE PROGRAMACIÓN ORIENTADO A OBJETOS
El paradigma orientado a objetos (P.O.O) define los programas en términos de comunidades de objetos.
Los objetos con características comunes se agrupan en clases (un concepto similar al de tipo abstracto
de dato (TAD)). Los objetos son entidades que combinan un estado (es decir, datos) y un
comportamiento (esto es, procedimientos o métodos). Estos objetos se comunican entre ellos para
realizar tareas
CARACTERÍSTICAS DE LA PROGRAMACIÓN ORIENTADA A OBJETOS
ABSTRACCIÓN
Denota las características esenciales de un objeto, donde se capturan sus comportamientos. Cada objeto
en el sistema sirve como modelo de un "agente" abstracto que puede realizar trabajo, informar y cambiar
su estado, y "comunicarse" con otros objetos en el sistema sin revelar "cómo" se implementan estas
características
ENCAPSULAMIENTO
Significa reunir todos los elementos que pueden considerarse pertenecientes a una misma entidad, al
mismo nivel de abstracción. Esto permite aumentar la cohesión (diseño estructurado) de los componentes
del sistema.
POLIMORFISMO
Comportamientos diferentes, asociados a objetos distintos, pueden compartir el mismo nombre; al llamarlos
por ese nombre se utilizará el comportamiento correspondiente al objeto que se esté usando. O, dicho de
otro modo, las referencias y las colecciones de objetos pueden contener objetos de diferentes tipos, y la
invocación de un comportamiento en una referencia producirá el comportamiento correcto para el tipo real
del objeto referenciado
HERENCIA
Las clases no se encuentran aisladas, sino que se relacionan entre sí, formando una jerarquía de
clasificación. Los objetos heredan las propiedades y el comportamiento de todas las clases a las que
pertenecen. La herencia organiza y facilita el polimorfismo y el encapsulamiento, permitiendo a los
objetos ser definidos y creados como tipos especializados de objetos preexistentes. Estos pueden
compartir (y extender) su comportamiento sin tener que volver a implementarlo.
MODULARIDAD
Se denomina "modularidad" a la propiedad que permite subdividir una aplicación en partes más
pequeñas (llamadas módulos), cada una de las cuales debe ser tan independiente como sea posible de
la aplicación en sí y de las restantes partes. Estos módulos se pueden compilar por separado, 11 pero
tienen conexiones con otros módulos. Al igual que la encapsulación, los lenguajes soportan el
modularidad de diversas formas.
EL PRINCIPIO DE OCULTACIÓN
Cada objeto está aislado del exterior, es un módulo natural, y cada tipo de objeto expone una "interfaz"
a otros objetos que especifica cómo pueden interactuar con los objetos de la clase. El aislamiento
protege a las propiedades de un objeto contra su modificación por quien no tenga derecho a acceder a
ellas; solamente los propios métodos internos del objeto pueden acceder a su estado. Esto asegura que
otros objetos no puedan cambiar el estado interno de un objeto de manera inesperada, eliminando
efectos secundarios e interacciones inesperadas.
RECOLECCIÓN DE BASURA
La recolección de basura es la técnica por la cual el entorno de objetos se encarga de destruir
automáticamente, y por tanto desvincular la memoria asociada, los objetos que hayan quedado sin
ninguna referencia a ellos. Esto significa que el programador no debe preocuparse por la asignación o
liberación de memoria, ya que el entorno la asignará al crear un nuevo objeto y la liberará cuando nadie
lo esté usando.
CONCEPTOS FUNDAMENTALES
CLASE
Una clase se puede definir 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 ella.
HERENCIA
Por ejemplo, herencia de la clase C a la clase D, 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 registrados
como "públicos” en C.
OBJETO
En el paradigma de programación orientada a objetos (POO, o bien OOP en inglés), un objeto es una
unidad dentro de un programa de computadores que consta de un estado y de un comportamiento,
que a su vez constan respectivamente de datos almacenados y de tareas realizables durante el tiempo
de ejecución. Un objeto puede ser creado instanciando una clase, como ocurre en la programación
orientada a objetos, o mediante escritura directa de código y la replicación de otros objetos, como
ocurre en la programación basada en prototipos.
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". Desde el punto de vista del comportamiento, es lo que el objeto puede
hacer. 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
Es un suceso en el sistema (tal como una interacción del usuario con la máquina, o un mensaje enviado
por un objeto). El sistema maneja el evento enviando el mensaje adecuado al objeto pertinente.
También se puede definir como evento la reacción que puede desencadenar un objeto; es decir, la
acción que genera.
ATRIBUTO
Los atributos son las características individuales que diferencian un objeto de otro y determinan su
apariencia, estado u otras cualidades. Los atributos se guardan en variables denominadas de instancia, y
cada objeto particular 14 puede tener valores distintos para estas variables. Las variables de instancia
también denominados miembros dato, son declaradas en la clase, pero sus valores son fijados y
cambiados en el objeto. Además de las variables de instancia hay variables de clase, las cuales se aplican a
la clase y a todas sus instancias.
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 (o a una clase de objetos), que 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).
No es visible al programador que maneja una instancia de la clase.
LENGUAJES DE PROGRAMACIÓN
JAVA
¿QUE ES JAVA?
Java es un lenguaje de programación con el que podemos realizar cualquier tipo de programa. En la
actualidad es un lenguaje muy extendido y cada vez cobra más importancia tanto en el ámbito de
Internet como en la informática en general. Está desarrollado por la compañía Sun Microsystems con
gran dedicación y siempre enfocado a cubrir las necesidades tecnológicas más punteras.
CARACTERÍSTICAS DE JAVA
LENGUAJE TOTALMENTE ORIENTADO A OBJETOS.
DISPONIBILIDAD DE UN AMPLIO CONJUNTO DE BIBLIOTECAS.
LENGUAJE SIMPLE.
DISTRIBUIDO.
INTERPRETADO Y COMPILADO A LA VEZ.
ROBUSTO.
SEGURO.
INDIFERENTE A LA ARQUITECTURA.
PORTABLE.
ALTO RENDIMIENTO.
DINÁMICO.
PLATAFORMAS DE JAVA
JAVA SE
JAVA FX
JAVA EE
JAVA ME
C++
LEXICO
PYTHON
PHP
RUBY
DELPHI
En la programación imperativa, de la cual hacen parte muchos de los principales lenguajes de
programación tales como C, Java y PHP, un programa se describe en términos de instrucciones,
condiciones y pasos que modifican el estado de un programa al permitir la mutación de variables, todo
esto con el objetivo de llegar a un resultado.