Fundamentos de programación I

Codeando Pues - Season 0 Episode 1


Se que este episodio hará que muchas personas no vuelvan a voltear el canal por ser muy técnico y sin tanta comedia como el primero, pero eso es por que la programación, así como los juegos RPG no son para todo el mundo. Si te ha gustado el video, creeme que espero seguir dando información en pequeñas dosis de videos y seguir con los posts que acompañan dichos videos. También me gustaría mencionar que nos estamos acercando a los videos mas prácticos donde todos descubriremos algo nuevo, la idea es que el personaje de Algus no es un experto y le encanta aprender.

¿Qué es una variable?.

Una variable está formada por un espacio en memoria y un identificador asociado a dicho espacio. Ese espacio contiene una cantidad de información desconocida o conocida, es decir un valor. Se le conoce como declaración al hecho de especificar un identificador.

En algunos lenguajes, como JavaScript, declaramos variables con una de tres palabras reservadas: var, let o consten otros episodios hablaremos sobre este lenguaje en específico, por ahora usaremos la primera de las tres palabras, aunque en el futuro nunca la volveremos a utilizar y explicaremos la razón—. En muchos lenguajes tenemos que definir un fin en nuestras sentencias, y en la mayoría de ellos se hace con un ;.

var identificador = 42;

El anterior código crea un identificador con el valor de 42, el cual se guarda en la memoria de nuestra computadora. Podremos poner el nombre que queramos, así que podríamos definirlo como var gato = 42, sin embargo debemos tomar en cuenta que el identificador debe tener relación con el valor, eso nos facilitará saber que contiene y como manejar esa información. El concepto de variables en computación puede no corresponder directamente al concepto de variables en matemáticas ya que podremos resignarle un nuevo valor. Esto quiere decir que una variable x puede tener un valor inicial y finalizar con otro totalmente diferente.

Tipos de Datos

Un tipo de dato informático es un atributo de los datos que indica al ordenadors obre la clase de datos que se va a manejar. Cada lenguaje tiene sus diferentes tipos, pero entre los mas comunes se encuentran:

Numéricos

Este tipo de dato puede ser real o entero, dependiendo del tipo de dato que se vaya a utilizar.

  • Enteros: Son los valores que no tienen punto decimal, pueden ser positivos o negativos y el cero.
  • Flotantes: son los valores que tienen punto decimal.
var entero = 42;
var flotante = 3.14159;

Cadena

Es una “extensión” del tipo de dato cadena que permite ampliar los símbolos de escritura, mientras que un caracter es un dígito individual.

var cadena = "Soy una cadena";
var caracter = "A";

Booleanos

También conocidos como tipos de dato lógicos, son aquellos que pueden representar valores de lógica binaria, es decir, dos valores que representan verdadero o falso.

var verdadero = true;
var falso = false;

Lista, matriz o Arreglo (Arrays)

Conocido también como Vectoraunque comunmente llamados arrays—, es una zona de almacenamiento contiguo que contiene una serie de elementos del mismo tipo —aunque en algunos lenguajes pueden ser de distintos tipos—. Este tipo de dato se puede acceder mediante posiciones, las cuales comienzan con el 0. En algunos lenguajes deberemos de definir el tamaño máximo de elementos que podrá almacenar, mientras que en otros no será necesario, por lo que podrá guardar datos sin ningún esfuerzo extra por nuestra parte —cabe aclarar que para que esto sea posible, se aplican diferentes tipos de soluciones para crear este tipo de datos, y es algo que está fuera de este post, pero puedes leer más sobre esto buscando arrays dinámicos—.

var array = [10,20,30,40,50];

Si quisieramos acceder al 3er elemento de nuestra variable array, tendremos que hacerlo de la forma array[2] —esto por que la posición 0 contendrá el valor 10, el cual es nuestro 1er valor—.

Objetos

Un objeto es una unidad dentro de un programa de computadora que consta de datos almacenados y de tareas realizables durante el tiempo de ejecución. Javascript es un lenguaje donde la creación de objetos es muy sencilla, sólo necesitaremos rodear identificadores y valores entre un par de { }.

var algus = {
    website: 'algus.ninja',
    twitter: 'tweet.algus.ninja',
    favorite_number: 42,
}

Para acceder al valor de un objeto, sólo tendremos que utilizar un . después de su nombre. Por ejemplo, si necesito saber el twitter de algus, sólo bastará con algus.twitter para extraer dicha información.

Aunque los arrays y objetos no son tipos de datos primitivos, quise mencionarlos ya que son tipos de datos compuestos muy populares, y las utilizaremos mucho en nuestros programas. En especial los objetos si deciden optar por lenguajes de programación orientada a objetos.

En lenguajes de programación estáticos, deberemos declarar nuestras variables con el tipo de dato que vamos a utilizar. El no seguir estas reglas nos generará errores al compilar. Por ejemplo, en el lenguaje de programación Java deberemos hacer lo siguiente:

String nickname = "Algus Dark";
int number = 42;
boolean winner = false;
int[] numbers = new int[10];

En el anterior código, la primer palabra es el tipo de dato, la segunda es nuestro identificador y después asignamos el valor después del = hacia dicho identificador. El último ejemplo es un Array que podrá contener hasta un máximo de 10 valores —posiciones del 0 al 9— del tipo int.

Un lenguaje de programación dinámico no requerirá de cierta especificación y no habrá que seguir pasos adicionales para guardar diferentes tipos de datos en la misma variable. Mientras que en JavaScript podremos guardar 42 o Algus en var x, en Java no podremos hacer lo mismo en String x, ya que hemos definido que x sólo podrá tener valores del tipo String.

Operadores

Un operador es un símbolo que tiene una función predefinida, y se dividen en tales como:

Aritméticos

Los operadores aritméticos nos permiten, básicamente, hacer cualquier operación aritmética, que necesitemos:

  • Un signo de + nos ayudará a sumar.
  • Un signo de - nos ayudará a restar.
  • Un signo de * nos ayudará a multiplicar.
  • Un signo de / nos ayudará a dividir.
  • Un signo de % nos ayudará a obtener el residuo de una división.
var result = 5 * 4 / 10 + 3 - 1;

Ten en cuenta que la prioridad es similar a la existente en matemáticas, por lo que podremos agrupar operaciones usando paréntesis. Por ejemplo, el anterior código da como resultado 4, ya que ( ( ( 5*4 ) / 10 ) + 3 - 1 ) sería lo equivalente si utilizaramos paréntesis.

Relacionales o de Comparación

Estos operadores nos permitirán evaluar las relaciones entre un par de operandos.

  • == nos ayudará a comparar si los valores en ambos lados son idénticos.
  • != nos ayudará a identificar si existe una diferencia entre dos valores.
  • > nos ayudará a identificar si el valor de la izquierda es mayor que el de la derecha.
  • >= nos ayudará a identificar si el valor de la izquierda es mayor o igual que el de la derecha.
  • < nos ayudará a identificar si el valor de la izquierda es menor que el de la derecha.
  • <= nos ayudará a identificar si el valor de la izquierda es menor o igual que el de la derecha.
var x = 3 <= 12;

En este caso, x tendrá el valor true ya que es verdad que _3 es menor o igual que 12.

Y eso es todo por hoy

Espero que les haya gustado este capítulo de Codeando pues. Al principio no creí que haría un episodio con este tipo de información, pero hubo gente que no sabía nada de programación, así que decidí crear un starting point para que pudieran encontrar mas sencillo cosas como ¿Qué es una variable?. En el siguiente capítulo terminaremos los fundamentos de programación para después seguir con un lenguaje y realizar algunos ejercicios para familiarizarse con ello. Es cierto que me alejé del primer video, pero les aseguro que habrá mas de ellos, ya que como siempre he dicho: la programación no es sólo escribir código, es también hablar de su filosofía.

Nos leemos