programacion-tipos-de-datos

Qué son los tipos de datos

En programación, los tipos de datos son una herramienta fundamental para el desarrollo de software. Estos definen el tipo de información que puede ser almacenado en una variable o estructura de datos.

Sabes que se suele decir que:

No se pueden sumar peras con manzanas

Pues de la misma forma, es baste complicado sumar un número y un texto. De hecho, no se pueden sumar 😅.

Por eso los tipos de datos son importantes porque ayudan al compilador o intérprete a comprender y gestionar la información de manera adecuada, y a saber cómo tiene que manipular y tratar las variables.

Es importante decir que tu programa va a tener tipos de datos, los veas tú o no. En los lenguajes dinámicamente tipados el intérprete te oculta gran parte de la gestión de datos. Pero los tipos de datos, siguen estando.

Si no hubiera tipos de datos, el ordenador literalmente no sabría como sumar dos cosas. No sabría como guardarlas, no sabría como manipularlas. Sin tipos de datos, un ordenador no puede funcionar.

Un lenguaje de programación típico soporta varios tipos de datos. Pero, en general, los podríamos clasificar en:

  • Tipos de datos primitivos
  • Tipos de datos compuestos
  • Tipos de datos referencia
  • Tipos de datos abstractos

Tipos de datos primitivos

Los tipos de datos primitivos son aquellos que están integrados en el lenguaje de programación y no requieren una definición previa.

Estos tipos de datos se encuentran en la mayoría de los lenguajes de programación y pueden variar de uno a otro, pero generalmente incluyen:

Tipos de datos compuestos

Los tipos de datos compuestos son aquellos que contienen más de un valor. Estos tipos pueden ser definidos por el programador o pueden estar integrados en el lenguaje de programación.

Algunos ejemplos de tipos de datos compuestos son:

Colecciones

Las colecciones son tipos de datos compuestos que permiten almacenar múltiples elementos de un mismo tipo en una única estructura. Algunos ejemplos comunes de colecciones son los arrays, las listas, o los diccionarios.

Un array es una colección ordenada de elementos del mismo tipo. Puede contener un número fijo de elementos y se accede a cada elemento mediante un índice numérico. Por ejemplo, un array de enteros podría contener los números [1, 2, 3, 4, 5].

Una lista, por otro lado, es una colección ordenada de elementos que puede crecer o reducirse dinámicamente. Los elementos de una lista pueden ser de diferentes tipos y se accede a ellos mediante su posición. Por ejemplo, una lista de palabras podría contener [“hola”, “mundo”, “programación”].

Agrupaciones

Las agrupaciones son tipos de datos compuestos que permiten combinar diferentes elementos en una sola entidad. Algunos ejemplos comunes de agrupaciones son las estructuras, los objetos y las tuplas.

  • Una estructura es una agrupación de variables de tipos distintos. Cada variable dentro de una estructura se llama miembro. Por ejemplo, una estructura “Persona” podría tener miembros como “nombre”, “edad” y “dirección”.
  • Un objeto es una agrupación de datos que incluye otras variables (atributos) y su comportamiento (métodos). Por ejemplo, un objeto “Coche” podría tener atributos como “marca”, “modelo” y “color”, y métodos “acelerar” y “frenar”.
  • Una tupla es una agrupación ordenada de elementos de diferentes tipos. A diferencia de los arrays y las listas, las tuplas suelen ser inmutables. Por ejemplo, una tupla podría contener información de un punto en coordenadas (x, y).

Enumeraciones

Las enumeraciones son tipos de datos compuestos que representan un conjunto finito de valores posibles. Estos valores suelen ser constantes y se definen de antemano.

Las enumeraciones son útiles cuando se desea restringir una variable o parámetro a un conjunto específico de opciones. Por ejemplo, una enumeración “DiaDeLaSemana” podría tener valores como “Lunes”, “Martes”, “Miércoles”, etc.

Uniones

Las uniones, también conocidas como tipos de datos variantes o variantes, permiten representar un valor que puede tener diferentes tipos. Una variable de una unión puede almacenar uno de los varios tipos especificados en la unión. Por ejemplo, una unión “Resultado” podría contener un valor numérico o un mensaje de error, dependiendo del contexto

Tipo referencias

Los tipos de datos referencia sirven para manipulación de datos indirecta almacenada en otras variables. Estos tipos de datos no almacenan directamente el valor, sino que se refieren a la ubicación en la memoria donde se encuentra el valor o la función.

Algunos ejemplos de tipos de datos por referencia son:

Referencia a otras variables

Una referencia a otra variable es un tipo de dato que permite acceder y manipular el valor almacenado en una variable original a través de una referencia. En lugar de copiar el valor de la variable, se crea una referencia que apunta a la ubicación de memoria donde se encuentra el valor.

Esto significa que cualquier cambio realizado a través de la referencia también afectará a la variable original. Las referencias a variables son especialmente útiles cuando se trabaja con estructuras de datos grandes o se desea compartir el mismo dato entre diferentes partes de un programa.

Referencia a funciones

Una referencia a una función es un tipo de dato que permite almacenar la dirección de memoria de una función. Esto permite la elaboración de estructuras avanzadas dentro de un programa.

Algunos ejemplos de referencia a funciones son los eventos, los callback, los filtros o los selectores.

Tipos de datos abstractos

Los tipos de datos abstractos (TDA) son tipos de datos que definen una interfaz pública y ocultan su implementación interna. Esto significa que los usuarios de un TDA solo necesitan conocer la forma en que pueden interactuar con él, sin necesidad de conocer los detalles de cómo está implementado.

Ejemplos de datos abstractos las clases abstractas y los interfaces.