Está en la página 1de 6

Introduccin a la Programacin en Java

Ing. Alma Leticia Palacios Guerrero 3



Unidad I Conceptos Bsicos de la Programacin Orientada a Objetos

1.1 Paradigma de la Programacin Orientada a Objetos

Paradigma. Segn el Diccionario de la Real Academia de la Lengua Espaola, paradigma se define
como Cada uno de los esquemas formales en que se organizan las palabras nominales y verbales para
sus respectivas flexiones. . En el mbito de la programacin paradigma es una tcnica de programacin.

Paradigma de la Programacin Estructurada
En los aos sesenta, Edsger Dijkstra demostr que todo programa poda escribirse correctamente
combinando tres bloques de control: bloques secuenciales, el bloque de seleccin if y el bloque de
repeticin. En la programacin estructurada un problema se divide en tareas ms pequeas llamadas
procesos, los cuales se pueden distribuir varios programadores para llegar a una solucin de forma
rpida y eficiente. La programacin estructurada es un mecanismo para hacer programas ms
comprensibles, evitando hacer saltos de una parte del programa a otra, lo que facilita la lectura del
cdigo en forma continua.



La Programacin estructurada se concentra en las acciones que controlan el flujo de datos.

Paradigma de la Programacin Orientada a Objetos

Es un modelo de programacin cuya idea principal es mediante descomponer un problema en entidades
de software llamadas objetos. La Programacin Orientada a Objetos trata de aproximar la programacin
a la vida real.














La POO se centra en la interrelacin que existe entre los datos y las acciones.


Comparacin entre Programacin Estructurada y Programacin Orientada a Objetos

Tradicionalmente el cdigo y los datos se han mantenido separados. Por ejemplo, en lenguaje C, a los
bloques de cdigo se le conoce como funciones, mientras a las unidades de datos se les conoce como
estructuras; en C, las funciones y las estructuras no estn formalmente conectadas. Una funcin en C
puede operar sobre ms de un tipo de estructura y ms de una funcin puede operar sobre la misma
estructura. En la programacin orientada a objetos el cdigo y los datos estan fusionadas en algo
indivisible: un objeto. En la POO los datos son tratados como elementos crticos y no fluyen libremente,
sino que se limitan a las funciones donde operan, lo que los protege de una modificacin accidental.

Datos
Parciales
Datos
parciales
Entrada
de Datos
Nombre
Atributos
Mtodos
Linea
Tamao
Orientacin
Tipo
Color
Grosor
Dibujar
Borrar
Rotar
Mover
Introduccin a la Programacin en Java


Ing. Alma Leticia Palacios Guerrero 4

Ventajas de la Programacin Orientada a Objetos.
Los datos estan encapsulados y no pueden ser accesados por funciones externas al objeto.
Los objetos pueden comunicarse entre s a travs de funciones.
Pueden agregarse nuevos datos y funciones filmente cuando se requiera.
1.2 Conceptos Bsicos de Programacin Orientada a Objetos.

Clase: Una clase es una agrupacin de datos (variables o campos) y de funciones (mtodos) que operan
sobre esos datos. A estos datos y funciones pertenecientes a una clase se les denomina variables y
mtodos o funciones miembro. La clase es el patrn o modelo para crear objetos.
Objeto: Es un paquete de variables y mtodos relacionados. Los objetos en software frecuentemente son
la abstraccin de las propiedades y comportamientos de una entidad del mundo real.
Mensaje: Los mensajes son simples llamadas a las funciones o mtodos del objeto con el se quiere
comunicar para decirle que haga cualquier cosa.

Herencia: La herencia permite que se pueden definir nuevas clases basadas en clases existentes, lo cual
facilita reutilizar cdigo previamente desarrollado. Si una clase deriva de otra (extends) hereda todas sus
variables y mtodos. La clase derivada puede aadir nuevas variables y mtodos y/o redefinir las
variables y mtodos heredados. En Java, a diferencia de otros lenguajes orientados a objetos, una clase
slo puede derivar de una nica clase, con lo cual no es posible realizar herencia mltiple en base a
clases.

Encapsulacin: Es el proceso de ocultar todos los detalles de un objeto que no contribuyen a sus
caractersticas esenciales. Esto significa que aquello que est en interior de la clase est oculto, solo las
interfaces externas pueden ver otros objetos.
[1]
Polimorfismo: Es una propiedad que permite enviar el mismo mensaje a objetos de diferentes clases, de
forma que cada uno de ellos responde a ese mismo mensaje de modo distinto dependiendo de su
implementacin.
[1]


Interface: Una interface es un conjunto de declaraciones de funciones. Si una clase implementa una
interface, debe definir todas las funciones especificadas por la interface. Una clase puede implementar
ms de una interface, representando una forma alternativa de la herencia mltiple. A su vez, una
interface puede derivar de otra o incluso de varias interfaces, en cuyo caso incorpora todos los mtodos
de las interfaces de las que deriva.
Package: Un package (paquete) es una agrupacin de clases











Introduccin a la Programacin en Java


Ing. Alma Leticia Palacios Guerrero 5

Unidad 2. Introduccin a Java

2.1 Historia de Java

Java inici su vida bajo un nombre y un propsito diferente a los actuales. El lenguaje de programacin
original fue escrito para aparatos electrodomsticos como tostadores, hornos de microondas, etc. A
principios de los 90s la incorporacin de los microprocesadores a los objetos de la vida diaria, fue vista
como el inicio de una nueva era. En 1991 Sun MicroSystems fund un proyecto de investigacin interno
llamado Green. El equipo de Green, encabezado por James Gosling, rpidamente se dio cuenta de que
lenguajes como C y C++ no eran adecuados para la gama de tareas que los dispositivos necesitaban
ejecutar. Uno de los problemas anticipados por Green era la dificultad de proveer software para nuevos
dispositivos ya que cada vez que apareca un nuevo chip, se tena que recompilar el programa escrito en
C o C++ para el chip en particular.

A mediados de 1991, James Gosling empez a trabajar en un nuevo lenguaje apropiado, el nombr al
lenguaje Oak (Roble) por un roble que vea desde su oficina en Sun. Gosling dise el nuevo lenguaje
para ser pequeo, confiable e independiente de arquitectura. El equipo de desarrollo fue incorporado a la
nueva compaa FirstPerson. Desafortunadamente, FirstPerson, se vi en una serie de dificultades
principalmente porque el mercado para el consumo de dispositivos electrnicos inteligentes no estaba
desarrollado como lo haba anticipado Sun
La liberacin de NCSA Mosaic y la explosin de la World Wide Web en 1993 salvaron el proyecto. Los
desarrolladores de OAK vieron que un lenguaje de arquitectura neutral sera ideal para programar en
Internet porque el programa podra correr en cualquier parte. Los desarrolladores hicieron cambios
menores al diseo y cambiaron el nombre a Java.
Habiendo desarrollado Java para productos electrnicos de consumo este result ser un lenguaje
robusto. Cuando el equipo de Java decidi que sera particularmente apropiado para Internet debido a su
independencia de plataforma, agregaron funciones para el manejo de red. As fue como Java se convirti
en la nueva eleccin de lenguaje para desarrollar aplicaciones cliente/servidor o de red.
Sun anunci formalmente Java en la conferencia SunWorld en mayo de 1995. Inmediatamente gener
inters porque no era un lenguaje acadmico como Pascal ni diseado por un pequeo grupo para uso
local como C o C++.
Introduccin a la Programacin en Java


Ing. Alma Leticia Palacios Guerrero 6

2.2. Caractersticas de Java
Sun describe Java como un lenguaje simple, orientado a objetos, distribuido, interpretado, robusto,
seguro, de arquitectura neutral, portable, de alto desempeo y multihilos. Cada una de estas palabras es
una caracterstica del lenguaje Java. Mientras muchas de estas caractersticas pueden usarse para
describir otros lenguajes, esta combinacin en particular es nica en Java y su ambiente.
Simple: Se dice que Java es simple porque aunque tiene todas las caractersticas de un lenguaje
potente, descarta las caractersticas menos usadas y ms confusas de stos. C y C++ son lenguajes muy
conocidos, por eso Java se dise para ser parecido a C++ y as facilitar su aprendizaje. En Java no es
necesario liberar memoria, no se usan la aritmtica de punteros, las referencias, registros, definicin de
tipos (typedef) ni macros.
Orientado a objetos: Desde el punto de vista del usuario la orientacin a objetos no cambia nada. Al
correr un programa no importa si est escrito en programacin convencional o en lenguaje orientado a
objetos. Pero si se est acostumbrado a programar en lenguajes convencionales como Pascal y C,
entonces orientado a objetos significa que sern necesarios mayores ajustes en la planeacin e
implementacin de las aplicaciones. Este ajuste es probablemente la parte ms dficil en el aprendizaje
de Java.
Distribuido: Java viene con una completa biblioteca de aplicaciones de red que facilita al programador el
trabajar con protocolos desde bajo nivel como TCP/IP (Transport Control Protocol and Internet Protocol) o
alto nivel como HTTP (Hyper Text Transfert Protocol) y FTP (File Transfer Protocol).
Interpretado. La ejecucin de un programa en Java pasa a travs de dos fases.
1. El compilador de java convierte el cdigo fuente en un tipo de lenguaje de bajo nivel llamado
bytecode.
2. Para correr el programa se usa un interprete que ejecuta el bytecode compilado. Este
interprete es conocido como la JVM (Java Virtual Machine).



Robusto: Java no solo verifica el cdigo para encontrar problemas en tiempo de compilacin, tambin
busca errores que se puedan presentar en tiempo de ejecucin. La comprobacin de tipos en Java ayuda
a detectar errores, lo antes posible, en el ciclo de desarrollo. Entre otras cosas proporciona la
comprobacin de punteros, lmites de arreglos, y manejo de excepciones, etc.
Seguro: Debido a que Java fue diseado para correr en un ambiente de red tienes restricciones de
seguridad. Adems durante la ejecucin el intrprete usa un mecanismo para verificar que el bytecode
cargado a travs de la red no viola ninguna restriccin del lenguaje Java.
Cd|go Fuerle
prograra.java
Compilador
8ylecodes
prograra.c|ass
Intrprete
Introduccin a la Programacin en Java


Ing. Alma Leticia Palacios Guerrero 7

Multihilos: En la actualidad muchas aplicaciones permiten al usuario realizar mltiples tareas en forma
simultnea. La capacidad para ejecutar varios procesos al mismo tiempo se conoce como multihilo. Java
proporciona paquetes para implementar y aplicaciones multihilo.
Dinmico. Java es un lenguaje dinmico porque puede adaptarse a un ambiente cambiante y en
desarrollo. Java no intenta conectar todos los mdulos que conforman una aplicacin hasta el tiempo de
ejecucin. Las libreras nuevas o actualizadas no paralizarn las aplicaciones actuales
Arquitectura Neutral : La internet es la composicin de muchas computadoras interconectadas con
procesadores y sistemas operativos diferentes. Java fue desarrollado con la meta de ser capaz de correr
en cualquier tipo de computadora sin tener que recompilar el cdigo. Por esta razn, cuando se compila
un programa fuente de Java, el resultado no es un cdigo nativo sino un bytecode de arquitectura neutral
de bajo nivel que representa los datos en un formato independiente de la mquina objeto. El interprete de
Java puede ms tarde, leer este bytecode y traducirlo a llamadas de sistema dependientes de mquina.
Esta combinacin de caractersticas es la razn por la que las aplicaciones de Java pueden correr en
cualquier computadora que implementa la Java Virtual Machine.


Portable: Ser de arquitectura neutral es slo una parte de ser portable. Java adems implementa otros
estndares de portabilidad para facilitar el desarrollo, por ejemplo los enteros son siempre de 32 bits, la
construccin de interfaces de usuarios se realiza utilizando las clases del paquete awt (abstract window
toolkit) de forma que las ventanas puedan ser implantadas en cualquier entorno.
.
6d|go Fuente
programa.java
Compilador
ytecodes
programa.c|ass
Intrprete
Mac 05 Mac 05 Mac 05 Mac 05
Intrprete
Intrprete
WINXP WINXP WINXP WINXP
LINUX LINUX LINUX LINUX
Introduccin a la Programacin en Java


Ing. Alma Leticia Palacios Guerrero 8

2.3. Componentes de Java
La plataforma de Java tiene dos componentes: La mquina virtual de Java y el API de Java.
El API (Application Programming Interface) es un conjunto de componentes de software, est agrupado
en paquetes o libreras de clases.








2.4 Tipos de Programas en Java
Los tipos de programas ms comunes en Java son los applets y las aplicaciones standalone.
Applet: Es un programa que se apega a ciertas convenciones que le permiten correr en un browser
habilitado para Java.
Aplicacin Standalone: Es un programa independiente que corre directamente en plataforma Java.

Plataforma
de Hardware
Mquina Virtual
de Java
API de Java
programa.java

También podría gustarte