Вы находитесь на странице: 1из 20

Vdeo, diapositivas y ejemplos de la primera clase del

curso de Introduccin a Java. En esta clase tenemos una


iniciacin al lenguaje de programacin Java.
Esta es la primera clase del Curso Gratuito de Introduccin a Java, realizada
como iniciativa de DesarrolloWeb.com y nuestra plataforma para la formacin
online EscuelaIT. Se trata de un curso de 4 das, esta es la primera sesin.
Veremos qu es Java, qu necesito para comenzar, etc.

Las clases las est ofreciendo Jos Dimas Lujn, nuestro compaero de los
#androidIO, que nos ofrece este conocimiento en torno a Java como lenguaje
de programacin de propsito general. Sin embargo, es un curso que
podremos aplicar muy bien para comenzar el desarrollo con Android, que se
realiza en Java como lenguaje nativo. Podrs aprender con nosotros desarrollo
para los dispositivos de Google en el Curso de Android Bsico.

"La mayora de los buenos programadores programan no porque esperan que les paguen
o que el pblico los adore, sino porque programar es divertido." Linus Torvalds
Qu es Java?
Es un lenguaje de programacin multipropsito, con el que podemos hacer
todo tipo de aplicaciones, de escritorio, orientadas a web, a dispositivos, etc. La
persona que encabezaba el equipo de creacin es James Arthur Gosling, al
que se considera el creador. As en resumen tiene como particularidades.
Multiplataforma:
Lo que se conoce como "write once, run everywhere", escribe una vez y ejecuta
cuando quieras. Es un lenguaje que funciona independiente del sistema
operativo sobre el que se ejecuta. Esto se puede conseguir con una mquina
virtual que hace de puente entre el lenguaje y el sistema operativo. Es el nico
lenguaje que tiene esta arquitectura, aunque existan otros lenguajes que
tambin funcionan en varios sistemas operativos.
OOP (Programacin Orientada a Objetos POO):
Es un lenguaje enteramente diseado para programar con Orientacin a
objetos. Usa clases, objetos, mtodos y cosas que veremos como introduccin
ms adelante.
JVM (Java Virtual Machine):
Es el diferencial de Java, es lo que permite que podamos ejecutar los
programas en cualquier entorno o sistema operativo. Cuando escribes cdigo
en Java, este se compila y se genera un "byte code" ese cdigo se ejecuta en
la mquina virtual, o mejor dicho se interpreta. Existe una mquina virtual para
cada dispositivo y gracias a ella es la que podemos interpretar en cada sistema
ese cdigo.
Nota: Android tiene su propia mquina virtual, que tiene unas caractersticas diferentes, por lo que
si tienes un programa Java no se ejecuta en Android y lo que escribes para Android no se ejecuta en

Java "comn".

Qu es la programacin
En este curso bsico tambin hay muchos diseadores y es bueno que
expliquemos qu es la programacin. En el vdeo se explica que es escribir
programas definiendo una serie de pasos, indicados por medio de instrucciones
en un lenguaje. Esos pasos son los llamados algoritmos.
El ordenador solo entiende cdigo binario, pero existen los lenguajes de alto
nivel que son ms cercanos al lenguaje humano, como Java, C, Javascript,
Python, PHP, etc. Generalmente lo que aprende un programador es uno de
estos lenguajes.

Para programar necesitamos:

Lenguaje de programacin
Computadora
Paciencia, porque es necesaria para un mejor aprendizaje. Tienes que saber que
los ordenadores solo siguen instrucciones, son rpidos, pero son estpidos (si no le
indicas cmo hacerlo, no saben hacerlo)
Qu necesitas para programar en Java?
Necesitas el Java JDK:
Es el kit de desarrollo para Java, lo mejor es que busques en Google por "java
download" y busques las referencias dentro del site de Oracle, que es el actual
dueo de Java.
Dentro encontrars la descarga de Java JDK (Java Platform JDK) encontrars
referencias tambin como "Java SE Development Kit 7 Downloads", SE
significa "Standar Edition" y ser el paquete de Java que usaremos para la
programacin general.

Dentro de este sitio encontrs muchas versiones y como es lgico, estn


cambiando constantemente las ms adecuadas para descarga, conforme se
van publicando nuevas versiones. Lo mejor por ello es que entres y descargues
la ms actual, siempre la que te interese segn tu sistema operativo y
procesador. (Encuentra ms informacin en el vdeo para saber mejor qu
versin puede ser para ti)

Necesitas JVM:
En este caso la Java Virtual Machine ya viene incluida en el Java JDK, por lo
que nos ahorramos descargar nada ms ;)
Necesitas un editor (o un IDE):
Hay varios niveles de herramientas como editor de cdigo para programar en
Java. En Java lo recomendable es trabajar con un IDE, que tiene mdulos para
hacer cosas necesarias para las tareas de la programacin como compilador,
depurador, ayudas contextuales, etc. Sin embargo, a un nivel ms bajo tambin
puedes programar con un editor de texto plano, como el Bloc de Notas, aunque
no es lo ms recomendable para un lenguaje como Java.
Los IDE son Entornos de desarrollo integrados y son ms recomendables.
Entre los IDE ms comunes encuentras:

Eclipse: Usado por la gran mayora de los desarrolladores Java.


Netbeans: el segundo ms recomendable, usado por una minora, pero tambin es
muy bueno.
Los dos son ideales para programar en Java, aunque nosotros por varios
motivos en el curso usaremos Eclipse, que tambin es el que se usa para
programar en Android.
Lo mejor para descargar Eclipse es que vuelvas a Googlear "Eclipse IDE
Download". El primer enlace probablemente ser el que nos interese, que nos
lleve al sitio de descargas de Eclipse. Encontrars que tiene muchas
distribuciones de Eclipse con diferentes particularidades para diferentes
lenguajes de programacin.

Se recomienda bajar el "Eclipse IDE for Java Developers". (puedes encontrar


ms informacin en el vdeo un poco ms abajo en este artculo)

Ojo, eclipse no se instala, es como un software portable, que lo puedes guardar


en cualquier parte y ejecutar en cualquier ordenador sin necesidad de instalar
nada. Lo guardas en una carpeta de tu ordenador directamente, sin necesidad
de un instalador.

Hola mundo en Java


Para finalizar la clase se realiz el tpico "Hola mundo". Se abri el IDE Eclipse
y se utiliz para hacer el primer programa. (Minuto 38 del vdeo de ms abajo).
El ejemplo se mostr desde cero, y es ideal que lo puedas ver en el propio
vdeo porque se ofrecieron diversas explicaciones que son bsicas para no
perderse en el entorno de desarrollo.
Nota: De hecho, cuando abres Eclipse te pueden desbordar la cantidad de mens y opciones, pero
no te preocupes que las irs conociendo poco a poco. En el vdeo aprenders a crear un nuevo

proyecto y luego introducir archivos de programas dentro de l, cmo ejecutar los programas, activar

la ayuda contextual para saber cmo completar el cdigo en cada momento, etc.

Adems en el video encontrars adems algunas explicaciones de


convenciones que se usan en Java como el Camel Case o "notacin de
camello".
El cdigo del primer ejemplo en Java es tan sencillo como esto:

public class principal {

public static void main(String[] string){

System.out.println("Hola mundo en Java");


}
}
Observars que para ser un "hola mundo", un programa que sirve solo para
mostrar un mensaje por pantalla, tiene unas cuantas lneas de cdigo. Ests
creando una clase y ests definiendo el cdigo del mtodo principal, que se
usa para ejecutar las clases con cdigo "de prueba". en realidad son varias
cosas que veremos mejor en la prxima clase.

"Cuando alguien dice: Quiero un lenguaje de programacin en el que slo tenga que decir
lo que quiero que haga, denle una paleta." Alan J. Perlis
Con esto termina la clase, pero encontrars mucha ms informacin en el
vdeo, as como las respuestas a las preguntas ms tpicas que nos hicieron
durante la clase.
Segunda clase de introduccin a Java, en la que veremos
los tipos primitivos y los operadores que tenemos
disponibles en este lenguaje de programacin.
Esta es la grabacin de la segunda clase del Curso de iniciacin a la
programacin con Java. Estamos viendo los temas ms esenciales para poder
trabajar con este poderoso lenguaje de programacin y en esta ocasin
revisaremos sus caractersticas en cuanto a tipos y operadores. Adems
realizaremos un nuevo ejemplo que ilustre el conocimiento adquirido.

Comenzamos con una bonita cita, que podemos aplicarnos todos los
programadores:

Hazlo simple, tan simple como sea posible, pero no ms.


Albert Einstein
Tipos primitivos
Los tipos de datos primitivos, o tipos de las variables, son aquellas
clasificaciones diferentes de los datos que podemos manejar en un lenguaje de
programacin. Son los nmeros, enteros o con decimales, con diferentes
precisiones, los caracteres, boleanos, etc.
En Java trabajamos con estos tipos de datos primitivos, sacados de la
documentacin de Java.

Byte 8 bits -128 a 127


Short 16 bits -32768 a 32767
Int 32 -2147483648 a 2147483648
Long 64 Un monton.
Float Nmeros decimales
Double Flotante doble precisin
Char un caracter
Boolean falso o verdadero
En el vdeo explicamos en detalle muchas caractersticas interesantes de los
tipos en Java. Quizs t ya sepas algunas cosas, pero sealamos aqu que no
tienes por qu aprederte de la precisin o capacidad de cada tipo de datos, si
por cualquier cuestin no te cabe ese nmro en la variable, Java te va a
avisar. Entonces ojo, no te conviene usar siempre el tipo de datos de capacidad
mayor, porque si no la necesitas estars desaprovechando la memoria.

Declarar variables en Java


En el vdeo luego nos dedicamos a explicar cmo declarar variables en Java,
as como a inicializarla y hacer una operacin importante en los lenguajes
fuertemente tipados, como Java, que se llama "casting" o forzado.
int numero;
//con eso hemos creado una variable, pero no est inicializada

int otronumero = 10;


//la hemos creado y adems inicializado con un valor
El "Casting" o forzado es cuando tenemos una variable de X tipo y queremos
transformarla a una clase diferente. Pero siempre con la condicin de que
tenemos una relacin de herencia entre ambas.

tipos de Casting
Implcito: cuando lo hacemos sin cdigo. Se da si metemos un valor de una
variable con un tipo de capacidad menor en una varialbe de capacidad mayor.
Explicito: es cuando metemos un valor grande en uno pequeo, pero ojo, a
veces perdemos datos.

varFloat = (float) varTipoLong;


Operadores
Luego nos dedicamos a ver algunos operadores de Java, clasificados por sus
distintas clasificaciones.
Operadores matemticos
Operadores relacionales
Operadores lgicos
Vimos los operadores de cada uno de esos tipos, con diversas explicaciones de
inters, y algunas aplicaciones en el ejemplo en cdigo realizado en vivo.

Ejemplo realizado en la clase


Para ilustrar los conocimientos adquiridos en esta clase se realiz en vivo un
ejemplo en el que se trabaja con tipos de datos primitivos y operadores. Para
encontrar las explicaciones detalladas te aconsejamos ver el vdeo de la clase
con calma. El cdigo lo tienes a continuacin:
class principal {

public static void main(String[] string){


int numero1,numero2,resultado; //Declarando variables
numero1=5; //Inicializar una variable
numero2=6;

//suma
resultado=numero1+numero2;
System.out.println(resultado);
//resta
resultado=numero1-numero2;
System.out.println(resultado);
//multiplicacion
resultado=numero1*numero2;
System.out.println(resultado);
//division
resultado=numero1/numero2;
System.out.println(resultado);
//division RESTO
resultado=numero1%numero2;
System.out.println(resultado);

//usando operador relacional


if(numero1 <= numero2){
System.out.println("numero1 es menor o igual a
numero2");
}else{
System.out.println("no se cumple");
}

}
}

Puedes
Tercera clase del curso de Introduccin a Java, dedicada a
las estructuras de control, funciones y la estructura de
datos de Array.
Este es el vdeo de la grabacin de la clase nmero tres del curso gratuito de
Introduccin a la programacin con Java, dedicada a estructuras de control y
tambin otros asunto como las funciones o los arrays. Se trata de una clase
muy prctica que seguro que nos servir para poner en orden muchas ideas y
comenzar a hacer algunos ejemplos ms elaborados.

En este artculo encontrars como siempre un resumen de la clase,

junto con los cdigos y las diapositivas utilizadas en ella.

"La simplicidad es la mxima sofisticacin"


Leonardo da Vinci

Estructuras de control
En Java disponemos de las tpicas estructuras de control que tal vez
conocemos de otros lenguajes de programacin:
If (condicional)
Switch (condicional entre varios valores)
For (repeticin)
While (repeticin mientras)
Do while (repeticin haz mientras)
Para explicarlas se realizaron varios ejemplos:

Ejemplo If:
Solicitar un nmero, que se introduzca por teclado, y comprobar si es, o no,
mayor de edad.

import java.util.Scanner;

class principal {

public static void main(String[] string){


Scanner teclado = new Scanner(System.in);
int edad;
System.out.println("Que edad tienes");
edad=teclado.nextInt();

if(edad>=18){
System.out.println("entonces si eres mayor de edad");
}else{
System.out.println("entonces eres menor de edad");
}
}
}

Como ves, en este primer ejemplo ya comenzamos a trabajar con alguna de las
libreras de Java, en ese caso la clase java.util.Scanner, que nos sirve para
recoger datos. Puedes ver el vdeo para ms referencias sobre lo que se est
haciendo en el import y cmo funcionan los paquetes que importamos con Java
para usar en nuestros programas.

Ejemplo Switch:
Comprobamos el valor de un nmero entre varias posibilidades o, si no casa
ninguna, la prederminada.

class principal {

public static void main(String[] string){


int x = 8;
switch (x) {
case 1:
System.out.println("el valor es 1");
break;
case 2:
System.out.println("el valor es 2");
break;
case 3:
System.out.println("el valor es 3");
break;
default:
System.out.println("quien sabe que numero se puso");
break;
}
}
}

Ejemplo For:
Un simple bucle para mostrar el nmero de la repeticin actual.

class principal {

public static void main(String[] string){

int x;

for(x=1; x<=100;x++){
System.out.print(x+"-");
}

}
Ejemplo While:
Otro sencillo bucle, per esta vez con while, para que se ejecute
indefinidamente, siempre que x sea menor o igual a 100. Fjate que el
incremento o decremento entre iteraciones tienes que hacerlo explcito dentro
del cdigo a ejecutar en cada repeticin. Por su parte, cuando viste el FOR
comprobaste que el incremento del contador se especifica en la propia
cabecera del bucle.
class principal {

public static void main(String[] string){

int x;
x=1;
while (x<=100){
System.out.print(x+"-");
x=x+1;
}
}
}

Arrays en Java
Luego tuvimos la ocasin de conocer los arrays en Java, en el vdeo se explic
el concepto y vimos adems que en Java tienen unas particularidades un poco
rgidas, en comparacin con otros lenguajes, como la necesidad de declarar el
nmero de casillas que tendr la estructura Array.
Ejemplo:

class principal {

public static void main(String[] string){

int[][] calificaciones = new int[2][2];

calificaciones[0][0]=10;
calificaciones[0][1]=10;

calificaciones[1][0]=9;
calificaciones[1][1]=9;

}
}

Funciones en Java
Para acabar se explic lo que es una funcin. De momento y hasta que
conozcamos mejor los objetos en la siguiente clase, diremos que es la
estructura que nos pemiente organizar nuestro cdigo en bloques que se
pueden invocar desde cualquier parte de nuestros programas.
Se enseo a declarar las funciones y por supuesto, tambin a invocarlas.

class principal {
public static int suma(int numero1, int numero2){
int resultado = numero1+numero2;
return resultado;
}
public static void main(String[] string){
System.out.println(suma(4,6));
System.out.println(suma(7,9));
System.out.println(suma(9,10));
}
}

Como siempre te recomendamos ver el vdeo, un poco ms abajo, con calma


porque encontrars muchas otras explicaciones clave para entender todos
estos conceptos y la forma de trabajar de Java.

"Aquellos que se enamoran solo de la prctica, sin cuidar de la exactitud o de la ciencia,


son como el piloto que se embarca sin tomn ni aguja, y nunca sabr dnde va a parar"
Leonardo da Vinci
Introduccin a la programacin orientada a objetos en
Java, qu son las clases, objetos, mtodos, etc, as como
una introduccin a las libreras que contiene Java.

Esta es la cuarta clase y por ahora la ltima del curso de Introduccin a Java,
que tambin va a ser la mejor, no por ser la que finaliza de momento el curso,
sino porque nos vamos a introducir en uno de los campos que son
caractersticos en Java y que siempre cuesta un poco ms de entender y
encontrar informacin de calidad al respecto, como los objetos.

Java es un lenguaje de programacin orientado a objetos (POO), eso quiere


decir que tenemos que programar con un estilo especfico, donde los
programas se escriben con un lenguaje ms cercano al de las personas y ms
parecido a como funciona el mundo. Desarrollar con POO, o por sus siglas en
ingls OOP, es bastante comn dentro de los lenguajes de programacin de
alto nivel y nos permite una serie de ventajas en el desarrollo de los programas
informticos.

"No vales por lo que sabes, vales por lo que tienes la capacidad de aprender, todo cambia
demasiado rpido."
(Si sabes qu genio dijo esta frase, tuitalo a @josedlujan para que te de un
premio)

Programacin Orientada a Objetos


POO o programacin orientada a objetos es un paradigma de programacin
que est basado en entender la creacin de programas tal como es la vida real,
un universo de objetos que interaccionan entre si.

Un objeto es todo lo que vemos. Dentro de la programacin orientada a objetos


tenemos varias caractersticas como la herencia, polimorfismo, acoplamiento,
encapsulamiento, entre otras.

Los objetos tienen unas caractersticas que son propias de todos los elementos
de ese estilo. Por ejemplo, una televisin, un coche, etc. Todos tienen unas
caractersticas que son comunes. No tienen por qu tener los mismos valores,
pero s el mismo tipo de caractersticas. Por ejemplo, una tele puede tener
pulgadas (dimensiones), las pulgadas pueden variar y tenemos teles desde 14
pulgadas hasta 60, pero todas tienen una cantidad de ellas. Los coches pueden
tener una marca, un modelo, un nmero de asientos, stos pueden ser
variables, pero todos los tienen.

En el vdeo se ve el concepto general de este paradigma de la programacin,


pero adems se detiene en ver estos elementos que forman parte de la POO.

Qu es una Clase

Es una especie de "plantilla" que define las caractersticas y funcionalidades de


un objeto. Digamos que es la definicin de todos los objetos de un tipo en
conctreto. Por ejemplo, la clase humano, puede tener una serie de
caractersticas, color de ojos, brazos, piernas, cabeza, altura y luego el humano
puede hacer diversas cosas, fisiolgicas como comer y dormir, pero tambin
acciones como correr o caminar.

Dentro de una clase vamos a encontrar:

Atributos:
Son todas las caractersticas que hacen que ese objeto

Mtodos:
Son las acciones que puede llevar acabo el objeto que vamos a crear, casi
siempre modifican los atributos del mismo. Aunque tambin pueden ser solo
acciones.
Qu es un Objeto

Un objeto es un ejemplar de una clase. Obtenemos un objeto cuando le "damos


vida a la clase". La clase es la es la definicin de algo, pero no es algo con el
que podamos trabajar o tocar. Cuando vamos a usar la clase tenemos que
crear un objeto de esa clase. Por ejemplo, la clase humano, y el humano
"pepe". A la clase no le puedo decir que ande, porque es solo una definicin,
pero a "pepe" ya s le puedo pedir que ande a tal lugar.

Un objeto toma como referencia lo que dice en su clase, dando valores a sus
caractersticas, por ejempoo un humano de ojos azules y 1.70 de estatura, y
somos capaces de invocar sus mtodos para pedirle que haga cosas.

Instanciar un objeto:
El termino "instanciar" un objeto lo utilizamos cuando creamos un ejemplar de
una clase. Por ejemplo, voy a instanciar dos coches, un Audi A3 verde y un
Seat Panda rojo. Ese proceso de crear un objeto a partir de lo definido en una
clase es el proceso denominado instanciar.

Libreras en Java

Las libreras es un conjunto de cdigo que normalmente realiza algo muy


especfico, siempre sirven de apoyo para algunos procedimientos u
operaciones que se realizan dentro de un programa principal.

La idea detrs de las libreras es servir de base para construir programas


mayores. Con las libreras disponibles nunca vas a resolver los problemas
completos de un programa, sino que te podrs basar en ellas para no tener que
partir todo desde cero y sobre todo, no repetir o tener que hacer asuntos que
puedan ser muy utilizados en determinado tipo de programa. Por otra parte, las
libreras facilitan que tengamos cdigo separado, e implementarlo cuando sea
necesario. Es decir, utilizar las libreras cuando lo necesitemos desde cualquier
programa y mantener su cdigo de manera independiente.

Java tiene una serie de liberas enorme que sirven para hacer infinidad de
cosas. Adems como Java es un lenguaje de programacin de amplio
espectro, sus libreras cubren tambin un gran abanico de posibilidades.
Cuando realizas un programa necesitars solo unas pocas de sus libreras y
posiblemente haya muchas que no llegues a usar nunca en tu vida como
programador.

Por concretar un poco ms este asunto piensa que, cuando programas para
web usas unas libreras, cuando trabajas en aplicaciones de escritorio usas
otras, cuando programas apps de Android, tambin usas otras libreras
especficas para ste sistema. Si quieres hacer clculos matemticos usas
unas libreras, si quieres trabajar con grficos usas otras, etc.

Por supuesto, cualquier programador puede crear una librera que considere
til para sus programas. La podr usar en todos sus proyectos e incluso podr
"donarla" en Internet para que la usen otros programadores.

Ejemplos realizados

Todo lo que se explic en la clase se vio tambin en cdigo, centrando las


explicaciones en crear algunos ejemplos de Programacin Orientada a Objetos.

Clase Humano: En el vdeo se cre una clase llamada Humano, explicando


todos los detalles que se han aprendido en la teora. Es importante que puedas
ver las explicaciones en la grabacin, un poco ms abajo. A continuacin tienes
el cdigo producido.

public class Humano {


int Nbrazos;//Atributos
int Npiernas;
int Nojos;
String Cojos;
int hambre;

public void caminar(){}//metodos


public void respirar(){}
public void comer(int hambre){
hambre=0;
}

public Humano(){
hambre=10;
Nbrazos=2;
Npiernas =2;
Nojos = 2;
Cojos = "cafe";

public static void main(String[] args){

Humano juanito = new Humano();//instanciar


System.out.println(juanito.Nbrazos); // atributo

juanito.Nbrazos=1;//cambiando el atributo del objeto


System.out.println(juanito.Nbrazos);

//Humano pepito = new Humano();


}
}

Clase Hombre: Luego se introdujo brevemente un concepto fundamental en la


Programacin Orientada a Objetos como es la herencia, que nos permite crear
unas clases basndonos en el cdigo de otras, heredando sus mtodos
(funcionalidades) y atributos (caractersticas).

Se vio por la prctica, simplemente para crear una clase llamada Hombre que
hereda de la clase Humano. Con este cdigo. (recuerda ver las explicaciones
del vdeo)

public class Hombre extends Humano {

public Hombre(){

public static void main(String[] pepito){


Hombre merenganito = new Hombre();
System.out.println(merenganito.Nbrazos);
}
}

Conclusin

"Cualquier estpido puede escribir cdigo que una computadora entienda. Los buenos
programadores escriben cdigo que los humanos entienden"
Martin Fowler

Recuerda que esta introduccin a Java tiene como objetivo dar unos pequeos
pasos para comenzar con el lenguaje de Programacin, aclarando algunos
conceptos que son bsicos para poder empezar a programar.

Tambin debes saber que el universo Java es muy amplio y por ello, si quieres
aprender tambin tendrs que saber en qu tarea vas a realizar, para
especializarte y dedicarse a adquirir unos conocimientos u otros.

Nosotros este curso de introduccin lo hemos hecho con el objetivo que tengas
una base de Java suficiente para que puedas empezar a aprender desarrollo
de aplicaciones para Android en su lenguaje nativo. La parte de desarrollo la
podrs aprender tambin con nosotros y es que vamos a comenzar un Curso
de desarrollo para Android en EscuelaIT.

En DesarrolloWeb.com tambin estamos publicando un Manual de desarrollo


de apps en Android, pero ir ms poco a poco. Te recomendamos acceder al
curso de si quieres una formacin ms intensiva, personalizada y en la que
adems puedas practicar y crear tus propias aplicaciones. Ganars tiempo y
aprenders de una manera ms agradable y completa, con la ayuda de nuestro
compromiso por tu aprendizaje.

De momento puedes descargar las diapositivas de esta charla.

Вам также может понравиться