Tipos De Datos Y Argumentos En La Programación Orientada A Objetos

Tipos de datos y argumentos en la programación orientada a objetos

Si estás siguiendo esta serie de artículos relacionados con la programación orientada a objetos ya tendrás unos datos mínimos necesarios para empezar a crear tus pequeños scripts. Pues bien, hoy vamos a explicar qué tipos de datos podemos utilizar en nuestros programas y cómo pasárselos a nuestras funciones o métodos, lo que se conoce como paso de argumentos vaya…

¿Qué son y cuántos tipos de datos existen?

Gran pregunta. Ya sabes lo que es una variable, pero si por un casual has caído en el post sin haber leído los artículos anteriores (te recomiendo que te los leas) imagina que una variable es como una caja vacía. En función del tamaño de la caja vas a poder guardar diferentes cosas en ella, desde un boli, a una pelota, una televisión o un conjunto de otras cajas mas pequeñitas.

Pues una variable es eso, una caja en la que guardar datos y los objetos que he dicho antes son los diferentes tipos de datos. Si por ejemplo intentas guardar una televisión en una caja que está pensada para guardar bolígrafos vas a comprobar que es imposible. Pues eso también pasa en la programación.

Internamente las variables son espacios de memoria reservada y para optimizar la memoria siempre se reserva el espacio que necesita el tipo de dato que contendrá la variable, es decir, si quiero guardar la tele en mi armario voy a reservar una caja que tenga el tamaño de la televisión que me interesa almacenar.

En los lenguajes de programación fuertemente tipados esto se respeta to the limit, con ellos no puedes guardar un tipo de dato diferente al tipo de dato con el que has declarado la variable. C y C++ es un lenguaje de programación con un tipado fuerte y me gusta especialmente ya que aunque el ritmo de programación sea mas lento que en comparación con otros lenguajes te aseguras que tu programa es robusto ya que por ejemplo te quitas la preocupación de que se pueda guardar una televisión en una cajita de bolígrafos.

Sin embargo también existen los lenguajes con un tipado débil, como PHP hasta su versión 7 y… y… Estos lenguajes son mas laxos a la hora de permitir guardar datos diferentes en las variables, de hecho esto puede ser una ventaja a la hora de programar pero también te exige estar mas atento a medida que escribes para no cagarla.

Pues bien, en PHP tenemos los siguientes tipos de datos:

Tipo de dato Descripción Valores Ejemplo
Boolean Es el tipo mas simple de todos y su valor representa una verdad. true/false $var = true;
Integer Es un número entero y puede especificarse con notación decimal (base 10), hexadecimal (base 16), octal (base 8) o binaria (base 2), opcionalmente precedidos por un signo (- o +). Números enteros $var = 1;
Floats Es un número decimal o número de punto flotante. Números decimales $a = 1.234;
$b = 1.2e3;
$c = 7E-10;
Strings Texto o cadena de caracteres. Texto $var = ‘Gorkamu’;
Arrays Estructura que puede guardar un conjunto de otros datos. En realidad es un mapa ordenado en el existen nodos con una clave y un valor. Conjunto de valores $var = [1 => ‘Hola’, 2 => ‘Gorka’];
Object Un objeto de una clase que se crea con la palabra reservada new Objeto $var = new Gorkamu();
NULL Sin valor null $var = null;
Atención

Los arrays son complejos, por favor revisa este documento para saber mas de ellos.

Mantén esta tablita a mano que a medida que aprendes y vas adquiriendo soltura con los tipos de datos te será muy útil.

Ya has aprendido a crear variables con diferentes tipos de datos, ahora toca pasarle esos valores a las funciones y métodos que programes.

Pasando argumentos a funciones y métodos

Bien, en este artículo anterior habrás aprendido que son los métodos y/o funciones, en el fondo es lo mismo y lo mas importante, habrás aprendido a crearlos. Pues ahora vamos a ver cómo pasarle datos a esas funciones.

Si te cuesta un poco visualizarlo imagínate una cadena humana en la que el primero de la fila tiene un bol lleno de palomitas y tiene que pasárselo al último que le ha pedido unas pocas. Siguiendo la cadena, el bol de palomitas ira pasando de persona en persona hasta llegar al último. Pues cada persona es una función o método que recibe algo (el bol de palomitas) y devuelve algo (el bol de palomitas)

Es posible que algún miembro de la fila manipule el bol de palomitas, tal vez alguno se lo pasará al siguiente sin hacerle nada, otro cojera un puñado, otro le echará un poquito mas de sal y si por desgracia en la cadena humana tenemos a un gordo fanegas es muy posible que se coma el bol de palomitas y no llegue nada.

¿Ha quedado claro no? xD

Pues eso, en PHP podemos pasar tantos valores, de ahora en adelante argumentos, como nos de la gana. Tendremos que separarlos por comas y existen tres formas diferentes de pasar los argumentos a las funciones.

Paso de argumentos por valor

Es el paso de argumentos por defecto. Cuando pasas un argumento a la función y el valor de este argumento cambia dentro de la función, su valor original, el de fuera de la función no se verá afectado.

Paso de argumentos por referencia

Cuando pasas un argumento por referencia, si cambias o modificas su valor dentro de la función su valor original, fuera de la función, también se verá afectado. Para indicar que un argumento se pasa por valor lo tenemos que hacer indicándolo con el ampersand (&)

Puede ser útil para modificar valores en funciones sin tener que indicar un return.

Paso de argumentos predeterminados

Si definimos una función que acepte argumentos es posible que nos interese que alguno de ellos tenga un valor por defecto. Si a la hora de llamar a esa función no le pasamos valor para ese argumento, el argumento tomará el valor por defecto dentro la función. Por el contrario, si a la función le indicamos un valor para argumento, ese argumento tomará dentro de la función el valor que hemos pasado.

Otra cosa interesante que podemos hacer respecto a los argumentos de una función es definir una lista de longitud variable, esto es, en la declaración de la función no tenemos porque indicar uno por uno los argumentos que vamos a pasar. Si utilizamos el token “…” antes del argumento, PHP ya sabrá que se trata de una lista variable aunque eso si, todos los argumentos pasados han de ser del mismo tipo.

Pues nada chavales, a practicar y a realizar un huevo de ejercicios para que estos son conceptos se posen en tu cabecita y ya sabes, si tienes dudas dejame un comentario y te la resolveré o ponme un tweet a través del siguiente banner 😉

@gorkakatua #faqsGorkamu pregúntame por twitter cualquier cosa y vemos cómo lo solucionamos.

Hala a mamarla!

¿Te ha parecido este un artículo de 5 estrellas? Dame tu valoración:
Review Date
Reviewed Item
Tipos de datos y argumentos en la programación orientada a objetos
Author Rating
5

Gorka Muñoz Andrés

Me llamo Gorka Muñoz y soy un desarrollador melómano. Combino a la perfección la búsqueda de nuevos grupos con la pasión por la tecnología. Desde chiquitito me ha gustado la programación, ahora que soy mayor estoy metido en el mundo del SEO sin olvidarme del /Dev.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *