Hola a todos en esta publicación haremos un resumen de todo lo publicado este mes comenzando por:
¿Qué es JAVA?
Es un lenguaje de programación inventado en el año 1991 por la empresa Sun Microsystems liderada por los conocidos como padres de JAVA James Gosling y Patrick Naughton (esta empresa fue comprada no hace mucho tiempo por Oracle empresa famosa por su gestor de base de datos) ellos desarrollaron este lenguaje para ser utilizado en dispositivos electrodomésticos (Microondas, Lavadoras, etc.). Estos productos tenían poca capacidad y poca potencia de procesamiento ya que en esos tiempos tenían un procesador de un solo núcleo, estos aparatos eran diferentes entre si por lo cual el lenguaje de programación debía tener un código pequeño, compacto y mas importante aun que fuera neutro a su arquitectura (Multiplataforma).
Cuenta la historia que le colocaron como nombre OAK que traducido significa Roble, este nombre ya estaba registrado para otro lenguaje de programación, como ellos eran muy buenos para tomar café decidieron colocarle como nombre JAVA ya que vulgarmente en EE.UU. le dicen a la acción de tomar café, Tomar una taza de Java.
Una ves que crearon el lenguaje de programación con su nombre ya registrado lo intentaron comercializar con los diferentes creadores de estos electrodomésticos pero fue un gran fracaso comercial puesto que no lograron venderlo a ningún fabricante y debido a esto decidieron congelar el proyecto hasta el año 1994 en que el Internet se hacia cada vez mas grande y se dieron cuenta de que las características de JAVA se ajustaban muy bien a la naturaleza de Internet, puesto que la Internet utiliza distintas plataformas y la tecnología JAVA es neutro a su arquitectura.
Producto de esto crearon en el año 1996 un navegador llamado HOTJAVA escrito en lenguaje JAVA. Este navegador era ligero capas de correr en cualquier plataforma y ademas podía ejecutar códigos en su interior, mas conocidos como APPLETS que es un programa en JAVA que se ejecuta en un navegador.
De principio no lo tomaron muy enserio ya que era muy básico hasta que con el tiempo fue creando nuevas actualizaciones de lenguaje de versión JAVA que le fue dando nuevas capacidades y potencialidades.
¿cuales son las características de JAVA?
- Orientado a Objetos: Uno de los principales objetivos del programador de tecnologías JAVA es crear objetos, fragmentos de código autónomo, estos deben ser capas de interactuar con otros objetos para resolver un problema.
- Distribuido: Ofrece soporte para tecnologías de redes distribuidas.
- Simple: Se le quitaron características mas complejas y poco claras que existían en otros lenguajes de programación.
- Multihilo: Se puede programar varios procesos en paralelo dentro de un mismo programa JAVA.
- Seguro: Utiliza medidas de seguridad para proteger los programas de ataques externos, estas medidas son : No permite ller ni escribir ficheros sin permiso, desbordar la pila de ejecución, tampoco permite corromper la memoria.
- Independiente de plataforma: Los programas en tecnología Java son compilados usando un compilador de la tecnología Java. Sin embargo, el formato resultante de un programa basado en la tecnología Java es Bytecode de la tecnología Java independiente de la plataforma, en lugar de código maquina especifico para una CPU. Luego que el Bytecode es creado, es interpretado (ejecutado) por una maquina virtual…
¿Cuáles son los grupos de productos o plataformas de desarrollo?
Java 2 Standard Edition (J2SE):
Es la tecnología Java para computadora personales, notebooks y arquitecturas con poder de procesamiento y memoria considerables. Varias APIs acompañan esta versión y otras tantas pueden ser bajadas opcionalmente de la web de Sun . Es con ellas que la mayoría de las aplicaciones son construidas y ejecutadas. La J2SE posee dos divisiones:
- Java Development Kit (JDK) o Standard Development Kit (SDK): un kit para desarrollo en Java y debe ser instalado sólo por los desarrolladores, por poseer herramientas para tal tarea.
- Java Runtime Edition JRE: una versión más liviana de JDK pues está preparada para el ambiente de ejecución, o sea, esta versión ejecutará los sistemas construidos con SDK.
Java 2 Mobile Edition (J2ME):
Es la tecnología Java para dispositivos móviles con limitaciones de memoria o procesamiento. Posee APIs bien simples y livianas para economizar espacio, memoria y procesamiento. Son utilizadas para sistemas a ejecutar en dispositivos móviles, palm tops, pocket pcs, smartphones, javacards y otros dispositivos. J2ME se divide en dos grupos de bibliotecas:
- Connected Limited Device Configuration (CLDC): Para móviles y smartphones, que son más limitados
- Connected Device Configuration (CDC): Para Palmtops y Pocket pcs y algunos dispositivos más poderosos.
Java 2 Enterprise Edition (J2EE):
Es la tecnología Java para aplicaciones corporativas que pueden estar en Internet o no. Posee un gran número de APIs donde la seguridad es la principal preocupación. Es ideal para la construcción de servidores de aplicación, integración de sistemas o distribución de servicios para terceros.
¿Cuáles son los tipos de datos en JAVA?
Veamos los tipos de datos en Java sobre un esquema de síntesis:
¿Que es una Variable?
Es un espacio en la memoria del computador donde se almacena un valor que puede cambiar durante la ejecución de un programa, se utiliza cuando surge la necesidad de guardar datos temporalmente al momento de crear un programa.
La variable se crea especificando el tipo de dato y luego el nombre de la variable y se inicia asignándole un valor.
Ejemplo
int i = 1;
¿Qué es una Constante?
Es un espacio en la memoria del computador donde se almacena un valor que No cambiara durante la ejecución de un programa, se utiliza cuando surge la necesidad de guardar datos temporalmente, y cuyo valor debe ser fijo o constante al momento de crear un programa.
La constante se crea utilizando la palabra final, acontinuación el tipo de dato y el nombre de la constante.
Ejemplo
final double PI = 3.14159;
¿Cuales son los operadores aritméticos y lógicos?
Aritméticos:
Suma : +
Resta : -
Multiplicación: *
División : /
Lógicos, Relacionales y Booleanos:
Mayor que : >
Menor que : <
Distinto : !=
Igual : ==
Y : &&
O : ||
Incremento y decremento:
Incremento : ++ a <- a+1
Decremento : --
Otros:
Suma : += n
Resta : -= n
Multiplicación : *= n
División : /= n
Concatenación :
Une o concatena : +
¿Qué son las Instrucciones de control?
Son un conjunto de instrucciones para controlar el flujo de ejecución de un programa que son las estructuras condicionales, y las estructuras repetitivas.
Instrucción if
Es una sentencia de tipo alternativa que al comprobar si una condición (booleana) es verdadera se ejecutara la sentencia o el bloque de instrucciones. Si no se cumple no ejecutara ninguna.
If ( condición ){
sentencias
}
If – else: al evaluar la condición del if, y en el caso que resulte ser falsa ejecutara la sentencia o el bloque que continúe del else.
If ( condición ){
sentencias
}
else{
sentencias
}
Instrucción Switch
La sentencia switch se encarga de estructurar una selección múltiple.
Sintaxis:
La expresión y las constantes tienen que ser de tipo char, byte, short o int. No booleanos, reales ni long, porque los valores se transforman a tipo int.
Switch (expresión)
{
case valor1:
sentencias…
break;
case valor2:
sentencias…
break;
default:
sentencias…
}
Si no encuentra una constante que coincida con lo ingresado, se busca el default y ejecuta las sentencias que siguen.
Instrucción For
La sentencia for nos permite repetir un ciclo n veces, en donde se debe determinar el valor inicial y cuantas veces se repetirá.
Sintaxis:
for({valor inicial};{condición de termino};{factor de incremento del valor inicial}){
//acá va lo que se repetirán veces de acuerdo a la condición de término
}
Si no lleva el valor, condición ni factor de incremento, no tendríamos control y se produciría un bucle infinito.
for ( ; ; ) { }
Instrucción While
Sentencia de iteración o repetitiva, permite ejecutar una sentencia o un bloque de instrucciones, mientras la condición de tipo booleano (true - false) sea verdadera, al concluir se vuelve a evaluar la condición y continuara así hasta que cambie a falso. Si no fuera así, se crearía un ciclo infinito.
while ( condición )
{
Sentencias
}
En este caso la condición se evalúa primero, y en el caso que llegara a resultar falsa, la sentencia nunca se ejecutaría.
Es como un while pero al revés, primero ejecuta las sentencias y luego
evalúa la condición, si esta es verdadera inicia nuevamente un ciclo, si es
falsa el programa termina. De esta forma al menos una vez tendremos la certeza
que la sentencia se ejecutara.
do
{
sentencias
} while ( condición )
Esta sentencia la utilizamos cuando no conocemos la cantidad de ciclos que se debían cumplir para cumplir con la condición.
Aquí les dejo un ejemplo de como se utilizan las instrucciones en JAVA:
**************************************************************************************
package ejemplo;
import java.util.Scanner;
public class Ejemplo {
public static void main(String[] args) {
Scanner leer = new Scanner(System.in);
System.out.println("Menu");
System.out.println("1.- perimetro rectangulo");
System.out.println("2.- area rectangulo");
System.out.println("3.- perimetro cuadrado");
System.out.println("4.- area cuadrado");
System.out.println("5.- perimetro triangulo equilatero");
System.out.println("6.- perimetro triangulo isosceles");
System.out.println("7.- perimetro triangulo escaleno");
System.out.println("8.- numeros de 1 al 100");
System.out.println("Ingrese una opcion");
int opcion = leer.nextInt();
switch(opcion)
{
case 1:
System.out.println("ingrese un numero:");
int a = leer.nextInt();
System.out.println("ingrese otro numero:");
int b = leer.nextInt();
int perimetro5 = a + a + b + b;
System.out.println("el perimetro de un rectangulo es = " + perimetro5);
break;
case 2:
System.out.println("ingrese un numero:");
int x = leer.nextInt();
System.out.println("ingrese otro numero:");
int y = leer.nextInt();
int area5 = x * y;
System.out.println("el area de un rectangulo es = " + area5);
break;
case 3:
System.out.println("ingrese un numero");
int d = leer.nextInt();
int perimetro6 = d * 4;
System.out.println("el perimetro de el cuadrado es= " + perimetro6 );
break;
case 4:
System.out.println("ingrese un numero:");
int n = leer.nextInt();
int area6 = n * n;
System.out.println("el area de un cuadrado es = " + area6);
break;
case 5:
System.out.println("ingrese un numero");
int lado = leer.nextInt();
int perimetro = lado * 3;
System.out.println("el perimetro es = " + perimetro);
break;
case 6:
System.out.println("ingrese un numero");
int lado2 = leer.nextInt();
System.out.println("ingrese otro numero");
int base = leer.nextInt();
int perimetro2 = (lado2 * 2) + base;
System.out.println("el perimetro es = " + perimetro2);
break;
case 7:
System.out.println("ingrese un numero");
int ladoA = leer.nextInt();
System.out.println("ingrese otro numero");
int ladoB = leer.nextInt();
System.out.println("ingrese otro numero");
int ladoC = leer.nextInt();
int perimetro3 = ladoA + ladoB + ladoC;
System.out.println("el perimetro es = " + perimetro3);
break;
case 8:
for( int i = 1 ; i <= 100 ; i++){
System.out.println("el numero es " + i);
}
}
}
}
**************************************************************************************
Instrucción Do
– while
do
{
sentencias
} while ( condición )
Aquí les dejo un ejemplo de como se utilizan las instrucciones en JAVA:
**************************************************************************************
package ejemplo;
import java.util.Scanner;
public class Ejemplo {
public static void main(String[] args) {
Scanner leer = new Scanner(System.in);
System.out.println("Menu");
System.out.println("1.- perimetro rectangulo");
System.out.println("2.- area rectangulo");
System.out.println("3.- perimetro cuadrado");
System.out.println("4.- area cuadrado");
System.out.println("5.- perimetro triangulo equilatero");
System.out.println("6.- perimetro triangulo isosceles");
System.out.println("7.- perimetro triangulo escaleno");
System.out.println("8.- numeros de 1 al 100");
System.out.println("Ingrese una opcion");
int opcion = leer.nextInt();
switch(opcion)
{
case 1:
System.out.println("ingrese un numero:");
int a = leer.nextInt();
System.out.println("ingrese otro numero:");
int b = leer.nextInt();
int perimetro5 = a + a + b + b;
System.out.println("el perimetro de un rectangulo es = " + perimetro5);
break;
case 2:
System.out.println("ingrese un numero:");
int x = leer.nextInt();
System.out.println("ingrese otro numero:");
int y = leer.nextInt();
int area5 = x * y;
System.out.println("el area de un rectangulo es = " + area5);
break;
case 3:
System.out.println("ingrese un numero");
int d = leer.nextInt();
int perimetro6 = d * 4;
System.out.println("el perimetro de el cuadrado es= " + perimetro6 );
break;
case 4:
System.out.println("ingrese un numero:");
int n = leer.nextInt();
int area6 = n * n;
System.out.println("el area de un cuadrado es = " + area6);
break;
case 5:
System.out.println("ingrese un numero");
int lado = leer.nextInt();
int perimetro = lado * 3;
System.out.println("el perimetro es = " + perimetro);
break;
case 6:
System.out.println("ingrese un numero");
int lado2 = leer.nextInt();
System.out.println("ingrese otro numero");
int base = leer.nextInt();
int perimetro2 = (lado2 * 2) + base;
System.out.println("el perimetro es = " + perimetro2);
break;
case 7:
System.out.println("ingrese un numero");
int ladoA = leer.nextInt();
System.out.println("ingrese otro numero");
int ladoB = leer.nextInt();
System.out.println("ingrese otro numero");
int ladoC = leer.nextInt();
int perimetro3 = ladoA + ladoB + ladoC;
System.out.println("el perimetro es = " + perimetro3);
break;
case 8:
for( int i = 1 ; i <= 100 ; i++){
System.out.println("el numero es " + i);
}
}
}
}
**************************************************************************************
Ejemplo en Scratch
A continuación les mostramos un ejemplo de sentencia if anidadas, para poder elegir la opción que se desee ejecutar.
En el proyecto tenemos un objeto (lápiz) que explica básicamente 3 tipos de triángulos, en el momento de interactuar con el usuario se utiliza de la paleta de programa el sensor preguntar con el mensaje "elige que triangulo quieres que dibuje para ti" y esperar, se espera la respuesta ingresada por teclado de las 3 opciones que indica antes, y mediante el si - entonces (if - else en java) se evalúa la respuesta y si coincide con alguna de las opciones se ejecuta el bloque de acciones que corresponda.
Para que quede mas claro presiona la bandera verde en el centro de la ventana del proyecto.
Para mayor información sobre el código y ver dentro del proyecto pincha aquí
Una buena manera de explicarlo también es viendo o pasándolo a Pseudocódigo, de esa forma y como ya estamos mas familiarizados lo podríamos entender mejor.
Ejemplo del Pseudocódigo
de esta forma se ve mejor la manera de anidar las sentencias if y ademas se aprecia un bucle (repetir - hasta que) dentro de una de ellas, que ejecuta el ciclo para dibujar las lineas del triangulo del mismo valor una determinada cantidad de veces.