Ir al contenido principal

Aprendiendo a programar en JAVA

 

JAVA 1.- INTRODUCCION
En el mundo moderno, las necesidades de informacion se han incrementado bastante en la vida diaria de los individuos asi como de las organizaciones.
Esta nueva necesidad se esta cubriendo con la integracion y participacion personal y de las empresas, hacia la red de redes, el Internet I, y esperen a internet2.
Nuevos paradigmas de programacion se ocupan para la creacion de nuevos sistemas y necesidades creativas de informacion.


Java un lenguaje de programacion moderno implementado por la compañía java.sun.com www.java.sun.com a a finales de 1996, se ha convertido en el lenguaje estandar, para la construccion de aplicaciones basadas en internet.
Los nuevos sistemas de información son costosos en tiempos y recursos, la solución moderna de sistemas de información exigen nuevas herramientas y metodologías para resolver rápida, económica y eficiente los problemas de información planteados por las organizaciones.
Aun mas el pleno potencial del hardware no es aprovechado plenamente y existe un considerable retraso con el software y sus aplicaciones, generando lo que se conoce como “crisis del software”.
En programación tradicional, modular o estructurada un programa describe una serie de pasos a ser realizados para la solución de un problema, es decir es un algoritmo.
En programación orientada a objetos ( OOP ) un programa es considerado como un sistema de objetos interactuando entre sí, ambientes de desarrollo visuales facilitan aun más la construcción de programas y solución de problemas, porque permiten abstraer al ingeniero de software de todo el GUI (interfase gráfica) del problema, que constituye más del 60% del código normal de un programa.
Es decir, en programación modular o estructurada un problema sencillo de información es descompuesto en una serie de módulos(llamados procedimientos o funciones) donde cada uno de ellos realiza una tarea específica, por ejemplo uno de ellos captura los datos, otro resuelve operaciones, etc.
En OOP todo problema aun aquellos sencillos de información, se consideran y resuelven como módulos de código gigante (clase) que contiene todo el código necesario(variables, procedimientos, funciones, interfaces, etc.) para solucionar el problema.
En programación visual( que también es heredera de OOP ),la interfase con el usuario( pantallas) son generadas por el propio compilador y el ingeniero de software solo se concentra en resolver el problema planteado.
En programacion java basica, se tiene la mezcla de lo mejor de estos tres mundos, es decir construimos programas, aplicaciones y sistemas de informacion usando tecnivas estructuradas, contruyendo objetos y diseñando sistemas graficos, y todo orientado a la construcción de sistemas de información basados en redes de cualquier tipo o tamaño.

2.- JAVA MODELO DE SOLUCION
En general un problema de información es posible entenderlo, analizarlo y descomponerlo en todos sus componentes o partes que de una u otra manera intervienen tanto en su planteamiento como en su solución.
Una herramienta rápida que nos permite descomponer en partes un problema para su solución, es el llamado modelo de solución, este consiste de una pequeña caja que contiene los tres elementos más básicos en que se puede descomponer cualquier problema sencillo de información, estas tres partes son:
  1. LA PRIMERA PARTE son todos los datos que el computador ocupa para resolver el problema, estos datos son almacenados internamente en la memoria del computador en las llamadas variables de entrada.
  2. LA SEGUNDA PARTE son todas las operaciones generalmente algebraicas necesarias para solucionar el problema, generalmente esta parte del modelo es unaformula (o igualdad matemática, ej. X= y + 5).
  3. LA TERCERA PARTE es el resultado o solución del problema que generalmente se obtiene de la parte de operaciones del modelo y dichos datos están almacenados en las llamadas variables de salida.
En resumen para todo problema sencillo de información es necesario plantearse las siguientes preguntas:
* Que datos ocupa conocer el computador para resolver el problema y en cuales variables de entrada se van a almacenar ?
* Que procesos u operaciones debe realizar el computador para resolver el problema planteado ?
* Que información o variables de salida se van a desplegar en pantalla para responder al problema planteado originalmente?
Como nota importante no confundir los términos datos, variables e información;
Datos se refiere a información en bruto, no procesada ni catalogada, por ejemplo “Tijuana”, “calle primera # 213”,”15 años”, ” $2,520.00”, etc.
Variables es el nombre de una localidad o dirección interna en la memoria del computador donde se almacenan los datos, ejemplo de variables para los casos del inciso anterior, CIUDAD, DIRECCION, EDAD, SUELDO, ETC.
Información son datos ya procesados que resuelven un problema planteado.
EJEMPLO DE MODELO DE SOLUCION
Construir un modelo de solución que resuelva el problema de calcular el área de un triángulo con la formula área igual a base por altura sobre dos.
ENTRADAOperaciónSalida
BASE AREAAREA= BASE * ALTURA / 2AREA
PROBLEMA 2.- CONVERTIR LA EDAD EN AÑOS DE UNA PERSONA A MESES.
PROBLEMA 3.- CONVERTIR PESOS A DOLARES.
PROBLEMA 4.- CALCULAR EL AREA DE UN CIRCULO CON LA FORMULA
image2.jpg
PROBLEMA 5.- EVALUAR LA FUNCION image3.jpg PARA CUALQUIER VALOR DE X
Observar para el caso de constantes fijas o conocidas (PI) no se debe dar como dato de entrada su valor, en cambio colocar directamente su valor dentro de la formula, en la parte de operaciones del problema.
Pero recordar también que existirán problemas sencillos donde:
No se ocupan entradas o no se ocupan operaciones, pero todos ocupan salida.
Una formula grande o muy compleja puede ser más segura y fácil de resolver, si es descompuesta y resuelta en partes, juntando al final los parciales para obtener el resultado final.
Un problema puede tener más de una solución correcta.
El problema no esta suficientemente explicado o enunciado, entonces, estudiarlo, analizarlo y construirlo de manera genérica.
TAREAS JAVA
Construir los modelos de solución de los siguientes problemas para construir despues programas java:
PROBLEMA 6.- Convertir millas a kilómetros(caso normal)
PROBLEMA 7.- Convertir 125 metros a centímetros(no ocupa entradas)
PROBLEMA 8.- Se calcula que en promedio hay 4.7 nidos en cada árbol en la UABC, también se calcula que en cada nido existen un promedio de 5.8 pájaros, se pide calcular la cantidad total de nidos y de pájaros en los 227 arboles que existen en la UABC. (no ocupa entradas)
PROBLEMA 9.- La gorda Sra. López y sus 8 hijos solo compran una vez al mes su mandado en conocido supermercado, en dicha tienda el kilogramo de frijol cuesta $8.75, el paquete de tortillas cuesta $3.55 y el frasco de café vale $14.25, si solo compran de estos tres productos para su mandado, calcular su gasto total. ( problema no claro)
PROBLEMA 10.- Capturar y desplegar los cinco datos mas importantes de un automóvil(no ocupa operaciones)
PROBLEMA 11.- La distancia Tijuana - Ensenada es de 110 kilómetros. Si un automóvil la recorre a una velocidad constante de 30 millas por hora, cuanto tiempo tarda en llegar. ( 1 milla = 1.609 Km.) (dos maneras correctas de
resolverlo).
PROBLEMA 12.-Evaluar la función image4.jpg“para cualquier valor de x.(caso normal).
PROBLEMA 13.-Evaluar la función image5.jpg“para cuando x vale 4 . (no ocupa entradas).
TEMA 3: JAVA VARIABLES
Identificadores son conjuntos de letras y/o números que se utilizan para simbolizar todos los elementos que en un programa son definibles por el usuario (programador o ingeniero de software) del mismo como son las variables donde se almacenan datos, funciones( pequeños módulos con código), etiquetas, clases, objetos, etc.
En Java JSP una variable se define como un identificador que se utiliza para almacenar todos los datos generados durante la ejecución de un programa.
Existen ciertas reglas en cuanto a variables:
  • Claras y con referencia directa al problema.
  • No espacios en blanco, ni símbolos extraños en ellas.
  • Se pueden usar abreviaturas, pero solo de carácter general.
  • No deben ser palabras reservadas del lenguaje.
Ejemplos de buenas variables:
Nombre, Edad, SdoDiario, IngMensual, Perímetro, Calif1, etc.
JAVA TEMA 4.- TIPOS DE DATOS
A toda variable que se use en un programa, se le debe asociar (generalmente al principio del programa) un tipo de dato específico.
Un tipo de dato define todo el posible rango de valores que una variable puede tomar al momento de ejecución del programa y a lo largo de toda la vida útil del propio programa.
Los tipos de datos más comunes en java son:
Primitive Data Types
KeywordDescriptionSize/Format
(integers)
“byte”Byte-length integer8-bit two's complement
“short”Short integer16-bit two's complement
“int”Integer32-bit two's complement
“long”Long integer64-bit two's complement
(real numbers)
“float”Single-precision floating point32-bit IEEE 754
“double”Double-precision floating point64-bit IEEE 754
(other types)
“char”A single character16-bit Unicode character
“boolean”A boolean value (“true” or “false”)true or false
  • TABLA TOMADA DE JAVA.SUN.COM DOCUMENTATION
Como se observa es muy similar a las de c o c++.
Para el caso de strings se debera usar la Clase String que tiene dos constructores, de momento entenderemos esto ultimo como dos maneras de crearse, ej;
  1. String nombre= new String();
  2. String ciudad= new String(“Tijuana”);
Con JAVA en este ultimo caso se crea la string y se inicializa con un dato o valor.
JAVA TEMA 5: JAVA CLASES ESPECIALES
En java como lenguaje de programacion orientado a objetos, existen aparte de la clase String, vista en el JAVA TEMA anterior cuatro clases especiales, desendientes de la clase numbers, que contienen una serie de metodos que facilitan la interaccion con los usuarios de nuestras aplicaciones en captura y despliegue de datos numericos.
Sin embargo su caracteristica mas importante a tomar en cuenta, es que objetos numericos derivados de estaS clase, no pueden entrar a operaciones DIRECTAMENTE, ni recibir el resultado de operaciones.

Class Integer
public  final  class  java.lang.**Integer **extends  java.lang.**Number**  
{
        // Fields
    public final static int **MAX_VALUE**; 
    public final static int **MIN_VALUE**; 
        // Constructors
    public **Integer**(int  value); 
    public **Integer**(String  s); 
        // Methods
    public double **doubleValue**();
    public boolean **equals**(Object  obj); 
    public float **floatValue**(); 
    public static Integer **getInteger**(String  nm); 
    public static Integer **getInteger**(String  nm, int  val); 
    public static Integer **getInteger**(String  nm, Integer  val); 
    public int **hashCode**(); 
    public int **intValue**(); 
    public long **longValue**(); 
    public static int **parseInt**(String  s); 
    public static int **parseInt**(String  s, int  radix); 
    public static String **toBinaryString**(int  i); 
    public static String **toHexString**(int  i); 
    public static String **toOctalString**(int  i); 
    public String **toString**(); 
    public static String **toString**(int  i); 
    public static String  **toString**(int  i, int  radix); 
    public static Integer **valueOf**(String  s); 
    public static Integer **valueOf**(String  s, int  radix); 
}
Esta clase convierte un dato de tipo int a un objeto.
Este objeto contiene un solo campo de tipo int.
Pero tambien el objeto contiene una serie de metodos para convertir un valor int a una String y tambien para convertir una String a int.
Ademas de otros metodos de igual utilidad.
  • * Clase y notas tomadas directamente de java.sun

Class Double
public final class java.lang.Double extends java.lang.Number
{
        // Fields
    public final static double **MAX_VALUE**; 
    public final static double **MIN_VALUE**; 
    public final static double **NaN**; 
    public final static double **NEGATIVE_INFINITY**; 
    public final static double **POSITIVE_INFINITY**; 
        // Constructors
    public **Double**(double  value); 
    public **Double**(String  s); 
        // Methods
    public static long **doubleToLongBits**(double  value); 
    public double **doubleValue**(); 
    public boolean **equals**(Object  obj); 
    public float **floatValue**(); 
    public int **hashCode**(); 
    public int **intValue**(); 
    public boolean **isInfinite**(); 
    public static boolean **isInfinite**(double  v); 
    public boolean **isNaN**(); 
    public static boolean **isNaN**(double  v); 
    public static double **longBitsToDouble**(long  bits); 
    public long **longValue**(); 
    public String **toString**(); 
    public static String **toString**(double  d); 
    public static Double **valueOf**(String  s); 
}
  • * La misma fuente y las mismas notas de la clase anterior

Class Float
public  final  class  java.lang.**Float **extends  java.lang.**Number**  
{
        // Fields
    public final static float **MAX_VALUE**; 
    public final static float **MIN_VALUE**; 
    public final static float **NaN**; 
    public final static float **NEGATIVE_INFINITY**; 
    public final static float **POSITIVE_INFINITY**; 
  // Constructors
    public **Float**(double  value); 
    public **Float**(float  value); 
    public **Float**(String  s); 
        // Methods
    public double **doubleValue**(); 
    public boolean **equals**(Object  obj); 
    public static int **floatToIntBits**(float  value); 
    public float **floatValue**(); 
    public int **hashCode**(); 
    public static float **intBitsToFloat**(int  bits); 
    public int **intValue**(); 
    public boolean **isInfinite**(); 
    public static boolean **isInfinite**(float  v); 
    public boolean **isNaN**(); 
    public static boolean **isNaN**(float  v); 
    public long **longValue**(); 
    public String **toString**(); 
    public static String **toString**(float  f); 
    public static Float **valueOf**(String  s); 
}
JAVA TEMA 6.- OPERADORES ARITMETICOS
Un operador es un símbolo especial que indica al compilador que debe efectuar una operación matemática o lógica.
Java reconoce los siguientes operadores aritméticos:

Operador Operación
+ Suma
- Resta
* Multiplicación
/ División
% Residuo o Módulo

Como notas importantes a recordar siempre;
En problemas de division entre enteros, java trunca la parte residual, ej;
Desplegar—> 13/5 —> el resultado es 2
Mas adelante se dira como resolver este problema.
Para resolver los problemas de potencias y raíces, se usan ciertas instrucciones especiales que proporciona el lenguaje, llamadas funciones matemáticas, en java existe toda una librería de instrucciones o funciones matemáticas.
Recordar que todas las funciones reciben uno o más datos o valores y regresan siempre un resultado, una de estas funciones matemáticas es:
import java.lang.math ;
public static double pow(double a, double b);
Esta función ocupa dos valores o datos( base y exp) ambos de tipo double, y regresa un resultado también de tipo double, ejemplo;
* resolver el problema de calcular image6.jpg
import java.io.*;

import java.lang.Math;

public class ejemplo1

{public static void main(String args[])

{ double base =5;

double exponente=3;

double potencia =0;

potencia = Math.pow(base, exponente);

System.out.println("potencia =" +potencia);

}// cerrar main

} //cerrar clase

En java jsp y servlets para resolver el problema de raíces, se aprovecha una de las mas elementales y conocida de las leyes de exponentes que dice:
image8.jpg
Es decir una raíz cualquiera se puede transformar a una potencia con un exponente fraccionario.
Ejemplo:
problema y = 3Ö x esto es equivalente a image9.jpg“entonces
Usando la función pow
y= 3*Math.pow(x, 0.5);
* En este ejemplo no funcional se esta dando por supuesto que no interesa el tipo de dato que requiere la función pow() para trabajar correctamente
Para realizar operaciones con objetos numericos, recordar que no se pueden hacer directamente operaciones con ellos ni tampoco pueden recibir resultados en ellos, lo que se debe hacer es usar una variable temporal de tipo apropiado, hacer la operacion con dicha variable y al final si se quiere convertir esta variable al objeto numerico apropiado(esto ultimo se vera en el siguiente JAVA TEMA ), como lo muestra el siguiente ejemplo;

Integer alfa = new Integer(20);
Double zeta = new Double(5);
double alfa1=0, zeta1=0;
alfa1=alfa.doubleValue();
zeta1=zeta.doubleValue();
alfa1=alfa1 + zeta1;
desplegar alfa1;
Como se observa se crearon dos objetos numericos, luego dos variables numericas normales, luego estas dos ultimas variables se cargan con los objetos numericos que emplean metodos propios para convertirlos a datos normales.

En java jsp y java servlets la libreria matematica completa incluye:
Class Math

public final class java.lang.Math

extends java.lang.Object

{ // Fields

public final static double E;

public final static double PI;

// Methods

public static double abs(double a);

public static float abs(float a);

public static int abs(int a);

public static long abs(long a);

public static double acos(double a);

public static double asin(double a);

public static double atan(double a);

public static double atan2(double a, double b);

public static double ceil(double a);

public static double cos(double a);

public static double exp(double a);

public static double floor(double a);

public static double IEEEremainder(double f1, double f2);

public static double log(double a);

public static double max(double a, double b);

public static float max(float a, float b);

public static int max(int a, int b);

public static long max(long a, long b);

public static double min(double a, double b);

public static float min(float a, float b);

public static int min(int a, int b);

public static long min(long a, long b);

public static double pow(double a, double b);

public static double random();

public static double rint(double a);

public static long round(double a);

public static int round(float a);

public static double sin(double a);

public static double sqrt(double a);

public static double tan(double a);

}
7.- JAVA OPERADOR CAST y CONVERSIONES
En java se puede forzar un dato, variable o una expresión a convertirse o cambiarse a un nuevo tipo de dato.
El operador cast realiza este proceso, es decir convierte datos, variables o expresiones a un nuevo tipo de dato, su formato es:
(nvotipo) dato , var, exp;
Ejemplo:
// declaración

int alfa;

// Asignación

alfa = 20;

// Cambio de tipo

(float) alfa;
Ejemplo:

(int) 3.1416;

* en este ejemplo se está convirtiendo un float a int, recordar que en este caso ya no se tendrán los decimales.
* Como nota importante se puede hacer cast solo con tipos de datos, no entre tipos de datos y objetos de una clase numerica.
Como nota importante este operador resuelve los dos problemas pendientes:
- El de la división entre enteros.
- El tipo de dato especifico que requieren las funciones.
Ejemplos:
a) // Declaración

float alfa;

// Operación

alfa = (float)23/5;

// Pero en estos casos es preferible

alfa=23/5.0;

En toda división recordar agregar a uno de los dos valores el (.0), solo que los dos elementos sean variables entonces usar el operador cast con una de ellas.
// Declaración

double potencia;

// Operación

potencia = Math.pow ( (double)5, (double)3);

Como se observa en el ejemplo, se puede usar pow(), directamente con los datos, argumentos o parámetros requeridos , si estos son numéricos, pero transformándolos con el operador cast.
Esto también va a permitir evaluar expresiones matemáticas de manera mas directa y sencilla, solo recordando usar un pow() por cada potencia y cada raíz de la ecuación, ejemplo:
sea image10.jpg
dentro de un programa esto se resuelve con;
// área de declaración de variables

double y, x;

// área de captura de datos

capturar el valor de x;

// área de operaciones

y = 3 * Math.pow(x, (double)3) - Math.pow(x, (1/3.0)) + 4 * Math.pow(x, (double)2));

// área de despliegue de resultados

desplegar x, y

En java jsp y java servlets para convertir tipos de datos numericos a objetos numericos y viseversa se deberan usar los metodos que traen las clase numericas de manera apropiada, en general existen tres casos generales difrentes, considerando datos o variables numericas, objetos numericos y strings que es un caso especial y comun:
a.1) Variable numerica a variable numerica
Usar el operador cast ejemplo:
var to var
int alfa1=10; double alfa2=3.1416;
alfa1= (int)alfa2;
J observar que valores decimales deben declararse como doubles
a.2) variable numerica a string
ejemplo;
var to string
int zeta=50;
String alfa= String.valueOf(zeta);
a.3) variable numerica a objeto numerico
caso 1: usando constructor
int zeta=80;
Float alfa4 = new Float(zeta);
caso 2: ya existe el objeto numerico
Double alfa5 = new Double(0);
Int zeta=30;
alfa5=Double.valueOf(String.valueOf(zeta));
b.1) Objeto Numerico a Variable numerica
todos los objetos numericos deben crearse inicializados aunque sea a (0)
Integer alfa = new Integer(300);
Int zeta = alfa.intValue();
b.2) Objeto numerico a String
Float alfa = new Float(“3.45”);
String beta = new String(” ”);
Beta = alfa.toString();
B.3) Objeto Numerico a Objeto Numerico
Integer alfa=new Integer(50);
Double beta=new Double(0);
beta = beta.valueOf(alfa.toString());
c.1) String to variable numerica
String alfa= new String(“3.5”);
double beta= 0;
beta= Double.parseDouble(alfa);
c.2) String to Objeto Numerico
String alfa8=new String(“50”);
Double alfa9=new Double(0);
alfa9 = alfa9.valueOf(alfa8);
TAREAS JAVA POW ():
  1. image12.jpg
  2. image13.jpg
  3. image14.jpg

    JAVA TEMA 8.- JERARQUIA DE OPERACIONES
    En java jsp y java servlets el problema de no tomar en cuenta la jerarquía u orden de los operadores al plantear y resolver una operación casi siempre conduce a resultados muchas veces equivocados como estos:
    Ejemplos:
    2+ 3* 4 = 20(incorrecto)
          = 14 (correcto)
    b) si calif1=60 y calif2=80]]]]]]
    entonces en programa se usa
    promedio=calif1 + calif2/2
    da como resultado promedio = 100
    Recordar siempre, que antes de plantear una formula en un programa se deberá evaluar contra el siguiente:
    Orden de operaciones:

    1.- Paréntesis
    2.- Potencias y raíces
    3.- Multiplicaciones y divisiones
    4.- Sumas y restas
    5.- Dos o más de la misma jerarquía u orden, entonces resolver de izquierda a derecha

    Nota: Si se quiere alterar el orden normal de operaciones, entonces usar paréntesis.
    Nota: Tampoco es bueno usar paréntesis de mas en una operación, esto solo indica que no se evalúo bien la formula, como en el siguiente ejemplo;

    image15.jpg

    aquí los paréntesis están de mas, porque por orden de operaciones, multiplicación y división tienen la misma jerarquía y entonces se resuelven de izquierda a derecha, en otras palabras ni que falten paréntesis ni que sobren paréntesis en ningun programa java jsp o java servlet.
    JAVA TEMA 9.- APLICACIONES
    Recordar que JAVA es un lenguaje de programación moderno, que esta enfocado a la construcción de sistemas de informacion que se ejecutarán en una plataforma muy diversa de procesadores y sistemas operativos.
    Esto indica la necesidad de construir diversos tipos de aplicaciones, programas o sistemas, en general, este curso se centra alrededor de los sguientes tipos de aplicaciones basicas:
    1.- Aplicaciones o programas que se ejecuten en “consolas”, es decir ambientes del tipo msdos, linux, terminales tontas, etc.
    2.-Aplicaciones o sistemas que se ejecuten en ambientes graficos o de tipo “ventanas:, ejemplo windows, kde o gnome de linux, sistem 8 de apple, etc.
    3.- Aplicaciones de tipo APPLETS, que tambien son programas en java que se mandan a una pc remota o lejana, donde esa pc se encarga de correrla o ejecutarla o compilarla y correrla.
    Este applet lo manda un servidor de paginas(web server) junto con la pagina correspondiente, cada vez que un usuario se conecta al web server y requiere la pagina que contiene el applet.
    Para el caso de applets, estos se ejecutan no en consola, tampoco en una ventana, sino dentro de el browser de la maquina remota que puede ser el internet explorer de microsoft o el netscape.
    Por supuesto que el browser del cliente debe estar preparado para ejecutar applets, esto se hace teniendo constantemente actualizado el browser (internet explorer o netscape) y estando sobre todo seguro que en la actualización del browser se incluya la maquina virtual de java.
    4.-Aplicacion de tipo SERVLETS, que son programas en java que se ejecutan direcatemente en el servidor de paginas o web server, que al ser invocado o llamado por una pc remota, el web server ejecuta el servlet, ya ejecutado se mandan generalmente los resultados a la maquina remota, estos resultados se mandan en forma de una pagina html, para que la maquina remota los vea en su propio browser.
    Una vez que el web server o servidor de paginas ejecuta un servlet, lo mantiene vivo o despierto, para responder de manera mas rapida a las peticiones siguientes que se hagan del servlet.
    5.- Aplicaciones JSP (Java Server Pages), tecnologia que combina codigo html y codigo java en un solo programa o aplicación, cuando al web server le piden un jsp, lo compila, lo convierte a servlet con todas las implicaciones que se mencionarón en el inciso anterior y manda los resultados a la pc remota que lo solicitó.
    6.- Beans y Java Beans, tecnologias de tipo servlet pero que estan especializadas principalmente en mantener enlaces constantes a bases de datos de cualquier marca (access, oracle, mysql, etc), esto permite que una serie de varios programas o aplicaciones a la vez esten interactuando con el mismo java bean y por consiguiente con la base de datos.
    7.-Existen otra serie de aplicaciones diferntes que se pueden construir con java, tales como aplicaciones rmi, aplicaciones en tiempo real, ejb , pero de momento estan fuera del alcance de estas notas.(estarse pendiente de la siguiente actualizacion de este texto)
    En general las aplicaciones a desarrollar en este curso ( consola, graficas, applets y servlets, jsp, beans ) todas tienen en comun el lenguaje e instrucciones de programacion de java.
    El compilador a usar es el SDK (standard development kit) de Java, este kit estandar de desarrollo de programas se encuentra en java.sun.com/j2se/”>http://www.java.sun.com/j2se/, de aqui bajarlo e instalarlo.
    Solo renombrar el folder de default donde se instala a c:\jdk1.3 en lugar del que trae que es c:\Jdk1.3.0_02
    10.- APLICACIONES POR CONSOLA
    Empezemos con el programa clasico de los lenguajes de programacion:
    class holamundo {
    
    public static void main(String[] args) {
    
    System.out.println(" HOLA MUNDO ");
    
    } // cierra main
    
    } // cierra clase
    
    
    1.- Se debera construir usando el mejor editor del mundo, el NOTEPAD de windows, y se debera grabar en un nuevo folder, con el nombre de la clase (holamundo) y la extension de .java, es decir en notepad usar save as holamundo.java (respetar mayusculas y minusculas que se hayan puesto en la clase), tener cuidado con notepad porque en ocasiones lo graba como holamundo.java.txt, si esto sucede no se puede compilar o sdk informa que no lo encuentra, en notepad seleccionar tipo=all files o irse a msdos y renombrarlo a .java solamente.
    2.- Para compilarlo abrir una sesion de msdos dentro de windows y navegar hasta el folder donde esta holamundo.java y compilarlo con la siguiente instruccion:
    c:\jdk1.3\bin\javac holamundo.java
    observar que jdk1.3 es el folder que renombraron cuando instalaron el sdk que bajaron de java.sun.com, si no tendran que escribir el nombre largo del folder donde se instalo sdk.
    JAVAC es el compilador de java y lo que hace aparte de mostrar los errores que puede tener el programa es crear un nuevo archivo con extensión .class, es decir en este ejemplo , en el folder ahora aparte de tener holamundo.java, debera haber un archivo llamado holamundo.class, que es el equivalente a los archivos.exe o executables de windows.
    3.-El tercer paso es ejecutar el programa, esto se hace con la instruccion:
    c:\jdk1.3\bin\java holamundo
    Observar que ahora es java quien executa y el archivo ya no tiene extension.
    Un problema muy comun al tiempo de ejecución, es que java mande un mensaje de classnotfound, si esto pasa al querer ejecutar el programa, solo irse al prompt de msdos y escribir la orden:
    C:>SET CLASSPATH=
    Y volver a ejecutar el programa.
    CARACTERISTICAS DE PROGRAMAS O APLICACIONES EN JAVA
    1.- Todos los programas en java son y empiezan con una clase.
    2.- Todos los programas en java, deben llevar un metodo principal, llamado main() quien es quien contiene el codigo normal del programa.
    3.- La clase y el metodo main deben abrir y cerrar sus propias llaves {}
    4.- Las instrucciones terminan con punto y coma (;)
    5.- Java tambien es “case sensitive”, es decir diferencía mayusculas y minusculas.
    Problema .- bajar, instalar el sdk java y construir, compilar y ejecutar este programa de ejemplo
    11.- APLICACIONES CONSOLA JAVA JSP Y JAVA SERVLETS (CONTINUACION)
    Entradas y salidas de datos son las tareas mas comunes en cualquier lenguaje de programación.
    En aplicaciones de consola, estos procesos se ejecutan con las siguientes instrucciones:
    Programa ejemplo:
    import java.lang.*;
    
    import java.io.*;
    
    class ejemplo1 {
    
    public static void main(String[] args) {
    
    int alfa=0;
    
    BufferedReader **teclado** = new BufferedReader(new InputStreamReader(System.in));
    
    // se crea teclado que es un objeto para que lea la string que se captura
    
    try {
    
    System.out.println("dame numero entero: ");
    
    //teclado lee una string y la convierte a variable dato numerico normal
    
    alfa = Integer.parseInt(**teclado**.readLine());
    
    } catch(IOException varerror) {System.out.println("error");}
    
    alfa= alfa+5;
    
    System.out.println(alfa);
    
    } // cierra main
    
    } // cierra clase
    
    
    En java generalmente todo se maneja mediante objetos, primero se esta creando un objeto llamado teclado que tenga capacidad de leer una string, desde el dispositivo de entrada estandar (teclado o System.in).
    Se esta usando la instruccion System.out.println(string); para mandar mensajes al ususario
    Se esta usando el metodo readline() que tiene el objeto teclado, para leer la string del teclado fisico.
    Se esta usando Integer.parseInt, visto en el JAVA TEMA del operador cast y conversiones, para convertir la string a una variable numerica
    Se esta usando una instruccion try-catch, para detectar o prevenir problemas con los datos que proporcione el usuario del programa, por ejemplo que en lugar de dar un numero, proporcione letras.
    Como se observa es bastante sencillo, hacer programas de entrada-salida en consola en java
    TAREAS JAVA
    1.-CONSTRUIR APLICACIONES JAVA DE CONSOLA PARA TODOS LOS MODELOS DE SOLUCION RESUELTOS

Comentarios

Entradas populares de este blog

Blogger - Marcadores Sociales Flotantes con la opción de cerrar

El truco se ve de la siguiente manera: Puede ver un Demo de este truco en el siguiente  blog de pruebas .

Blogger - Marcadores Sociales flotantes en la parte superior de la pagina

Los marcadores sociales son algo con lo cual todo blog debe contar, y hoy les traigo un excelente truco en el cual los  marcadores sociales  se ubican en la parte superior de la pagina y al bajar la pagina los marcadores bajan con ella. Los botones se verán de la siguiente manera:

Blogger - Como crear un botón Mi Yahoo

Para aquellos que no conocen que es  Mi Yahoo , quería pasar a explicar que es una web del tipo  iGoogle en la cual puedes personalizar todo lo que necesitas para navegar de una formar sencilla por la red. Puedes tener en una sola página noticias de última hora, correo, gadgets personalizados y el buscador de Yahoo (todo junto pero no revuelto).