CakePHP es un marco web de código abierto . Sigue el enfoque modelo-vista-controlador (MVC) y está escrito en PHP , modelado a partir de los conceptos de Ruby on Rails y distribuido bajo la licencia MIT . [3]
Desarrollador (es) | Cake Software Foundation, Inc. |
---|---|
Versión inicial | Abril de 2005 |
Lanzamiento estable | 4.2.2 [1] / 2021-01-06 [±] |
Versión de vista previa | 4.2.0-beta1 / 1 de noviembre de 2020 [2] |
Repositorio | |
Escrito en | PHP |
Sistema operativo | Multiplataforma |
Plataforma | PHP 5.6.0+ |
Disponible en | Plurilingüe |
Tipo | Marco web |
Licencia | Licencia MIT |
Sitio web | cakephp |
CakePHP utiliza conceptos de ingeniería de software y patrones de diseño de software bien conocidos , como convención sobre configuración , modelo-vista-controlador , registro activo , mapeo de datos de asociación y controlador frontal .
Historia
CakePHP comenzó en abril de 2005, cuando un programador polaco Michal Tatarynowicz [4] escribió una versión mínima de un marco de desarrollo rápido de aplicaciones en PHP , denominándolo Cake. [5] [6] [7] Publicó el marco bajo la licencia MIT y lo abrió a la comunidad en línea de desarrolladores. [ cita requerida ]
En diciembre de 2005, L. Masters y GJ Woodworth fundaron Cake Software Foundation para promover el desarrollo relacionado con CakePHP. [7] La versión 1.0 se publicó en mayo de 2006.
Una de las inspiraciones del proyecto fue Ruby on Rails , utilizando muchos de sus conceptos. Desde entonces, la comunidad ha crecido y ha generado varios subproyectos. [8] [9]
En octubre de 2009, el director de proyecto Woodworth y el desarrollador N. Abele dimitieron del proyecto para centrarse en sus propios proyectos, incluido el marco web Lithium (anteriormente parte del proyecto CakePHP). El equipo de desarrollo restante continuó concentrándose en la hoja de ruta original que se definió previamente. [10]
Características
Los complementos permiten a los desarrolladores empaquetar combinaciones de controladores, modelos, vistas y otras clases para su reutilización en múltiples aplicaciones y por otros desarrolladores. Desde CakePHP 3, ha sido posible instalar complementos usando Composer . [11]
CakePHP ORM ( mapeo relacional de objetos ) es un híbrido PHP avanzado del patrón de registro activo y el patrón de mapeador de datos , que toma prestados conceptos básicos de ambos. CakePHP ORM utiliza dos tipos de objetos principales, la clase de tabla que representa las tablas de la base de datos y las clases de entidad que representan filas de tablas individuales . [12] [13]
El generador de consultas se introdujo en CakePHP 3 como complemento del nuevo ORM. El generador de consultas proporciona un conjunto de clases y métodos para generar consultas SQL mediante programación en lugar de escribirlas a mano. El ORM hace un uso extensivo del generador de consultas. [13] [14]
Enrutamiento y enrutamiento inverso . El enrutador CakePHP permite el enrutamiento de aplicaciones HTTP complejo , enrutando las solicitudes entrantes al controlador y la acción correctos. El enrutamiento inverso crea una relación entre rutas y enlaces, lo que garantiza que los enlaces siempre se generen con el localizador de recursos uniforme correcto .
Las celdas de visualización proporcionan pequeños minicontroladores que pueden invocar la lógica de visualización y las plantillas de representación. Son ideales para crear componentes de página pequeños y reutilizables.
Las migraciones proporcionan control de versiones para los esquemas de bases de datos . Esto permite garantizar que los cambios en la lógica de la aplicación y los cambios correspondientes en la base de datos se mantengan sincronizados. Esto simplifica enormemente la implementación de la aplicación CakePHP, pero también el desarrollo en equipos de múltiples desarrolladores. La herramienta de migración CakePHP se basa en el proyecto Phinx.
Paginación automática para facilitar a los desarrolladores la paginación de conjuntos de resultados generados por ORM o Query Builder.
El constructor y validador de formularios permite la generación programática de formularios que están vinculados a la capa del modelo tanto para los tipos de datos como para la validación. [15]
CakePHP Bake es una herramienta para generar automáticamente esqueletos de aplicaciones y código repetitivo . Utiliza un esquema de base de datos preexistente para inferir las relaciones de datos y los tipos de datos correctos y usarlo para generar un conjunto completo de controladores, objeto modelo y plantillas de vista. Puede generar una aplicación CRUD básica con codificación cero. [dieciséis]
Conferencias
Año | Localización |
---|---|
2019 | Tokio, Japón |
2017 | Nueva York, NY, EE. UU. |
2016 | Amsterdam, Holanda |
2015 | Nueva York, NY, EE. UU. |
2014 | Madrid, España |
2013 | San Francisco, CA, EE. UU. |
2012 | Manchester, Reino Unido |
2011 | Manchester, Reino Unido |
2010 | Chicago, IL, EE. UU. |
2009 | Berlín, Alemania |
2008 | Buenos Aires, Argentina |
2008 | Orlando, Florida, Estados Unidos |
Capacitación
Cursos oficiales de formación online patrocinados por CakeDC. Capacitación mensual en vivo que cubre una variedad de temas que incluyen:
- Curso de formación estándar CakePHP 2
- Curso de formación estándar CakePHP 3
- Curso de formación avanzado CakePHP 3
- Curso de formación estándar CakePHP 4
Ver también
- Comparación de frameworks web
Referencias
- ^ "CakePHP 4.2.2 lanzado" . Blog de CakePHP . Consultado el 7 de enero de 2021 .
- ^ "CakePHP 4.2.0-beta1 lanzado" . Blog de CakePHP . 1 de noviembre de 2020 . Consultado el 5 de noviembre de 2020 .
- ^ "Manual de CakePHP - CakePHP de un vistazo" . Consultado el 9 de marzo de 2015 .
- ^ "Colaboradores - cakephp" . cakephp.lighthouseapp.com .
- ^ "Introducción a CakePHP - 1.1" . book.cakephp.org .
- ^ "Copia archivada" . Archivado desde el original el 3 de marzo de 2016 . Consultado el 31 de agosto de 2012 .CS1 maint: copia archivada como título ( enlace )
- ^ a b "Listado" (PDF) . www.cs.colorado.edu . Consultado el 1 de julio de 2019 .
- ^ "CakeForge" . Archivado desde el original el 8 de septiembre de 2009 . Consultado el 5 de septiembre de 2009 .
- ^ "TheChaw" . Consultado el 5 de septiembre de 2009 .
- ^ "El pastel sigue subiendo" . Archivado desde el original el 10 de octubre de 2010 . Consultado el 25 de octubre de 2009 .
- ^ "Complementos" . Consultado el 13 de marzo de 2020 .
- ^ "ORM" . Consultado el 13 de marzo de 2020 .
- ^ a b "Mi revisión de CakePHP 3 - Todavía fresco, todavía caliente" . Consultado el 13 de marzo de 2020 .
- ^ "Creador de consultas" . Consultado el 13 de marzo de 2020 .
- ^ "Ayudante de formulario" . Consultado el 13 de marzo de 2020 .
- ^ "CakePHP 3: hornear con el ejemplo" . Consultado el 13 de marzo de 2020 .
Bibliografía
- Munro, Jamie (9 de abril de 2011). "Desarrollo rápido de aplicaciones con CakePHP" (1ª ed.). Createspace : 170. ISBN 1-4609-5439-4. Archivado desde el original el 14 de julio de 2017 . Consultado el 20 de mayo de 2011 . Cite journal requiere
|journal=
( ayuda ) - Golding, David (21 de julio de 2008). "Principiante CakePHP: de principiante a profesional" (1ª ed.). Prensa : 344. ISBN 1-4302-0977-1. Archivado desde el original el 12 de enero de 2011 . Consultado el 12 de junio de 2009 . Cite journal requiere
|journal=
( ayuda ) - Chan, Kai; Omokore, John; Miller, Richard (2 de diciembre de 2008). "Proyectos prácticos de CakePHP" (1ª ed.). Prensa : 400. ISBN 1-4302-1578-X. Archivado desde el original el 23 de diciembre de 2010 . Consultado el 12 de junio de 2009 . Cite journal requiere
|journal=
( ayuda ) - Watts, James; González, Jorge (5 de agosto de 2014). "Libro de cocina de la aplicación CakePHP 2" (1ª ed.). packtpub : 346. ISBN 9781782160083. Consultado el 5 de agosto de 2014 . Cite journal requiere
|journal=
( ayuda )
enlaces externos
- Página web oficial
- CakePHP en GitHub
- Libro de cocina de la aplicación CakePHP 2