Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Agrupación de acuerdo al scope

Para mejorar la lectura de bloques de código, variable y métodos seguiremos el siguiente orden de acuerdo a los tipos:

...

  • imports estáticos

  • imports

  • Bloque estático

  • Variables estáticas

  • Bloque de instancia

  • Variables de instancia

  • Métodos estáticos

  • Métodos de instancia

Monad Style

Con el paso del tiempo la programación funcional a ido creciendo y su popularidad se ha extendido hasta lenguajes como Java. A partir de la versión 8 con el ingreso de las interfaces funcionales y con esto las lambdas así como los streams inició una serie de cambios enfocados a programación funcional.

...

y ahora podemos usar:

Code Block
languagejava
    numeros.stream().filter(n -> n>10).forEach(n -> System.out.println(n));

...

De igual manera en java se ha extendido mucho es el uso de los builders, con lo que antes teníamos:

Code Block
languagejava
    Persona persona = new Persona();

    persona.setNombre("Ivan");

    persona.setApellido("Rodriguez");

    persona.setEdad(40);

ahora podemos usar algo parecido a:

Code Block
languagejava
    Persona persona = Persona.builder().nombre("Ivan").apellido("Rodriguez").edad(40).build();

...

con lo que tendríamos algo parecido a:

Code Block
languagejava
    numeros
        .stream()
            .filter(
                n ->
                    n>10)
            .forEach(
                n ->
                    System
                        .out
                        .println(
                            n));

y:

Code Block
languagejava
    Persona persona = Persona
                .builder()
                .nombre(
                    "Ivan")
                .apellido(
                    "Rodriguez")
                .edad(
                     40)
                 .build();

con esto lograremos leer el código mas fácilmente.

Saltos de línea adicionales

Para facilitar la lectura del código también podemos agregar algunos saltos de línea en:

...

  • Al final del código de un archivo .java

  • Entre los } finales o entre la ultima declaración de una variable y el } final de la clase

Ejemplo:

Code Block
languagejava
package com.ivra.grpc.test.grpc.service.server.utils;

import static java.lang.String.valueOf;
import org.springframework.stereotype.Component;

@Component
public class FormatoSPIN {

    private static final String VARIABLE_ESTATICA;

    static {
        VARIABLE_ESTATICA = "";
    }

    private String variableInstancia;

    {
        variableInstancia = "";
    }

    public static void metodoEstatico(){

        int variableLocal = 0;

        Persona persona = Persona
                .builder()
                .nombre(
                    "Ivan")
                .apellido(
                    "Rodriguez")
                .edad(
                     40)
                 .build();
    }

    public int metodo(){

        int variableLocal = 0;

        try {

            int suma = variableLocal + 5;

            return suma;

        } catch (Exception e) {

            throw new RuntimeException();
        }
    }
}

...