Quantcast

Estructuras principales en Android / Java

Aitor Sánchez - Blog - Nov. 2, 2023, 1 p.m.

Si estás interesado en Java, en comprender cómo funciona y en conocer las estrucutras principales que hacen de este lenguaje de programacion, uno de los lenguajes de programación más populares en la actualidad, quédate que esto quizás te interesa.

Mi nombre es Aitor Sánchez, hago apps desde 2014, y en este artículo te mostraré las tripas de Java para que entiendas cómo funciona desde abajo hasta arriba y así consigas tener una visión más global del lenguaje.

Pero antes de continuar, esta es la Flutter Mafia. Es mi newsletter donde tu vas a aprender a hacer apps y a ganar dinero con ellas junto con otros genietes que ya están dentro. Y si te suscribes te regalo mi ebook "Duplica los ingreso de tus apps en 5 minutos" No es broma, quizás te interese.

Y ahora si, comenzamos. Let´s go!

 

El primer programa desarrollado en Java / Android

Como sabéis, o intuís para los más nuevos, todo programa hecho en Java debe contener al menos una clase. En el caso de programar desde Java, esta clase, la clase principal casi seguro, es la que incluirá nuestro método estático “main”. Siempre será la primera en arrancar y desde la que se desplegará todo nuestro programa.

El funcionamiento de Android es muy similar, lo que pasa que nosotros no vemos esta función cuando usamos el código de Android. Para hacer una similitud, sería nuestra actividad principal que implementa el método/función “OnCreate”.

Veamos un ejemplo de cada una:

 

 

Por otro lado, tenemos la arquitectura del sistema operativo. También lo tenemos que mentar porque es muy importante sentar unas bases correctas que definan bien los pasos a seguir en nuestro aprendizaje.

 

 

Inciso sobre los IDEs de desarrollo

Aunque no me guste, porque cada uno es libre de usar el IDE que quiera. Por si queréis seguir mis pasos, yo utilizo el estándar de Google que es Android Studio, no voy a explicar cómo instalarlo, bajar el Framework, crear el primer Hola Mundo, etc… es algo que me parece inútil meter aquí porque en todos los tutos que hay por ahí lo explican una y otra vez, y este no es un blog en el que vaya a enseñar a programar como tal, voy a enseñar a resolver problemas. Esos problemas que aparecen después de que sabes programar… ya lo entenderéis los más nuevos.

Tipos primitivos en Java / Android y las Estructuras principales

Antes de continuar por este punto, quiero hacer una definición. Los tipos primitivos no son objetos.

Actualmente, y dudo mucho que cambien en un futuro, tenemos 4.

 

  • Booleano
    • Son los valores estándar en la programación. Se trata del “true” y el “false”. Su principal función es la evaluación de estados.
  • Entero
    • Int: Número entero de 4 bytes.
      • Primitivo estándar en el uso de datos numéricos.
    • Short: Número entero de 2 bytes.
      • Primitivo que permite guardar la mitad de rango que el int.
    • Long: Numero entero de 8 bytes.
      • Primitivo semi-estándar que permite almacenar número con un rango doble que el int. Normalmente se usa para las fechas.
    • Byte: Número entero de 1 byte
      • Primitivo que se usa para almacenar números muy pequeños. Utilizado, por regla general, para la optimización del código.
    • Punto Flotante
      • Permite el uso de coma flotante en los resultados numéricos.
        • Float: flotante de 4 bytes.
        • Double: flotante de 8 bytes.
      • Carácter
        • Se usan 2 bytes para construir cada carácter y son considerados como “Unicode”.
        • Están diseñados para soportar internacionalización.
        • Solo están permitidos entre comillas simples, las comillas dobles no los permiten.
        • Tienen un aspecto hexadecimal: \u0008.
        • El byte menos significativo corresponde al “ASCII” de 8 bits.
        • También tenemos caracteres no visibles como pueden ser el salto de línea, la tabulación, etc…
          • \b
          • \t
          • \n
          • \r

 

Las constantes en las estructuras principales

Las constantes son un tipo de “almacén” que se define para poder recordar mucho mejor los valores que no cambian durante toda la ejecución del programar. En Android, debido a su formato de Framework, hay muchas. Por norma general se presentarán en mayúsculas y tendrás unos nombres muy identificativos sobre el valor que almacenan.

Para poder definirlas se usará la palabra reservada “final”.  Cuando se usa esta palabra la constante tiene que definirse e inicializarse en la misma línea de ejecución.

  • final float NUMERO_PI = 3.1416;
  • final float CENTIMETROS_PULGADAS = 2.54;

Este tipo de dato tiene que definirse dentro de una clase y es accesible sin necesidad de instanciar un nuevo objeto de la clase.

<imagen de ejemplo de constantes>

Estructuras principales y la clase String

Esta es la clase “principal” en java. Es usada casi para todo por su posibilidad casi infinita del trato de cadenas de texto.

A diferencia de los tipos primitivos, String sí que es una clase con sus respectivos campos y funciones. Esto es importante recordarlo porque en otro lenguajes, String sí que se considera un tipo primitivo.

Para poner un ejemplo, que no sirva de distracción, solo es por comentarlo, “typescript” un lenguaje de programación web con base en Javascript.

Si queréis conocer más detalles técnicos sobre esta clase, te invito a que revises la documentación oficial donde podrás conocer todos las funciones y campos que contiene.

Documentación oficial de Android sobre la clase String.

Qué son las sentencias en las estructuras principales

Por sentencia se define una orden que le damos al programa mediante una o varias líneas de código.

Todas las sentencias terminarán en “;” (punto y coma). Este punto y coma le permite al compilador saber cuál es el final de la orden para poder comenzar a ejecutar la siguiente.

Hay muchos lenguajes de programación modernos que ya están obviando esta nomenclatura, pero he de reconocer, que si la usamos escribimos un código mucho más legible para el programador que venga después leer/usar nuestro código. Así que es una buena práctica que considero muy recomendable utilizar independientemente de si sea obligatorio o no.

Ejemplos:

  • Log.e(“error”, “Esto es una prueba”);
  • String resultado = respuesta.toString();
  • Int parse = Integer.parseInt(resultado);

En java, si no pusiéramos el “;” el programa no compilaría por error de sintaxis y nos saltaría una excepción.

Te dejo un vídeo interesante de mi amigo Juan por si queréis profundizar en el tema:

 

Algo más que quizás te interese

Mira, en el momento que tu mejoras el logo de una app que tengas publicada en Google Play, las descargas y los ingresos que esta aplicación genera aumentan. Esto es así. Mejor logo es igual a más dinero.

Basándonos en esto, hemos creado esta herramienta que te permite evaluar, optimizar y mejorar los logos de tus apps para que reciban más descargas. No te quiero espoilear, dentro hay un video explicativo. Entra en el enlace.

 

Y hasta aquí el artículo. Espero haberte ayudado a entender un poquito más lo que es Java y nos vemos en el siguiente artículo. Hasta entonces ¡que te vaya bien!