¿WordPress se convertirá completamente en POO?

15

¿Hay alguna información acerca de que WordPress se vuelva completamente OOP en futuras versiones?

Eugene
fuente

Respuestas:

17

Puedo decir con aproximadamente un 99.9999% de certeza de que WordPress nunca se convertirá completamente en POO en futuras versiones, entre otras cosas, que el tema ha aparecido una y otra vez en la lista de wp-hackers y los miembros del equipo central no han expresado interés en haciéndolo.

Cuando miro mi experiencia personal con la programación y la enseñanza de OOP a partir de 1990, estoy de acuerdo con el equipo central y creo que sería un error completar la OOP. Aunque una vez fui fanático de OOP y pensé que OOP era una panacea, desde entonces he llegado a creer que tiene su valor en algunos contextos, pero en otros contextos se interpone en el camino.

Uno de los mayores problemas que he encontrado con OOP es que obliga al desarrollador a hornear la estructura mucho antes de que el desarrollador realmente comprenda cuál debería ser esa estructura, lo que luego conduce al frágil problema de la clase base .

Por supuesto, para aspectos seleccionados de WordPress, OOP tiene mucho sentido y si estudias core encontrarás tales clases; Widget, List_Tables (en 3.1) , etc.

En este punto, estoy feliz de trabajar con WordPress en un paradigma mayormente ajeno a OOP y creo que si hubiera sido OOP puro, WordPress nunca habría obtenido lo siguiente. ¿Por qué? Debido a que OOP habría elevado el nivel de complejidad para los aspirantes a desarrolladores de plugins y temáticos de WordPress, y probablemente habría resultado en una aplicación que no era lo suficientemente flexible como para evolucionar a medida que el equipo central aprendió más sobre las necesidades de sus usuarios en el pasado 6 años.

FWIW

MikeSchinkel
fuente
77
Pero tiene que estar de acuerdo, que si Wordpress fuera completamente OOP sería mucho más fácil entender cómo funciona todo allí. Para un desarrollador está ahorrando un camión de tiempo.
Eugene
2
@ Eugene: en realidad no estoy de acuerdo con eso en absoluto. Una vez solía creer que OOP era una mejor manera en todos los casos, pero ya no lo creo. Supongo que porque estás más en sintonía con OOP tienes dificultades para entender WordPress porque no es pura OOP. Pero como un caso puntual, recientemente intenté entender CodeIgnitor y me sentí abrumado por toda su complejidad OOP, mientras que WordPress es extremadamente fácil de entender. Por analogía puedo entender fácilmente el inglés; Francés, no tanto. Dicho de manera más simple, es lo que sabes.
MikeSchinkel 05 de
1
@ Eugene: No estoy de acuerdo, es más fácil entender un código OOP. Para alguien, que se está desarrollando en OOP, sí, pero para mí, por ejemplo, usar ANSI C clásico, no realmente.
petermolnar 05 de
1
Okei Entendido. OOP bab, estilo Wordpress bueno. :) @MikeSchinkel Sí. Utilizo ambas herramientas en mi línea de trabajo. Si los sugieres, lo intentaré una vez más. Gracias por ayudar a todos.
Eugene
2
Me alegro de oír eso. OOP no sería una ruta adecuada para WordPress.
Ciprian el
4

Muchos de los componentes de WP se reescriben en el código OOP con cada nueva versión, y los nuevos componentes tienden a utilizarlo (por ejemplo, la WP_Customizercosa). Pero si está preguntando si WP cambiará su arquitectura a una totalmente orientada a objetos, entonces no, actualmente no hay información que sugiera tal cosa.

No iría tan lejos para decir que nunca sucederá, pero es poco probable que ocurra en el futuro cercano, y probablemente no por el problema de la "clase base" :)

En primer lugar, solo hay desventajas en el uso de código de procedimiento sobre OOP para una aplicación CMS como WordPress, simplemente porque dichas aplicaciones están destinadas a extenderse a través de complementos. Agregar una combinación de funciones y variables globales no hace que esto sea más fácil. En el momento en que se escribió WP, nadie podría haber predicho en qué se convertiría WP y se tomaron muchas malas decisiones. Ahora es bastante difícil ponerse al día, porque la mayoría de los complementos y temas dejarían de funcionar correctamente. Implementar una gran capa de compatibilidad para evitar eso probablemente ralentizaría WP y agregaría aún más confusión entre los desarrolladores. También piense en el propósito: ¿facilitar la vida de los desarrolladores, a expensas de los usuarios?

Si ayuda, una discusión muy antigua sobre wp-hackers pero aún relevante para este tema, y ​​una idea propuesta por la comunidad, ahora etiquetada como "territorio de plugins". No he notado otra actividad en esta dirección recientemente.

Pony de un solo truco
fuente