Polimorfismo y WordPress: Clases abstractas

Cuando vimos la herencia en el pasado, había algunas preguntas sobre las interfaces y clases abstractas.

  • ¿Para qué las puedes usar?
  • ¿Cuáles son las ventajas?
  • ¿Cuándo deberías usarlas?

Estas son todas buenas preguntas que valen la pena de explorar. Como el título sugiere, “Polimorfismo” es una característica de la programación orientada a objetos que te ayuda a responder a estas preguntas. No es una característica muy fácil a comprender.

Es por eso que la mayoria del artículo va a estar sobre un ejemplo en profundidad. Vas a ver el proceso de pensamiento implicado con usar esta característica. Este va a ayudarte a comprenderla mejor así puedes aplicarla en tus proprios proyectos.

¿Qué es el polimorfismo?

El polimorfismo se centra sobre una sola idea. Es que puedes usar una interfaz o clase comuna para representar diferentes tipos de objetos. Ahora, hay diferentes tipos de polimorfismo. El uno que nos interesa es el polimorfismo de subtipo. Es el tipo de polimorfismo referenciando en la programación orientada a objetos.

¿Así que es el polimorfismo? Si recuerdas, herencia es sobre la creación de relaciones “como es” entre tus clases. Bien, polimorfismo se trata de estas relaciones. Es como construyes tus clases a su alrededor. Se trata de aprovechar estos elementos comunes entre tus clases.

Cuando trabajas con polimorfismo, te haces preguntas como:

  • ¿Qué tiene mi clase Mi_Widget en común con todas las otras clases widget?
  • ¿Hay una manera de reutilizar elementos widget comunes?
  • ¿Estos elementos comunes están relacionados con algo más?

Estas son preguntas específicas a WordPress. Eso dijo, puedes hacer preguntas generales sin importar el contexto. El objetivo es identificar lo que necesitas extractar y reutilizar entre tus clases. Dependerás de las herramientas que viste en el artículo sobre la herencia para hacerlo.

Seguir leyendo Polimorfismo y WordPress: Clases abstractas

Principio de responsabilidad única y WordPress

Para desarrolladores WordPress, puede ser difícil de mejorar tus habilidades PHP. No hay muchos recursos ni tutoriales para ayudarte aprender esos conceptos. Eso fue el problema de Nathaniel cuando pidió ayuda sobre Stack Overflow. (La pregunta es en inglés.)

Estaba buscando ayuda para aplicar el principio de responsabilidad única con WordPress. Como desarrolladores WordPress, podrías haber comenzado a trabajar o investigar la programación orientada a objetos. Posiblimente escuchaste de una cosa llamada SOLID.

Como tema, SOLID puede ser muy intimidante. Pero el principio de responsabilidad única solo es una parte de ello. (Es el “S” en SOLID.) Eso lo hace un tema más manejable a explicar y ayudarte con.

Seguir leyendo Principio de responsabilidad única y WordPress

Usando herencia con WordPress

Como programador WordPress, estás siempre buscando mejoras maneras de reusar tu código entre tus proyectos. Tu tiempo es importante y no deseas reinventar la rueda cada vez comienzas un nuevo proyecto.

La programación orientada a objetos puede ayudarte con eso. En un artículo pasado, te expliqué por qué deberías aprenderlo. Ahora es el tiempo de empujar las cosas aun más y mirar la característica principal para reusar tu código. Es probable que lo hayas escuchado antes. Se llama “herencia“.

Seguir leyendo Usando herencia con WordPress

La primera cosa que debería aprender de la programación orientada a objetos

Ésta es una traducción de un articulo inglés. Puedes encontrar el articulo original en inglés aquí.

Has decidido aprender la programación orientada a objetos, pero no sabes donde comenzar. La programación orientada a objetos tiene tantos conceptos y características. Toda la cosa puede sentirse abrumador a veces. Vamos a ayudarte a comenzar con el pie derecho.

¿Dónde está un buen lugar para comenzar? Es con la característica que asocias el más con la programación orientada a objetos. Se llama “encapsulamiento“. La mayoría de las lenguas de programación modernas apoya el encapsulamiento usando las clases.

Seguir leyendo La primera cosa que debería aprender de la programación orientada a objetos

Cómo solucionar problemas de rendimiento de WordPress

Di una charla a WordCamp Bogotá 2018 sobre las bases de la seguridad con WordPress. Éste es el articulo complementario que escribí por la. Si buscas solamente las diapositivas, haga clic aquí. Aquí está el articulo original en inglés.

¿Alguna vez se te ha acercado un cliente preguntandote por qué la página de WordPress era tan lenta al cargar? Todos hemos tenido que enfrentarlo en algún momento u otro. Especialmente hoy en día con el incremento de la importancia del tiempo que toma cargar una página. (¡Todo necesita estar muy muy rápido!)

¿Pero qué haces cuándo alguien te pregunta para arreglar tal problema? Es como encontrar una aguja en un pajar. El problema puede estar en cualquier lugar.

Entonces, ¿qué puedes hacer tu al respecto? Tienes suerte porque hay muchas herramientas a tu disposición. Pueden ayudarte a descubrir lo que está pasando con el rendimiento de tu sitio WordPress.

Eso dijo, es una cosa de saber que esas herramientas existen. Es otra de ser capaz de usarlos e interpretar lo que te están diciendo. El problema es que eso es lo que necesitas para llegar a la raíz de un problema de rendimiento de WordPress.

Seguir leyendo Cómo solucionar problemas de rendimiento de WordPress

Diseñando una clase alrededor de los hooks de WordPress

Ésta es una traducción de un articulo inglés. Puedes encontrar el articulo original en inglés aquí.

¿Conoces este hombre “Carl”? Siempre está hablando de la programación orientada a objetos. Incluso te convenció de tentar a aprender el sujeto.

Tentaste de aplicar parte de lo que enseña creando una clase. Comenzaste a escribir el código por eso. Y luego sucedió. Necesitaste usar un hook (o gancho) de WordPress.

¿Qué haces con ellos?

Seguir leyendo Diseñando una clase alrededor de los hooks de WordPress

La programación orientada a objetos es tu próximo paso como programador WordPress

Ésta es una traducción de un articulo inglés. Puedes encontrar el articulo original en inglés aquí.

Eres programador WordPress. Has creado algunos plugins y/o temas. Construyes sitios WordPress por tus clientes o solamente por ti. Has oído hablar de la programación orientada a objetos, pero, cada vez que lo miras, hace nadie sentido.

Tú te dices a ti mismo que la programación orientada a objetos no es útil ni valor la pena. El objetivo de este artículo es explicar este valor a ti. Al fin de este artículo, deberías tener una idea de porque deberías aprenderlo.

Seguir leyendo La programación orientada a objetos es tu próximo paso como programador WordPress

Mantén tu WordPress seguro

Di una charla a WordCamp San José 2017 sobre las bases de la seguridad con WordPress. Éste es el articulo complementario que escribí por la. Si buscas solamente las diapositivas, haga clic aquí. Aquí está el articulo original en inglés.

Seamos sinceros: ninguna persona quiere despertarse una mañana con su sitio WordPress hackeado, o peor, el sitio de tu cliente hackeado.

¿Que pasa cuando Google marca tu sitio como malware? ¿Que si la empresa de alojamiento web cierra tu cuenta? ¿O si tu cuenta de correo electronico termina en una lista negra? Cosas como estas pueden poner tu reputacion y tu empresa en peligro. Y encima de eso, ¡solo es si tu te das cuenta! Un hacker puede tomar el control de tu sitio sin que tú lo sepas.

La seguridad de web es un tema importante para todos los utilizadores de WordPress. Y eso un tema que puede devenir muy complicado si exploras profundamente. Sin embargo, las bases no son tan difíciles a comprender. Es porque el articulo se centrará en ésta.

Repasaremos conceptos básicos y algunas recomendaciones. Estas recomendaciones son buenas por los utilizadores de WordPress de todos los niveles. Si tú eres un utilizador de WordPress avanzado, es posible que no vayas a aprender tanto.

Seguir leyendo Mantén tu WordPress seguro

de Carl Alexander