Está en la página 1de 10

INGENIERÍA EN DESARROLLO DE SOFTWARE

PROGRAMACIÓN ORIENTADA A OBJETOS 1

UNIDAD 1. INTRODUCCIÓN A JAVA


Evidencia de Aprendizaje. Programa en JAVA

KEREN JARED ARÉVALO ARCIA


ALUMNA

ES1822025316
MATRÍCULA

DS-DPO1-2001-B2-006 - SEGUNDO SEMESTRE


GRUPO

PROFR. SALVADOR CAMACHO ROBLES


DOCENTE

Sábado 18 de Abril de 2020


INGENIERÍA EN DESARROLLO DE SOFTWARE ~ PROGRAMACIÓN ORIENTADA A OBJETOS I

CONTENIDO
Introducción ............................................................................................................. 3
Cuadro comparativo: Abstracción, Herencia, Polimorfismo, Encapsulación y
Diferencia entre Programación Orientada a Objetos y Programación Estructural ... 4
Resumen: Generalidades de JAVA ......................................................................... 6
Máquina Virtual de JAVA ..................................................................................... 6
Entorno de Desarrollo y Configuración ................................................................ 6
2
Tipos de Datos Soportados en JAVA .................................................................. 7
Operadores Aritméticos, Lógicos y Relacionales ................................................. 8
Conversiones de Tipos de Datos ......................................................................... 9
Fuentes de Consulta ............................................................................................. 10

KEREN JARED ARÉVALO ARCIA ~ MATRÍCULA: ES1822025316


INGENIERÍA EN DESARROLLO DE SOFTWARE ~ PROGRAMACIÓN ORIENTADA A OBJETOS I

INTRODUCCIÓN
En esta asignatura tendremos la oportunidad de conocer otro paradigma de
programación distinto al que conocimos en la asignatura de Fundamentos de
Programación que fue la programación estructural o secuencial, hablamos de la
Programación Orientada a Objetos, por lo que conoceremos nuevos términos, como
objetos, clases, métodos, etc., para ello reconoceremos propiedades aplicables a
los objetos como la herencia, polimorfismo, abstracción y encapsulación.
Por otro lado, conoceremos un nuevo lenguaje de programación distinto a C, el cual
fue aplicado para comprender la programación estructurada o secuencial, nos 3
referimos al lenguaje JAVA que es, por decirlo así, el predeterminado para la
comprensión y aprendizaje del paradigma de la programación orientada a objetos.
Resumiremos temas como la máquina virtual de JAVA, el entorno de desarrollo y
configuración, los tipos de datos que son soportados en JAVA, los operadores que
se pueden usar en este lenguaje, así como las conversiones entre tipos de datos.
Finalmente, para esta evidencia de aprendizaje haremos un ejercicio práctico como
ejemplo de código inicial en este lenguaje de programación JAVA.

KEREN JARED ARÉVALO ARCIA ~ MATRÍCULA: ES1822025316


INGENIERÍA EN DESARROLLO DE SOFTWARE ~ PROGRAMACIÓN ORIENTADA A OBJETOS I

CUADRO COMPARATIVO: ABSTRACCIÓN, HERENCIA,


POLIMORFISMO, ENCAPSULACIÓN Y DIFERENCIA
ENTRE PROGRAMACIÓN ORIENTADA A OBJETOS Y
PROGRAMACIÓN ESTRUCTURAL
Descripción de su
Concepto Imagen representativa
interpretación
La abstracción es una propiedad
que consiste en sustraer las 4
características específicas de un
objeto, es decir, aquellas que lo
distinguen de los demás tipos de
objetos y que logran definir
Abstracción
límites conceptuales para reducir
la complejidad del objeto. Esta
propiedad se centra en lo que
Abstracción. Imagen tomada de hace el objeto en lugar de cómo
https://sites.google.com/site/conte lo hace.
nidospoo/abstracion-large.jpg
El polimorfismo es una
propiedad en la que los objetos
de una clase tienen la capacidad
de responder al mismo mensaje
o evento en función de los
parámetros utilizados durante su
Polimorfismo
invocación. Se refiere a la
posibilidad de definir clases
Polimorfismo. Imagen tomada de diferentes que tienen métodos o
https://www.youtube.com/watch?r atributos denominados de forma
eload=9&v=6CNMAq1UZ7c idéntica, pero que se comportan
de manera distinta.
La encapsulación es una
propiedad que hace referencia a
objetos que si bien por fuera
pueden ser similares por dentro
funcionan de manera distinta, es
Encapsulación decir, es el ocultamiento de
estado de los objetos, el cual
permite intercambiarlos en una
Encapsulación. Imagen tomada de operación garantizando la
https://en.ppt-online.org/323450 integridad de los datos que
contienen dichos objetos.

KEREN JARED ARÉVALO ARCIA ~ MATRÍCULA: ES1822025316


INGENIERÍA EN DESARROLLO DE SOFTWARE ~ PROGRAMACIÓN ORIENTADA A OBJETOS I

Es uno de los pilares de la POO


por el cual una clase permite
heredar las características
(atributos y métodos) de otra
clase, es decir, permite que se
puedan definir nuevas clases
basadas de unas ya existentes a
fin de reutilizar el código,
Herencia generando así una jerarquía de
Herencia. Imagen tomada de clases dentro de una aplicación. 5
https://www.aprenderaprogramar.
com/index.php?option=com_cont
ent&view=article&id=651:concept
o-o-definicion-de-herencia-en-
java-programacion-orientada-a-
objetos-ique-es-ejemplos-
cu00684b&catid=68&Itemid=188
La principal diferencia radica en
que la programación
estructurada la atención principal
del programa (y del
programador) está en la
Programación
secuencia de las instrucciones,
Orientada a
mientras que en la programación
Objetos
orientada a objetos la atención
VS
principal está en las partes
Programación
Diferencias entre POO y la (objetos) que la conforman,
estructurada
programación secuencial. Imagen cómo interactúan y las
tomada de operaciones que se pueden
http://s.culturacion.com/wp- hacer sobre éstos.
content/uploads/2011/05/Image1.j
pg
Tabla 1 Cuadro comparativo de terminología orientada a objetos.

KEREN JARED ARÉVALO ARCIA ~ MATRÍCULA: ES1822025316


INGENIERÍA EN DESARROLLO DE SOFTWARE ~ PROGRAMACIÓN ORIENTADA A OBJETOS I

RESUMEN: GENERALIDADES DE JAVA


MÁQUINA VIRTUAL DE JAVA

La JVM (Java Virtual Machine) es un software de proceso nativo y el punto de


partida principal del lenguaje de programación Java, pues es el componente que lo
hace especial al darle su característica de multiplataforma, compilación tan
compacta del código y protección de código malicioso a los usuarios de este
lenguaje. La JVM actualmente existe para muchas (casi todas) las plataformas de
computación más populares. La funcionalidad de la Máquina Virtual de Java se 6
representa en la siguiente imagen tomada del material proporcionado por el docente
acerca de la unidad 1.

Ilustración 1 Funcionalidad de la Máquina Virtual de Java. Tomada de DCEIT (2020).

ENTORNO DE DESARROLLO Y CONFIGURACIÓN

Es una herramienta software de aplicación que facilitan muchísimo la producción de


aplicaciones completas, pues el programador sólo debe preocuparse por la
introducción de los datos que involucran a su aplicación, cómo obtenerlos,
procesarlos y almacenarlos. Lo demás corre por parte del IDE (Integrated
Development Environment, Entorno Integrado de Desarrollo), el cual es un
programa de tipo informático que conjunta en sí mismo una serie de herramientas
útiles para la programación de aplicaciones. Para Java existe una lista de varios
IDE’s de donde se puede elegir uno para usar, de entre los más conocidos están:

KEREN JARED ARÉVALO ARCIA ~ MATRÍCULA: ES1822025316


INGENIERÍA EN DESARROLLO DE SOFTWARE ~ PROGRAMACIÓN ORIENTADA A OBJETOS I

Eclipse, Borland JBuilder, Sun Java Studio Creator, NetBeans, IBM WebSphere
Studio Site Developer for Java, Dreamweaver, WebLogic Workshop, Oracle
JDeveloper, IntelliJ Idea, JCreator, entre otros.
A todos estos IDE’s los conforman básicamente un editor de texto, un compilador,
un intérprete, un depurador, un constructor de interfaces gráficas y opcionalmente
una posibilidad de trabajar conectado a un servidor de control de versiones.
En cuanto a la configuración del IDE basta con la configuración inicial que se trae
por defecto después de su instalación. Algunas de las configuraciones que se
pueden hacer pueden ser desde simples como el tipo, color y tamaño de letra para 7
escribir el código fuente, hasta opciones avanzadas como dónde se consumen
servicios web de algún sitio de internet o cómo será la salida de la aplicación como
jar, jar comprimido, etc.

TIPOS DE DATOS SOPORTADOS EN JAVA

Para determinar qué tipo de dato utilizar basta con analizar qué tipo de dato se
quiere almacenar en la variable de la cual se debe tomar en cuenta el rango de
valores que se requiere, para ello se muestra a continuación una tabla con los tipos
de datos soportados en Java.
Tipo de dato Tamaño en bits Rango de valores Descripción
Números enteros
8-bit
Byte -128 a 127 Entero de un byte
complemento a 2
16-bit
Short -32,768 a 32,767 Entero corto
complemento a 2
32-bit -2,147,483,648 a
Int Entero
complemento a 2 2,147,483,647
-
64-bit 9,223,372,036,854,775,808L
Long Entero largo
complemento a 2 a
9,223,372,036,854,775,807L
Números reales
32-bit IEEE 754 +/- 3.4E+38F Coma flotante
Float con precisión
simple
64-bit IEEE 754 +/- 1.8E+308 Coma flotante
Doublé con precisión
doble
Otros tipos
16-bit Carácter Conjunto de caracteres Un solo carácter
Char
Unicode ISO

KEREN JARED ARÉVALO ARCIA ~ MATRÍCULA: ES1822025316


INGENIERÍA EN DESARROLLO DE SOFTWARE ~ PROGRAMACIÓN ORIENTADA A OBJETOS I

true o false Verdadero o falo Un valor


Booleano
booleano
Variable Conjunto de caracteres Cadena de
String
caracteres.
Tabla 2 Tipos de datos soportados en Java. Tomada de DCEIT (2020).

OPERADORES ARITMÉTICOS, LÓGICOS Y RELACIONALES

En Java, se le llama operador a un símbolo específico que realiza una “operación”


8
determinada por ese símbolo entre dos o más valores, como por ejemplo una suma,
resta, etc., pueden tener notación prefija (++a) y notación posfija (a++). A
continuación, se muestran los tipos de operadores que se pueden utilizar en Java.
Operadores Significado Asociatividad
++ Incremento Derecha a izquierda
-- Decremento Derecha a izquierda
+ Unario + (símbolo positivo) Derecha a izquierda
- Unario – (símbolo negativo) Derecha a izquierda
* Multiplicación Izquierda a derecha
/ División Izquierda a derecha
% Resto (módulo) Izquierda a derecha
+ Suma Izquierda a derecha
- Resta Izquierda a derecha
Tabla 3 Operadores Aritméticos.

Operador Descripción
== Igual (comparación de igualdad)
> Mayor que
< Menor que
&& Conjunción lógica (and)
!= Distinto
>= Mayor o igual que
<= Menor o igual que
|| Disyunción lógica (or)
Tabla 4 Operadores Lógicos.

Operador Uso Equivalente a


+= a += b a=a+b
-= a -= b a=a–b
*= a *= b a=a*b
/= a /= b a=a/b
%= a %= b a=a%b
&= a &= b a=a&b
Tabla 5 Operadores de Asignación.

KEREN JARED ARÉVALO ARCIA ~ MATRÍCULA: ES1822025316


INGENIERÍA EN DESARROLLO DE SOFTWARE ~ PROGRAMACIÓN ORIENTADA A OBJETOS I

Operador Uso Operación


>> a >> b Desplaza los bits de “a” a la
derecha “b” veces
<< a << b Desplaza los bits de “a” a la
izquierda “b” veces
>>> a >>> b Desplaza los bits de “a” a la
derecha “b” veces
(omitiendo el signo)
Tabla 6 Operadores de Bit.

Operadores Representación 9
Operadores posfijos [], (), a++, a--
Operadores unarios ++a, --a, +a, -a, ~, !
Creación o conversión new(tipo) a
Multiplicación *, /, %
Suma +, -
Desplazamiento <<
Comparación ==
Igualdad ==, !=
AND a nivel de bit &
OR a nivel de bit ^
XOR a nivel de bit |
AND lógico &&
OR lógico ||
Condicional ?:
Asignación =, +=, -=, *=, /=, &=, ^=, |=, <<===
Tabla 7 Tabla de precedencia de los operadores.

CONVERSIONES DE TIPOS DE DATOS


Conocida también como Casting, conversión o tipado, es pasar un objeto de un tipo
a otro. En la siguiente imagen podemos ver las distintas posibilidades de conversión
con las variables de tipo primitivo:

Ilustración 2 Conversión de tipos de datos primitivos. Tomada de Prieto Fernández (2019).

KEREN JARED ARÉVALO ARCIA ~ MATRÍCULA: ES1822025316


INGENIERÍA EN DESARROLLO DE SOFTWARE ~ PROGRAMACIÓN ORIENTADA A OBJETOS I

FUENTES DE CONSULTA
DCEIT. (2020). Programación Orientada a Objetos. Unidad 1: Introducción a Java.
Universidad Abierta y a Distancia de México, Desarrollo de Software. México:
UnADM. Recuperado el 09 de Abril de 2020, de
https://ceit.unadmexico.mx/contenidos/DCEIT/BLOQUE2/DS/02/DPO1/U1/d
escargables/DPO1_U1_Contenido.pdf
Deitel, P., & Deitel, H. (2008). JAVA cómo programar (Séptima ed.). México, México:
Pearson Prentice-Hall. Recuperado el 12 de Abril de 2020
10
Prieto Fernández, R. (2019). Conversión de tipos de datos en Java. Recuperado el
18 de Abril de 2020, de Raúl Prieto Fernández:
https://www.raulprietofernandez.net/blog/programacion/conversion-de-tipos-
de-datos-en-java
Sun Microsystems. (2006). Fundamentals of the Java Programming Language SL-
110 Student Guide. Santa Clara, California: Sun Microsystems. Recuperado
el 15 de Abril de 2020

KEREN JARED ARÉVALO ARCIA ~ MATRÍCULA: ES1822025316

También podría gustarte