Header Ads Widget

Ticker

6/recent/ticker-posts

Caza los sustantivos

Al comenzar con la programación en un estilo orientado a objetos, a menudo se dice que busca los sustantivos. Sin embargo, ¿qué significa eso realmente? Bueno, probemos algunas cosas en código para ver de qué estamos hablando. Esta técnica es ideal para cuando estás en el nivel inicial de trabajar con php orientado a objetos y te ayudará a pensar de una manera que te ayudará a identificar buenos nombres de clases para tus proyectos.

Busque los sustantivos para ayudar a nombrar su clase

Recuerde, la clase es el punto de partida para la programación orientada a objetosEntonces, pensemos en algo para construir y pensemos en un sustantivo para empezar. Consideremos que tenemos algunas tareas que hacer. Bueno, hay un sustantivo, Chore. Hagamos una clase de quehaceres que actuará como modelo de cómo se vería un quehacer.

Una clase puede tener propiedades

Este pequeño fragmento solo nos dice que nuestro Choreva a tener un descriptionEntonces, ¿cuál es el trato con esa palabra público ? Eso trata de algo que llamamos encapsulación , y lo revisaremos cuando estemos listos. Por ahora, todo lo que necesitamos saber es que nuestra clase tiene una propiedad de descripción. Dado que tenemos una descripción para una tarea, sigamos adelante y codifiquemos un valor en esa descripción. ¿Cuál es una buena descripción para una tarea? ¿Qué tal, 'Limpiar los platos'.

Ahora bien, si tenemos una clase como esta con una descripción y un valor dentro de ella, ¿cómo diablos hacemos uso de esa información? ¿Cómo podemos acceder a él? La respuesta es crear una nueva instancia de la clase. Una nueva instancia de la clase se denomina objeto . Una vez que tenemos un objeto, podemos hacer uso de cualquier propiedad dentro de él. Así es como podríamos hacer eso.

La variable $ chore ahora contiene una instancia u objeto de la clase Chore. ¡Excelente! Dado que tenemos esa instancia, ahora podemos acceder a las propiedades que contiene.

Ahora compruébalo. Nuestra clase es similar a un plano, pero hay un valor codificado en nuestra descripción. ¿Tiene sentido? ¿El plano de una casa contiene el color de su revestimiento? Probablemente no. Una casa puede tener revestimiento azul, mientras que otra puede tener rojo. Tiene sentido entonces que nuestra descripción tenga una forma de poder decidir qué valor tendrá. Además, piense en lo que sucedería si creamos una instancia, o hacemos New Up un grupo de objetos o instancias de nuestra clase Chore. ¿Vamos a tener 10 quehaceres donde todos ellos son 'Limpiar los platos'? Por supuesto no. Necesitamos una forma de establecer la descripción de todos los diversos objetos que vamos a crear. Una excelente manera de asignar un valor a una propiedad tan pronto como se crea el objeto es mediante el uso de un constructor. Veamos cómo se ve eso.

Cuando volvamos a crear un objeto de la clase Chore en este punto, el programa inmediatamente repetirá "¡Como magia!". ¿Como sucedió esto? El constructor es un tipo especial de método que fue diseñado para activarse inmediatamente después de la creación de una nueva instancia de una clase. Tenga en cuenta que debe comenzar el método constructor con dos guiones bajos (lo que hace que parezca un guión bajo más grande) y luego la palabra construcción. Lo que tenemos ahora no es tan útil. Lo que queremos es una forma de asignar un valor a nuestra descripción cuando creamos un nuevo objeto. Queremos poder hacer cosas como las siguientes.

Esta es una buena forma de crear tres tareas y cada una tiene una descripción única. Tal como está ahora, este código no funcionará. Necesitamos actualizar nuestro código de clase, de modo que cuando creemos una nueva instancia de esa clase, pueda aceptar un valor y asignarlo a la propiedad de descripción. Así es como podemos hacer eso mismo haciendo uso del constructor.

La función del constructor mágico

Observe que el constructor ahora tiene un argumento . Eso es lo $descriptionque ves entre el ( y el ) . Esto representa el texto que proporcionamos cuando creamos un objeto o una nueva instancia de la Choreclase. Este texto luego se asigna a la propiedad de descripción de esa instancia a través de $this->descriptionEn este punto, estamos haciendo uso de $ this , que ha traído muchos dolores de cabeza, confusión y crujir de dientes al programador principiante orientado a objetos. Cuando usamos $this, estamos haciendo uso de una forma de distinguir entre múltiples instancias de la misma clase . Justo arriba creamos tres instancias delChoreclase en una fila. Es mediante el uso de $this, que la asignación del valor de descripción se maneja correctamente a cada uno de los tres objetos. Podemos probar esto accediendo al valor de cada propiedad de descripción en cada objeto así:

Aquí podemos ver que actualmente tenemos tres Tareas, y todas tienen una propiedad de descripción única.

Modificar el estado del objeto con métodos

También debe haber una forma de realizar un seguimiento de las tareas que se completan o no. Veamos cómo podemos hacer eso.

La oración resultante dice: “Ahora mismo, necesito pintar el cobertizo. Es cierto que he terminado la primera tarea ". Dado que hicimos una llamada al método complete (), la propiedad de descripción se cambió de falso a verdadero. Entonces, ahora tenemos una manera de mantener el estado de una tarea y dónde se completa o no.

Búsqueda de los sustantivos Resumen

En este tutorial volvimos a lo básico con php orientado a objetos. Echamos un vistazo al concepto de buscar los sustantivos para ayudar con las convenciones de nomenclatura para las clases en nuestro código. Vimos que una vez que tenemos una clase, podemos crear una nueva instancia de esa clase llamada objeto. De hecho, también vimos que podemos tener múltiples objetos o instancias de la misma clase, y que la palabra clave $ this nos permite diferenciar entre los diferentes objetos actualmente activos. Finalmente, la clase que usamos fue construida con una propiedad y un método básicos para lidiar con el estado y la descripción de una tarea.



Publicar un comentario

0 Comentarios