Blogia

Ronny Estredo

Sesión 3. JAVA.

Sesión 3. JAVA.

Las Cadenas en Java.

Hasta ahora hemos visto tipos de datos numéricos en nuestros ejercicios, sin embargo, frecuentemente se hace necesario utilizar datos alfanúmericos o cadenas.  Java maneja las cadenas muy diferente a otros lenguajes.

En Java las cadenas son objetos de las clases predefinida String o StringBuffer, que están incluidas en el paquete java.lang.*. (El paquete de lenguaje Java, también conocido como java.lang, contiene las clases que son el corazón del lenguaje Java.)

Siempre que aparecen conjuntos de caracteres entre comillas dobles, el compilador de Java crea automáticamente un objeto String.
Los caracteres de las cadenas tienen un índice que indica su posición. El primer carácter de una cadena tiene el índice 0, el segundo el 1, el tercero el 2 y así sucesivamente. Esto puede sonar familiar a los programadores de C/C++

Como se declara?

String variableCad = new String("Valor Cadena");

También se puede escribir, alternativamente

    String str="Valor Cadena";

Para crear un string nulo se puede hacer de estas dos formas

    String str="";
    String str=new String();

Un string nulo es aquél que no contiene caracteres, pero es un objeto de la clase String. Sin embargo,

    String str;

está declarando un objeto str de la clase String, pero aún no se ha creado ningún objeto de esta clase.
Observamos que al declarar ademas podemos asignar  una  valor fijo o inicial (no obligatorio).

Aquí hay 5 Operaciones básicas, comunes a String y StringBuffer:

length()    Devuelve el número de caracteres de la cadena.
charAt(n)    Donde n  es un número que indica la posición dentro de la cadena
substring(inicio,fin)    Devuelve una subcadena desde una posicion inicial hasta una posición final
toLowerCase()    Devuelve una conversion en minúsculas de la cadena
toUpperCase()    Devuelve una conversion en mayúsculas de la cadena

Ejemplificación de casos  aplicados a cadenas.

Cómo se obtiene información acerca del string

Una vez creado un objeto de la clase String podemos obtener información relevante acerca del objeto a través de las funciones miembro.

Para obtener la longitud, número de caracteres que guarda un string se llama a la función miembro length.

    String str="El primer programa";
    int longitud=str.length();
Podemos conocer si un string comienza con un determinado prefijo, llamando al método startsWith, que devuelve true o false, según que el string comience o no por dicho prefijo

    String str="El primer programa";
    boolean resultado=str.startsWith("El");

En este ejemplo la variable resultado tomará el valor true.
De modo similar, podemos saber si un string finaliza con un conjunto dado de caracteres, mediante la función miembro endsWith.

    String str="El primer programa";
    boolean resultado=str.endsWith("programa");
Si se quiere obtener la posición de la primera ocurrencia de la letra p, se usa la función indexOf.

    String str="El primer programa";
    int pos=str.indexOf(’p’);
Para obtener las sucesivas posiciones de la letra p, se llama a otra versión de la misma función

    pos=str.indexOf(’p’, pos+1);
El segundo argumento le dice a la función indexOf que empiece a buscar la primera ocurrencia de la letra p a partir de la posición pos+1.

Otra versión de indexOf busca la primera ocurrencia de un substring dentro del string.

    String str="El primer programa";
    int pos=str.indexOf("pro");
Vemos que una clase puede definir varias funciones miembro con el mismo nombre pero que tienen distinto número de parámetros o de distinto tipo.

La comparación de strings nos da la oportunidad de distinguir entre el operador lógico == y la función miembro equals de la clase String. En el siguiente código

        String str1="El lenguaje Java";
        String str2=new String("El lenguaje Java");
    if(str1==str2){
        System.out.println("Los mismos objetos");
    }else{
        System.out.println("Distintos objetos");
    }
    if(str1.equals(str2)){
        System.out.println("El mismo contenido");
    }else{
        System.out.println("Distinto contenido");
    }        

Esta porción de código devolverá que str1 y str2 son dstintos objetos pero con el mismo contenido. str1 y str2 ocupan posiciones distintas en memoria pero guradan los mismos datos.

Cambiemos la segunda sentencia y escribamos

        String str1="El lenguaje Java";
        String str2=str1;
    System.out.prinln("Son el mimso objeto "+(str1==str2);

Los objetos str1 y str2 guardan la misma referencia al objeto de la clase String creado. La expresión (str1==str2) devolverá true.

Asñi pues, el método equals compara un string con un objeto cualquiera que puede ser otro string,  y devuelve true cuando dos strings son iguales o false si son distintos.

        String str="El lenguaje Java";
    boolean resultado=str.equals("El lenguaje Java");

La variable resultado tomará el valor true.
        
Ejercicio  práctica.

Programa que lee el nombre de un empleado, los días que trabajó y el sueldo diario.  Calcula

Su sueldo básico.
Deducción de SSO 4% del Sueldo Básico.
Deducción de LPH 1% del Sueldo Básico.
Deducción de PF 0.5% del Sueldo Básico.
Total de Deducciones.
Y Calcula un Bono del 30% sobre el Sueldo Básico.

(La finalidad es  

import java.util.Scanner;
public class ronny {

    public static void main(String[] args) {
        Scanner teclado=new Scanner(System.in);
        String nombreEmp = new String();
        int sb,dt,sd;
        float sso,lph,pf,td,bono;

           System.out.println("PRUEBA DE DATOSS EN JAVA por " + nombreEmp);
        System.out.print("Ingrese Ingrese el nombre del empleado:");
        nombreEmp=teclado.next();
        System.out.print("Ingrese la cantidad de dias trabajados por el empleado:");
        dt=teclado.nextInt();

        System.out.print("Ingrese la lo ganado diario por el empleado:");
        sd=teclado.nextInt();
        sb=sd*dt;
        sso=sb*4/100;
        lph=sb*1/100;
        pf=sb*0.5f/100;
        td=sso+lph+pf;
        bono=sb*30/100;
        System.out.println("Recibo de Pago del Empleado: " + nombreEmp.toUpperCase());
        System.out.println("El sueldo básico a pagar es :" +sb);
        System.out.println("la deduccion de seguro es  :" +sso);
        System.out.println("la deduccion de ley politica es  :" +lph);
        System.out.println("la deduccion de paro forsozo es  :" +pf);
        System.out.println("__________________________________________" );
        System.out.println("EL TOTAL DE DEDUCCIONES A PAGAR ES :" +td);
        System.out.println("__________________________________________" );
        System.out.println("tiene un Bono de 30% correspondiente a Bs.:" +bono);
    }
}



La finalidad del ejercicio es integrar diferentes tipos de datos, hacer cálculos aritméticos entre ellos  y poner a prueba los métodos de la clase string

¿Y esta publicidad? Puedes eliminarla si quieres

Sesión 2. JAVA.

Sesión 2. JAVA.
Como Leer un valor o dato en java desde consola.

En este caso, debemos  utilizar  la clase Scanner que se encuentra en el paquete java.util de la siguiente manera:                                   import java.util.Scanner;

las clases se importan al inicio del código.

Posteriormente, antes de declarar las variables en la función main, se debe hacer una instancia de clase,  es decir,  crear un objeto de lectura a partir de la clase que importamos.
Scanner teclado=new Scanner(System.in);

Ahora que todo está declarado,  podemos leer datos. Observe en los ejemplos:

System.out.print("Ingrese un valor entero: ");
variableentero=teclado.nextInt();
System.out.print("Ingrese un valor real: ");
costoHora=teclado.nextFloat();

Estructura Condicional (If): Se utiliza para crear condiciones o toma de decisiones programadas..
Sintaxis:

If   {

        }
else  {

          }

Nota: No es obligatorio usar un else en una condición.

Operadores Relacionales:
>  (mayor)    
<  (menor)
>= (mayor o igual)
<= (menor o igual)
== (igual)
!= (distinto)

lógicos (&&, ||)

Operadores Matemáticos:
+ (más)
- (menos)
* (producto)
/ (división)
% (módulo o resto de una división entera.)  Ej.:  x=13%5;  {se guarda 3}


Estructura While: Repite un bloque de instrucciones mientras se cumpla la condición

Sintaxis:

While    {

                }    Estructura For Repite un bloque de instrucciones desde un valor inicial hasta un valor final usando contador.

Sintaxis:
 For (variable=valor inicial;;variable++)   {

       }

Sesión 1. Java.

Sesión 1.  JAVA.

Java es un lenguaje de programación orientado a objetos, desarrollado por Sun Microsystems a principios de los años 90. El lenguaje en sí mismo toma mucha de su sintaxis de C y C++, pero tiene un modelo de objetos más simple y elimina herramientas de bajo nivel, que suelen inducir a muchos errores, como la manipulación directa de punteros o memoria. Con respecto a la memoria, su gestión no es un problema ya que ésta es gestionada por el propio lenguaje y no por el programador.

Las aplicaciones Java están típicamente compiladas en un bytecode, aunque la compilación en código máquina nativo también es posible. En el tiempo de ejecución, el bytecode es normalmente interpretado o compilado a código nativo para la ejecución, aunque la ejecución directa por hardware del bytecode por un procesador Java también es posible.

Entre diciembre de 2006 y mayo de 2007, Sun Microsystems liberó la mayor parte de sus tecnologías Java bajo la licencia GNU GPL, de acuerdo con las especificaciones del Java Community Process, de tal forma que prácticamente todo el Java de Sun es ahora software libre (aunque la biblioteca de clases de Sun que se requiere para ejecutar los programas Java aún no lo es).

2 Cosas que debemos saber:

 Todo programa en Java requiere como mínimo una clase, por consiguiente lo primero que se escribe en el código es:
    public class Clase1 {

}
    
El nombre de la clase lo determina el usuario.

 Todo programa en Java debe definir la función main. Esta función la debemos codificar dentro de la clase:  en este caso, "Clase1".

Procedemos a tipear lo siguiente:

    public class Clase1 {

    public static void main(String[] parametro) {

    }
    
}    


Ahora si queremos ver que nuestro programa diga algo como "Hola Mundo UNEFA"  escribimos

    public class Clase1 {

    public static void main(String[] parametro) {

        System.out.println("Hola Mundo UNEFA");
    }
    
}    

Podemos Observar ya en este ejemplo que  System.out.println  es la instrucción  que permite imprimir un valor y saltar una línea.  Eso quiere decir que también existe que  System.out.print.

 Observaciones:
 Toda Instrucción en Java debe terminar en ;

 El nombre de la clase no puede tener espacios en blanco, comienza con una letra mayúscula y en caso de estar constituida por dos o más palabras el primer caracter va en mayúsculas, no puede empezar con un número, pero si puede llevar números a partir del segundo caracter.


 La función main tiene una llave de apertura y una llave de cierre (similar a la clase). La función main debe estar contenida en la clase.

 En Java las palabras claves deben ir obligatoriamente en minúsculas, sino se produce un error sintáctico.

 se propone que el nombre de las variables comience con minúsculas (un nombre de variable no puede tener espacios en blanco, empezar con un número, ni tampoco utilizar caracteres especiales). Debemos buscar siempre nombres de variables que nos indiquen que almacenan (no es conveniente llamar a nombres de variables con letras individuales)

 Si voy a declarar variables, es necesario hacerlo al inicio  de la funcion. Su forma es sencilla: se coloca  el tipo seguido de espacio y la variable finalizando con ;  

Por ejemplo:
int edad;
float costo;
float sueldo;

También existen byte, short, long, char, boolean.

Fotografía Ecológica

Fotografía Ecológica

Fotografía que presenté en el concurso ecológico 2010.

Espero tener una mejor este año 2011.

¿Y esta publicidad? Puedes eliminarla si quieres

Quien es Ronny Estredo

Quien es  Ronny Estredo

Ronny G. Estredo D.

Venezolano, Falconiano específicamente de la ciudad de Punto Fijo. Profesional de la Informática  con una trayectoria de mas de 22 años en el área de tecnología y ligado al sector educativo y desarrollo Instruccional.

TSU en Informática.

Ingeniero en Comunicaciones y Electrónica.

Licenciado en Administración mención Informática.

Diplomado En Software Libre.

Postgrado en Telemática e Informática en la EAD.

En su experiencia académica, ha sido:

Profesor en el Instituto Universitario de Tecnología "Rodolfo Loero Arismendi"

Profesor en la Universidad Nacional Experimental Politécnica de la Fuerza Armada Nacional

Profesor en la Universidad Nacional Experimental "Simón Rodríguez"

Profesor en el Instituto Universitario de Tecnología "Antonio José de Sucre"

Instructor en el Instituto Universitario de Tecnología "Alonso Gamero"

Tutor/Jurado de Proyectos en el Instituto Universitario de Tecnología "José Leonardo Chirinos"

Instructor  para GAMBAS Venezuela.

Instructor para el Centro de Formación Profesional “Andrés Bello”  CEFOP

Instructor para el Instituto Superior de Capacitación Tecnológica

Instructor para Academia Bilingüe C.A.

Instructor Para Tecnología Educativa en Computación y Sistemas  (Tec Systemas)

Entre otros…

Ámbito de Acción:

Sistemas Operativos. Software Libre y Windows.
Mantenimiento de Equipos de Computación.
Infraestructura de Redes y Telecomunicaciones.
Ingeniería de Software y Programación.
Bases de Datos.
Diseño Instruccional.

**** Asesorías y Cursos Individuales y Grupales ****

Actualidad:

Actualmente  es personal permanente de PDVSA (Centro de Refinación Paraguaná)
Para la Gerencia de Recursos Humanos/Escuelas/Informática.
Desarrolla un Software denominado Gestión Educativa Nacional  (GEN) para el control académico.

Programación. Arte Vs. Ingeniería

Programación. Arte Vs. Ingeniería

La programación es un proceso mediante el cual, el “Programador”  se propone escribir un “Programa”   que será utilizado  en una computadora  bajo una arquitectura X. Ahora bien, el insumo básico para poder desarrollar cualquier software  es una herramienta de programación que puede ir desde un  lenguaje  de programación simple estándar, normalizado, un IDE o un Framework   de trabajo…

En el proceso de desarrollo de un software, es necesario definir la herramienta a utilizar, haciendo una justificación válida  del  porqué   fue seleccionada.

No existe ningún patrón  o receta que determine que o cual herramienta a utilizar, sin embargo  se presentan ciertas características comunes deseables por todo programador, tales como:

Conocimiento: Preferiblemente el programador debe conocer las funcionalidades y expresiones de la herramienta.

Curva de Aprendizaje Corta: En el caso de no conocer la herramienta de programación, el programador desea desde lo mas profundo que   la herramienta sea fácil de aprender en un tiempo denominado corto dentro de la planificación del proyecto.

Multiparadigma/Multitecnología: La herramienta de programación  a utilizar, preferiblemente debe aceptar  diferentes estilos  de programación o paradigmas ya que en la práctica sabemos que  un paradigma en particular no resuelve todos los problemas que se le presentan  de la manera mas  idónea (es decir,  con facilidad y eficiencia); sin embargo,  es necesario que  haga énfasis en las ultimas y mejores prácticas  paradigmáticas, tales como la Orientación  a Objetos,   Paradigma Visual, imperativo, Lógico, funcional,  modular con facilidad de manejo de componentes reutilizables  aplicables a diferentes tecnologías (Escritorio -  Cliente/Servidor -  CGI – WEB – RIA).

Multipropósito: Esta característica supone que la herramienta puede ser utilizada para desarrollar una aplicación de cualquier propósito y no que esté dedicada a la programación de aplicaciones en un área de conocimiento específica. A saber, la herramienta puede ser utilizada  para gestionar archivos de datos, base de datos, formulación científica, simulación de sistemas, aspectos financieros, control de procesos  e inclusive  debe permitir crear nuevas herramientas  como frameworks,  y  nuevos componentes.

Es posible que en los inicios de la programación, se pudiera considerar como un arte,   ya que, cada programador seguía sus instintos sobre que se necesitaba y le ponía un toque personal a las interfaces. Hoy día ,  se habla de desarrollo de software y no de fabricación  aunque la palabra construcción esté explícita en el proceso.

Un proyecto de software es una verdadera obra de ingeniería;  surge de una necesidad individual o colectiva,  se desarrolla con la participación  de  cierto número de actores que  varía de acuerdo al ámbito o alcance,  se rige por un proceso, modelaje y metodología  esencialmente probada que proponga   las mejores prácticas y en general, se ejecuta en fases.  Se requiere conocimientos obtenidos a través del estudio,   excelente planificación y la capacidad de “oir”  a los clientes  para conocer efectivamente los requerimientos. Por último se debe prestar suma importancia a la documentación.

Cita del Libro en desarrollo

META-METODOLOGIA ECLECTICA PARA PROYECTOS  INFORMÁTICOS
CON ÉNFASIS EN LA INGENIERÍA DE SOFTWARE

Por Ronny Estredo.

 

Bienvenidos Grupo Lenguaje de Programación III UNEFA

Bienvenidos Grupo Lenguaje de Programación III UNEFA

 

 

 

Bienvenidos  Alumnos inscritos en la Materia "Lenguaje de Programación III".

 

El Tema o Categoría UNEFA  tiene como propósito, presentar contenido teórico referente  a la materia, así como también, ser un soporte de información necesario para guiar el proceso de Enseñanza - Aprendizaje durante el curso.

 

Espero sea del agrado de Todos y que disfruten esta experiencia...

 

 

Ronny. Estredo.

Profesor.

¿Y esta publicidad? Puedes eliminarla si quieres