WordPress para el desarrollo de aplicaciones web una introducción

Ahora más que nunca, los desarrolladores y diseñadores están empezando a ver el potencial para usar WordPress como una forma de crear aplicaciones web..

Con eso quiero decir que la comunidad está comenzando a ver que WordPress se puede usar para más que los blogs y más que la administración de contenido: en su lugar, se puede usar para impulsar aplicaciones respaldadas por bases de datos que se ejecutan dentro del contexto del navegador web..

¿Y por qué no, verdad? Cuando das un paso atrás y miras todas las cosas que ofrece WordPress, tienes un caso bastante sólido de lo poderoso que es realmente WordPress.

Por ejemplo, WordPress se envía con:

  • Una base de datos con un esquema de datos flexible.
  • Una capa de aplicación central con numerosos ganchos de los que podemos aprovechar
  • La capacidad de manejar las tareas del lado del cliente, del lado del servidor, del usuario y del administrador.

De hecho, Matt Mullenweg ha sido citado diciendo:

Cuando lo piensas, estamos construyendo un sistema operativo web..

Pero eso no significa que WordPress sea el adecuado para todo. Después de todo, ¿cuántos marcos, bases, bibliotecas, herramientas, etc. tenemos para ayudarnos a crear aplicaciones web??

En esta serie, analizaremos exactamente lo que ofrece WordPress en relación con la creación de aplicaciones web, la diferencia en un marco de aplicación y una base, las características que se prestan para crear aplicaciones de pila completa con WordPress, como así como WordPress es no Una bala de plata para escribir software para la web..


De Marcos y Fundaciones

Uno de los nombres más inapropiados que escucho aplicado a WordPress es cómo es un marco de referencia para aplicaciones web. Por la definición misma de "marco" y por la definición misma de lo que es WordPress, no es un marco, es una base.

¿Qué es un marco?

Como lo define Wikipedia, un marco de software es el siguiente:

En la programación de computadoras, un marco de software es una abstracción en la que el software que proporciona una funcionalidad genérica se puede cambiar de manera selectiva mediante un código adicional escrito por el usuario, lo que proporciona un software específico de la aplicación. Un marco de software es una plataforma de software universal y reutilizable para desarrollar aplicaciones, productos y soluciones. Los marcos de software incluyen programas de soporte, compiladores, bibliotecas de código, conjuntos de herramientas e interfaces de programación de aplicaciones (API) que reúnen a todos los diferentes componentes para permitir el desarrollo de un proyecto o solución..

En pocas palabras, un marco consiste en un conjunto de convenciones, tales como dónde Los archivos deben ir, así como las bibliotecas y las herramientas, como una capa de abstracción de la base de datos, que nos permiten comenzar a trabajar fácilmente en una aplicación..

Con un marco, puede centrarse en un dominio de problema específico que es único para la solución que está intentando crear. Por ejemplo, digamos que va a crear algún tipo simple de software de cuenta que sea responsable de rastrear depósitos, retiros y realizar un seguimiento de los fondos disponibles (o no tan disponibles).

En este escenario, tendrá una base de datos que es única para este problema, una capa de abstracción de la base de datos que le facilita la lectura y escritura de datos en el esquema definido y un conjunto de convenciones para la organización del código de presentación (es decir, , lo que es responsable de mostrar los datos al usuario y con los que el usuario interactúa), y de la organización del código de la aplicación que se encuentra entre el código de presentación y el código de la base de datos que encapsula cualquier lógica empresarial exclusiva del problema.

Usted ve, un marco proporciona los medios por los cuales una aplicación puede construirse desde cero. Ayuda a facilitar la creación de una aplicación desde el esquema de la base de datos hasta el extremo frontal..

Entonces, ¿qué es una fundación??

La verdad es que suena muy parecido a lo que ofrece WordPress, ¿no es así??

Pero la cuestión es que WordPress proporciona una base de datos predefinida, un conjunto predefinido de código de aplicación (y, por lo tanto, API), así como formas de representar datos utilizando archivos de plantilla..

En pocas palabras, WordPress es una aplicación que proporciona un conjunto de API y convenciones que podemos usar para construir aplicaciones sobre. Ya proporciona un esquema, lógica de datos centrales, lógica de negocios y estrategias de presentación listas para usar..

Mientras que un marco te permite construir una aplicación, una base te permite extender una aplicación.

Y eso es lo que terminamos haciendo con WordPress: aprovechamos la base de datos predefinida, las API disponibles y el sistema de plantillas para mostrar datos para crear soluciones utilizando una aplicación que ya está definida.

En resumen, el software puede construirse sobre marcos, el software puede extender las bases.

Un poco confundido?

Como lo hicimos en la sección anterior, analizamos cómo desarrollaría un software de contabilidad muy simple. Recuerde que se requiere que definamos un esquema de base de datos, escribamos código para leer y escribir en la base de datos, escribamos código para manejar la lógica de negocios, construyamos plantillas para representar datos e interactuando con el usuario, y luego colocamos los archivos donde sea necesario. Encajan con las convenciones del marco..

Con WordPress, es completamente posible usar el sistema de base de datos existente para manejar todo esto. Puede usar las API para sanear y validar datos, puede usar plantillas para representar la información y puede usar enlaces para implementar una funcionalidad personalizada para interactuar con el usuario.


Entonces cual es la diferencia?

Así que sí, aunque el mismo tipo de software se puede construir sobre un marco o una base, existen diferencias entre los marcos y las bases, y creo que es muy importante comprender la diferencia entre ambos antes de profundizar en la serie..

En pocas palabras, los marcos no son aplicaciones, las fundaciones son aplicaciones..

El hecho de que una aplicación web se pueda construir utilizando WordPress no lo convierte en un marco. Es una fundación. Es una aplicación en sí misma que puede extenderse a otras aplicaciones.

Cosas como Rails, Laravel, CakePHP, Zend y CodeIgnitor son frameworks porque cuando los descargas, instalas y configuras, en realidad no pueden hacer Nada hasta que les des suficiente código para hacerlo..

Las fundaciones no son así. Ya pueden hacer cosas, ya sea que hayas escrito o no una línea de código..


¿Qué pasa después??

Como se mencionó, a lo largo de esta serie, vamos a echar un vistazo a la base que proporciona WordPress para escribir aplicaciones web..

Claro que hay es No hay bala de plata cuando se trata de escribir una aplicación web. El propósito de la serie no es convencer a nadie de por qué WordPress debe usarse sobre cualquier otro marco o base. En cambio, el propósito es simplemente mostrar lo que puede hacer con WordPress y por qué mayo Sea una alternativa viable para su próximo proyecto..

Aunque no habrá mucho material técnico, como el código, habrá será Hay muchos ejemplos de las API que WordPress tiene disponibles, cómo se pueden usar y para qué se pueden usar cuando se trata de escribir una aplicación..

A partir del próximo artículo, veremos qué significa cambiar nuestro modelo conceptual de pensamiento sobre la creación de aplicaciones web desde patrones y marcos a algo como WordPress.