0% encontró este documento útil (0 votos)
12 vistas10 páginas

0.2 Fundamentos de Java

Cargado por

Sebastian Lopez
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
12 vistas10 páginas

0.2 Fundamentos de Java

Cargado por

Sebastian Lopez
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 10

FUNDAMENTOS DE JAVA

PROGRAMACIÓN ORIENTADA A OBJETAS

KELLYNDJ
System.out.println(“Adaptado por: Kellyn Delgado Jaimes”);
<?php echo("correo:[email protected]");?>

Programación
(Gardey, 2009) define programación “es la acción y efecto de programar.
Este verbo tiene varios usos: se refiere a idear y ordenar las acciones que
se realizarán en el marco de un proyecto; al anuncio de las partes que
componen un acto o espectáculo; a la preparación de máquinas para que
cumplan con una cierta tarea en un momento determinado; a la elaboración
de programas para la resolución de problemas mediante ordenadores; y a la
preparación de los datos necesarios para obtener una solución de un
problema a través de una calculadora electrónica.”
Aquí se presenta un concepto aplicado a varios usos, pero llevándolo más al
área de sistemas o informática se puede definir como: el proceso donde se
codifica una serie de instrucciones a partir de algoritmos diseñados según
requerimientos pre-establecidos por un usuario o cliente.
En la programación existen varias clasificaciones de los lenguajes de
programación en cuanto al nivel aplicado, están:
Lenguaje de Máquina: Es un lenguaje dependiente del hardware, es decir
depende del diseño del equipo y este lenguaje se compone de 0 y 1 mejor
conocido como lenguaje binario.
Lenguaje de Bajo Nivel: Llamados también ensambladores utilizan
palabras nemotécnicas, es decir palabras abreviadas, pero en inglés,
generalmente son utilizados para programar procesadores.
Lenguaje de Alto Nivel: Son programas que según su sintaxis
preestablecida por su creador se pueden codificar otros programas,
generalmente la sintaxis es muy parecida al inglés.
Lenguaje de Programación: Así como nosotros los humanos tenemos un
lenguaje para comunicarnos, las máquinas tienen su propio lenguaje, como
se habló anteriormente en el de Máquina, que son 0 y 1 (apagado y
encendido). Un Lenguaje de Programación tiene su sintaxis (lenguaje) y está
diseñado para codificar una serie de instrucciones y ser interpretadas
posteriormente ser ejecutadas para lograr un objetivo o tarea

Historia y origen de Programación Orientada a Objetos.


System.out.println(“Adaptado por: Kellyn Delgado Jaimes”);
<?php echo("correo:[email protected]");?>

Ensamblador ¿ Fortran
¿
Smalltalk 80
Simula Smalltalk 72
C++

Objetive c
1960 1970 1980 1990
Eiffel

Python

¿Cómo Surge Java?

Java surge en las instalaciones de Sun Microsystems, en 1991 sale la


primera versión funcional que era llamado OAK que posteriormente fue
nombrado JAVA en el 1995.

Inicialmente la necesidad que había, era la de un lenguaje de programación


que fuese independiente de la plataforma, porque existían muchas
arquitecturas incompatibles. Se necesitaba un lenguaje que pudiera correr
en dispositivos electrodomésticos. Sun decidió crear una filial llamada
FirtPerson INC., en donde su mercado eran los equipos electrodomésticos
como: microondas, tostadoras, etc. y la televisión interactiva; este era un
mercado que prometía grandes ganancias, pero, Sun quería innovar, dado
que los usuarios no eran habilidosos para manejar estos dispositivos y se
requería de una interfaz mucho más fácil e innovadora.

James Gosling era miembro líder del grupo de desarrollo y con bastante
experiencia, decidió que las ventajas aportadas por C++ no compensaban el
gran costo de pruebas y depuración. Ya Gosling había estado trabajando
en OAK, el cual utilizaba la sintaxis de c++ y trataba de mejorar las
deficiencias que tenía el lenguaje. La desventaja de C++ era que debía ser
compilado para cada arquitectura o cpu que fuese a utilizar y si esta
cambiaba todo el software debía compilarse de nuevo, esto traía como
consecuencia elevados costos y problemas con los dispositivos electrónicos.
El primer proyecto en que se aplicó este lenguaje, era el Proyecto Green que
era un sistema de control completo de los aparatos electrónicos y el entorno
de un hogar. Se construyó un pc experimental el Star 7, este sistema
presentaba una interfaz basada en la representación de una casa animada
y el control era mediante una pantalla táctil.
System.out.println(“Adaptado por: Kellyn Delgado Jaimes”);
<?php echo("correo:[email protected]");?>

Luego llega otro proyecto llamado Video On Demand el cual se basaba en


una interfaz para televisión interactiva, lamentablemente ninguno de los 2
proyectos se comercializó, pero fueron desarrollados en Java primitivo.
Finalmente, la filial FirstPerson cerró en 1994 en la primavera.

Mientras se trabajaba en mejorar Java, surge otro factor importante la World


Wide Web, con esta aparición fue lanzado Java a la vanguardia de un
lenguaje de programación portable. Bill Joy cofundador de Sun y uno de
los desarrolladores de Unix de la universidad de Barkley vio en OAK el
instrumento para disputar el campo de internet a Microsoft, finalmente tras
el cambio de nombre, arreglos y modificaciones de diseño llega en 1995
Java.

¿Qué es Java?

Java es considerado una plataforma de desarrollo basado en el lenguaje de


programación c y c++, el cual es independiente de plataforma.
Paradigma de Programación

• Los programas son implementados y organizados como una


colección cooperativa de entidades, donde cada uno está
representando algún elemento del mundo real.
• La programación orientada a objetos persigue simular o
representar las entidades del mundo real y su uso en forma
natural en la resolución de un problema de computación

¿Qué es la POO?
Es una técnica en el desarrollo de programas que se basa en el mundo real,
donde el objetivo es modelarlo como Objetos.

Es muy importante diferenciar una clase de un objeto y un método, vamos


a definir y conocer que es cada uno.

Clase: Una clase es un modelo (plantilla) o estructura de un objeto, en


pocas palabras la definición de un objeto por medio de atributos y métodos.
System.out.println(“Adaptado por: Kellyn Delgado Jaimes”);
<?php echo("correo:[email protected]");?>

Una clase por sí sola no ejecuta nada, al crear el objeto es que hacemos uso
de la clase.
Objeto: Los objetos son lo que se pretende codificar, modelar a partir de
ciertas cosas como la clase, los atributos y los métodos, un objeto puede
ser una persona, un carro, un empleado, una figura geométrica.
Atributo: Los atributos son las características y propiedades que puede
tener un objeto. Ejemplo: Si creamos una clase llamada “Persona” sus
atributos serian nombre, apellido, edad, altura, etc; otro ejemplo una clase
llamada “Carro”, sus atributos pueden ser: modelo, color, año, marca.
Método: Son las funciones que se pueden realizar con un objeto. Ejemplo:
con el objeto Carro yo puedo realizar métodos como acelerar y frenar.
Instancia: Cuando decimos, “instanciar un objeto” nos referimos a crear
el objeto, partiendo de la clase que se ha definido con atributos y métodos.
Cuando instanciamos un objeto estamos creando una copia de todos los
atributos definidos y podremos utilizar los métodos que hay en la clase.
Ejemplo si tengo una clase llamada Carro puedo crear un objeto llamado
mi_carrito y podré tener los atributos como modelo= Q8, color=Azul
año=2016 y marca= Audi, adicional puedo utilizar los métodos de acelerar
y frenar.

Características de la Programación Orientada a Objetos


De forma general la programación orientada a objetos tiene ciertas
características:

• Abstracción: (Ecured, 2017), EcuRed nos habla sobre abstracción


como: “El proceso de abstracción permite seleccionar las
características relevantes dentro de un conjunto e identificar
comportamientos comunes para definir nuevos tipos de entidades en
el mundo real. La abstracción es clave en el proceso de análisis y
diseño orientado a objetos, ya que mediante ella podemos llegar a
armar un conjunto de clases que permitan modelar la realidad o el
problema que se quiere atacar.”

• Encapsulamiento: Es un mecanismo que permite unir código con los


datos que manipula y los mantiene a salvo de interferencias
exteriores. Para entender mejor el encapsulamiento lo podemos ver
como una cubierta exterior que protege del mundo exterior.
System.out.println(“Adaptado por: Kellyn Delgado Jaimes”);
<?php echo("correo:[email protected]");?>

• Herencia: Es un proceso donde un objeto adquiere propiedades de


otro objeto.

• Polimorfismo: Muchas Formas, es una característica que permite


que una interfaz sea utilizada por una clase general de acciones. La
acción específica queda determinada por la naturaleza exacta de la
situación. De manera general “Una interfaz, múltiples métodos.

Lenguajes de Programación que Soportan La POO

1. Python: Es un lenguaje de programación de sintaxis simple,


multiplataforma es decir que puede utilizarse en Windows, Linux, Mc
OS, Symbian y Android; también es multiparadigma porque soporta
la programación orientada a objetos, imperativa y funcional, fue
desarrollado por Niklaus Wirth de profesión profesor y origen suizo.
Ventajas de Python:

• Es un lenguaje de sintaxis simple y sencillo de Aprender con


respecto a otros lenguajes como Java.
• Es un lenguaje de alto nivel de desarrollo rápido.
• Es un lenguaje interpretado
• Multiplataforma es decir puede implementarse en cualquier
plataforma
• Se pueden desarrollar aplicaciones webs.
• Alta demanda lo cual da oportunidad de trabajo.
• Es gratis incluso en el desarrollo de aplicaciones del sector
empresarial.
Desventajas de Python:

• Falta de una buena documentación sobre el lenguaje.


• Como es interpretado es un poco más lento respecto a los
lenguajes compilados.

2. Java: Java es considerado una plataforma de desarrollo basado en el


lenguaje de programación c y c++, el cual es independiente de
plataforma.
System.out.println(“Adaptado por: Kellyn Delgado Jaimes”);
<?php echo("correo:[email protected]");?>

Paradigma de Programación

• Los programas son implementados y organizados como una


colección cooperativa de entidades, donde cada uno está
representando algún elemento del mundo real.
• La programación orientada a objetos persigue simular o
representar las entidades del mundo real y su uso en forma
natural en la resolución de un problema de computación
Ventajas de Java:

• Es un lenguaje La multiplataforma.
• Posee una de las librerías más completas y apoyo de
comunidad.
• Es más rápido que el lenguaje interpretado ya que es compilado.
• Tiene manejo automático de memoria con el garbage-colletor.
• Se desarrollan programas vía web.
• Es un lenguaje Robusto.

Desventajas de Java:

• Se necesita de una máquina virtual para su portabilidad.


• Sintaxis muy complicada.
• La implementación de un software diseñado en Java en
bastante lenta.
• Parte de sus herramientas deben pagarse.

3. C++: Lenguaje de Programación Estructurado que soporta la


programación orientada a Objetos.
Ventajas de Java:

• Es un lenguaje evolucionado a multiparadigma.


• Es un lenguaje base para aprender muchos otros programas ya
que es didáctico.
• Es un lenguaje Robusto.
• Es uno de los lenguajes hoy día con demanda en el campo
laboral.
• Soporta programación bajo nivel.
• Es Compilado.
System.out.println(“Adaptado por: Kellyn Delgado Jaimes”);
<?php echo("correo:[email protected]");?>

Desventajas de Java:

• Su sintaxis no es fácil de aprender.


• Utiliza punteros lo cual se hace arduo el trabajo.
• No tiene manejo automático de la memoria.

4. PHP: A partir de PHP 5 se puede programar orientado a objetos ya que


en versiones anteriores no se podía programar con este paradigma.
Ventajas de PHP:

• Reutilización de código.
• Código más organizado y estructurado.
• Lenguaje multiplataforma
• Gran capacidad de conexión a motores más usados en la
actualidad
• Tiene gran capacidad de soporte y una amplia biblioteca de
funciones.
• PHP no requiere ningún tipo de licencia
Desventajas de PHP:

• Se debe conocer de HTML.


• Se necesita de servidores webs.
• Se debe conocer de seguridad web.

Otras Características de Java

• Distribuido: Java fue ideado para el entorno distribuido, ya que


gestiona los protocolos de interconexión TCP/IP. Esto permite
a kis programadores acceder a la información a través de la red.
• Robusto: Ser robusto tuvo prioridad en la creación o diseño de
java. Java libera al desarrollador por errores comunes de
programación como es estrictamente tipificado, comprueba el
código durante la ejecución. Para entender esta característica
de Java, consideremos 2 de las causas más importantes de fallo
de un programa: la gestión de memoria y las condiciones de
excepción no controladas. Java internamente reserva y libera
la memoria. El control o gestión de excepciones Java la
System.out.println(“Adaptado por: Kellyn Delgado Jaimes”);
<?php echo("correo:[email protected]");?>

proporciona ya que los errores de ejecución pueden y deben ser


gestionados por el programa.
• Multihilo: Java permite la programación multihilo que permite
programas en red interactivos, que hagan varias cosas en forma
simultáneamente ya que Java permite la sincronización de
múltiples procesos que permiten construir fácilmente sistemas
interactivos
• Arquitectura Neutral: Los diseñadores de java tomaron
decisiones en el lenguaje y en el intérprete Java, su objetivo fue
escribir una vez; ejecutar en cualquier sitio, en cualquier
momento y para siempre.

• Interpretado y de alto rendimiento: Java permite la creación


de programas que pueden ejecutarse en diferentes plataformas
por medio de la compilación a bytecode, este código es
interpretado en cualquier sistema que tenga un intérprete Java.
• Distribuido: Java es ideal para Internet, ya que gestiona los
protocolos TCP/IP. Soporta la invocación de métodos de objetos
situados en computadores diferentes a través de la red.
• Dinámico: Los pequeños paquetes de bytecode pueden ser
actualizados dinámicamente en un sistema que se está
ejecutando.
System.out.println(“Adaptado por: Kellyn Delgado Jaimes”);
<?php echo("correo:[email protected]");?>

Máquina Virtual de Java

La máquina virtual de java (JVM) es una aplicación ejecutable


que representa un procesador genérico en el cual corren los
bytecodes de Java.

También podría gustarte