domingo, 10 de diciembre de 2017

Metodología de programación en Java. Capítulo 7. Operadores.

Operadores


Están listados por orden de prioridad.



Metodología de programación en Java. Capítulo 6. El tipo BigDecimal.

El tipo BigDecimal


El tipo BigDecimal se encuentra en la clase java.math.

BigDecimal  principal  = BigDecimal.valueOf(1000.0);
BigDecimal  tasa = BigDecimal.valueOf(0.05); //valueOf recibe un argumento double y lo convierte en Bigdecimal.

Métodos de BigDecimal:

for(int anio = 1; anio <= 10; ++anio)
{
BigDecimal monto = principal.multiply(tasa.add(BigDecimal.ONE).pow(anio));
System.out.printf(“%4d%20s%n”, anio,
NumberFormat.getCurrencyInstance().format(monto));
}
//tasa.add(BigDecimal.ONE) suma 1 a la tasa para producer un BigDecimal que contiene 1.05;
/*El resultado de 1.05 se pasa al método pow de BigDecimal que eleva dicha cantidad a la potencia anio.*/
//multiply mutliplica el valor de principal por el valor de la operación entre paréntesis.

Redondeo de valores y escalar valores:

BigDecimal monto = principal.multiply(tasa.add(BigDecimal.ONE).pow(anio));
monto.setScale(2, RoundingMode.HALF_EVEN);
// Devuelve un objeto BigDecimal con dos dígitos y usa el redondeo del banquero.

Metodología de programación en Java. Capítulo 5. Los tipos primitivos.

Los tipos primitivos



Metodología de programación en Java. Capítulo 4. Palabras clave en Java.

Palabras clave en Java



Metodología de programación en Java. Capítulo 3. Declaraciones import e import static.

Declaraciones import


Se añaden entre package y la definición de class.

Ejemplo:

package Nombre_Ruta_Package;
import java.util.Scanner;
public class NombreClase{...}

Con ellos podemos utilizar los métodos de la clase sin tener que escribir el nombre de ésta.

Declaraciones import static


Nos permite importar  los miembros static de una clase o interfaz para poder acceder a ellos sin escribir el nombre de la clase.

import static nombrePaquete.NombreClase.nombreMiembroEstático;
import static java.lang.Math.nombreMiembroEstático;

Si queremos importar todos los miembros static de una clase:

import static nombrePaquete.NombreClase.*;

Ejemplo:

double raíz = sqrt(900.0);

Recordar que si se instancia objetos de las mismas clases deben incluirse las declaraciones import regulares.

Metodología de programación en Java. Capítulo 2. Declaración Package.

Declaración Package


 Los paquetes en Java (packages) son la forma en la que Java nos permite agrupar de alguna manera lógica los componentes de nuestra aplicación que estén relacionados entre sí.

 Los paquetes permiten poner en su interior casi cualquier cosa como: clases, interfaces, archivos de texto, entre otros. De este modo, los paquetes en Java ayudan a darle una buena organización a la aplicación ya que permiten modularizar o categorizar las diferentes estructuras que componen nuestro software.

 Los paquetes en Java, adicionalmente al orden que nos permite darle a la aplicación, también nos brindan un nivel adicional de seguridad para nuestras clases, métodos o interfaces, pues como veremos más adelante podremos especificar si una clase o interfaz en particular es accesible por todos los componentes del software (sin importar el paquete) o si en realidad es solo accesible por las clases que estén en el mismo paquete que ésta.

 Para declarar un paquete en Java se hace uso de la palabra reservada "package" seguido de la "ruta" del paquete:

package ruta.del.paquete;

Los puntos separan carpetas. Por ejemplo, la clase que buscamos se encontraría en la carpeta paquete que está debajo de la carpeta del que está debajo de la carpeta ruta. Si lo quisiéramos establecer como directorios sería: ruta\del\paquete.

El paquete en Java se declara antes que cualquier otra cosa. Cada punto en la ruta del paquete es una nueva carpeta. Si no se declara un paquete Java lo entenderá como “paquete por defecto”.

 Cuando se declaran paquetes es común que todas la letras estén en minúscula y en caso de ser varias palabras separarlas por un guion bajo "_" por ejemplo "mi_paquete" es adecuado mientras que "MiPaquete" aunque no es incorrecto, no es una buena práctica.

Metodología de programación en Java. Capítulo 1. Esquema de un programa en Java.

Esquema de un programa en Java

Código básico en una aplicación de consola

 

/* Este es un comentario
tradicional. Puede dividirse
en muchas líneas. */
package holamundo;
/*Comentario con el  nombre del autor David Domínguez López.*/
//Incluyendo la clase Scanner en el código.
import java.util.Scanner; 
public class HolaMundo{
/* Comentarios explicando que hace la clase y cada método. */
public static void main(String[] args)
{
// Explicacion del método y sus instrucciones.
System.out.println("Hola Mundo.");      
}
}
Comentarios
//         Comentario de una única  línea.
/* */         Comentario multilínea.
/** */ Comentarios Javadoc. Para la documentación del programa.

Metodología de programación: capítulo 0.

 Esta metodología es, exclusivamente, para personas que quieran enseñar el lenguaje (para utilizarlo como pauta y/o guía) y para personas que estén estudiándolo por otro lado y necesiten un sitio de referencia para consultar. Esto no es un curso ni un tutorial. Si se desea estudiar el lenguaje Java recomiendo los siguientes libros:

-En español

Cómo programar en Java (10ª edición). Editorial Pearson México.

-En inglés:

OCA Java SE 8 Programmer I Study Guide Exam 1Z0-808.
OCP Java SE 8 Programmer II Study Guide Exam 1Z0-809.
OCA/OCP Java SE 8 Programmer Practice Test.

 Unos pequeños apuntes al respecto de estos libros. Los 3 en inglés son muy buenos y te preparan para el examen de certificación oficial de Oracle. No recomiendo, bajo ningún concepto, acudir al examen sin haber consultado como son los tests (más que nada por que son bastante "cabrones"). Os pondrán casos confusos, enrevesados, ambiguos, etc.

 Los libros en inglés (los dos primeros) te avisan, mientras te explican la teoría, de lo que te vas a encontrar. Cada tema incluye ejercicios tipo test más difíciles que los del examen, así que son fantásticos para ir preparado. El tercer libro es un recopilatorio de cientos y cientos de preguntas (los tres libros incluyen explicaciones detalladas de por qué la respuesta es una y no otra). Recuerdo, también, que para aprobar debes hacerlo con un 65% de respuestas acertadas.

 Pasemos al libro en español. La editorial Pearson (México) tiene un dilatado historial en libros de programación "Cómo programar en...". Son libros traducidos de los hermanos Deitel. Estos señores tienen muchos libros publicados en USA de gran calidad.

 Sólo puedo hablar por mi experiencia, así que aquí va mi caso: en su día compré la 6ª edición de "Cómo programar en Java". El libro (alrededor de 1400 páginas) venía en completo castellano y con decenas de ejercicios en cada capítulo. Las explicaciones son muy detalladas y se da todo muy mascadito. Es imposible no aprender con él. Mi problema vino cuando quise comprar la última edición (la 10ª) que incluye los cambios de Java SE 8. El libro sólo trae alrededor de 600 páginas impresas. El resto de capítulos, según pone en el propio libro y las páginas web que lo venden, se pueden descargar con un link que viene en el libro. Bueno, pues esto es mentira. Cuando fui al link no me llevaba a ningún sitio de descarga. Me puse en contacto con el departamento de soporte y me tocó un individuo que se negaba a darme ningún acceso a la descarga. Después de insistir mucho me díó acceso al resto de capítulos que estaban en español (del 12 al 20), pero se negó a darme acceso a la descarga del resto de capítulos que vienen en inglés (del 21 al 36, creo). Presenté quejas en Pearson México, en Pearson España y, al final, sólo conseguí una web para consultarlos y con un tiempo límite. Una estafa, vamos. Lo que más me da por saco es que es libro está para descargar en internet (versión USA, eso sí).

Dónde conseguir los libros:

 Si alguien desea iniciarse le recomendaría la 6ª edición que, aunque trabaja con una versión más antigua de Java (no recuerdo, ahora mismo, si es con la 1.5 o la 1.6), Con ese libro tiene todo lo que puede querer aprender y más (hablamos de algo más de 1400 páginas). La 9ª edición trabaja con la versión 1.7, pero sólo son 600 páginas (como la 10ª edición).

 Entonces, estos 3 libros están disponibles para comprar en varias librerías (libraría hispanoamericana, por ejemplo) y muchas webs (casa del libro, amazon, etc.). También se puede encontrar su descarga en multitud de webs y emule.

 Los libros en inglés, como he dicho, son muy buenos. Para comprarlos tuve que acudir a Amazon. También se pueden encontrar en internet (formato digital) de manera fraudulenta o legal.

 Personalmente, decir que los tengo todos en papel (comprados en Amazon) por que me es mucho más cómodo para estudiar (aunque también dispongo de la versión digital para la tablet).