Ticker

6/recent/ticker-posts

Revisando las nuevas características y estructura base del proyecto en CodeIgniter 4

Es importante estar familiarizado y conocer los cambios que nos ofrece los Frameworks en sus nuevas versiones, en este tutorial teorico-practicos nos enfocaremos en revisar las nuevas características y estructura base del proyecto que nos ofrece el Framework CodeIgniter en su versión 4.


Lo que veremos:

  1. Principales nuevas características de CodeIgniter 4.
  2. Estructura base del proyecto de CodeIgniter 4.
  3. Los directorios public, writable y tests de CodeIgniter 4.
  4. Ejemplos, aplicando CodeIgniter 4.
  5. Conclusiones y referencias.

 Principales nuevas características de CodeIgniter 4

El Framework CodeIgniter en su versión 4 nos ofrece las siguientes principales nuevas características:

  1. CodeIgniter 4 incluye compatibilidad y capacidades con PHP 7.2.
  2. Compatibilidad para la programación en línea de comandos.
  3. Compatibilidad con base de datos MySQL (5.1+), PostgreSQL y SqLite3.
  4. Incluye la carpeta pública que sirve como raíz de documentos para la aplicación.
  5. Incluye su propio servidor PHP Spark serve para ejecutar con CodeIgniter 4.
  6. Incluye nuevos directorios base como public, writable y tests.

Para las solicitudes CURL en la versión 4 de Framework CodeIgniter es necesario instalar la biblioteca LIB CURL.


 Estructura base del proyecto de CodeIgniter 4.


La estructurada de proyecto de CodeIgniter 4 al realizar la instalación nos proporciona cinco directorios, de las cuales, cada uno de ellos cumple una función especifica:

app
public
writable
tests
vendor or system

Directorio app: 

Es donde se encuentra todo el código de la aplicación, es decir, contiene los directorios y la estructura predeterminada par a la ejcución de la aplicaciones, y esta compuesto por los siguientes directorios:

app/
    Config/         Stores the configuration files
    Controllers/  Controllers determine the program flow
    Database/      Stores the database migrations and seeds files
    Filters/          Stores filter classes that can run before and after controller
    Helpers/        Helpers store collections of standalone functions
    Language/    Multiple language support reads the language strings from here
    Libraries/     Useful classes that don't fit in another category
    Models/        Models work with the database to represent the business entities
    ThirdParty/  ThirdParty libraries that can be used in application
    Views/         Views make up the HTML that is displayed to the client


Directorio vendor or system:

Es donde se almacena los archivos con relación al Framework de CodeIgniter 4. Se recomienda que los archivos del directorio del sistema nunca deben ser modificaros, sin embargo, se debe ampliar las clases o crear nuevas clases para brindar la nuevas funcionalidad al Framework.

Recordemos que el directorio vendor normalmente es creado cuando la instalación o creación del proyecto se realiaza usando composer.


Los directorios public, writable y tests serán detallados en el punto 3, teniendo en cuenta, sus particularidades de uso, sin embargo, en este punto es importante mencionar acerca del achivo env.

El achivo env esta conformado por una colección de variables que se podría usar en proyecto web asignado valores vacíos, ficticios o predeterminados, es decir, se puede usar como un archivo de configuración incial para la aplicación, es necesario renombrando a .env t debe estar ubica en la raíz del proyecto- sugiero revisa el punto 2 del tutorial Configuración de parámetros base para un proyecto web en CodeIgniter 4.

Además, es importante detallaremos los principales archivos a tener en encuenta para inciar con el desarrollo de aplicación web básica (por ejemplo el Hello world), que normalmente son los archivos BaseController.php y Home.php, welcome_message.php y Routes.php

El controlador BaseController es el componente base que hace referencia a los demás componentes precargados con las funcionalidades que nos ofrece el Framework, es decir, todos los nuevos controladores deben extenderse a componente base BaseController para aprovechar todas la funcionalidades y bondades del Framework.

El controlador Home se encargará de manejar la solicitud entrante, procesar la lógica de nuestra aplicación y enviar la respuesta al cliente, es decir, actuará como intermediario entre la vistas (la interfaz de usuario) y el modelo (la capa de datos).


Recordemos que CodeIgniter está orientado bajo una arquitectura MVC (Modelo-Vista-Controlador).


La vista welcome_message es la vista por defecto que nos ofrece el Framework al realizar la instalación, es la página de bienvenida (Welcome to CodeIgniter 4.5.5) donde encontrarás información relevante acerca de la ubicación de la vista, el controlador  al que pertenece la vista; asimismo, encontrarás otros recuros como links hacia la documentación, comunidad, contribución y otros.



 Los directorios public, writable y tests de CodeIgniter 4.


Los directorios public, writable y tests son directorios que se agregaron al Framework CodeIgniter versión 4, y es importante mencionar la función que cumple cada una de ellas:

Directorio public:

El directorio public está destinada a ser la "raíz web" del sitio web a desarrollar, es decir, contiene la parte de la aplicación web a la que se puede acceder desde el navegador, esto hace que impide el acceso directo al código fuente de nuestra aplicación.

El directorio public normalmente contiene el archivo principal .htaccess , index.php , y cualquier otro archivo o recurso de la aplicación como CSS, javascript o imágenes.

Asimismo, al realizar el despliegue de nuestra aplicación el servidor web estará configurado en primer instancia para apuntar al directorio public. 

Directorio writable

El directorio writable contiene todos los directorios que se pueda necesitar para escribir durante el ciclo de vida de una aplicación web, es decir, incluye directorios para almacenar archivos de caché, registros y cualquier carga que un usuario pueda enviar.

Normalmente, el directorio writable permite mantener los demás directorios principales sin permisos de escritura como medida de seguridad a la aplicación web.

Directorio test

El directorio test está configurado para almacenar los archivos de prueba. El directorio _support contiene varias clases de test y otras utilidades que puede usar mientras se realiza pruebas; vale precisar, que el directorio _support no es necesario transferir al servidor web de producción.


Ejemplos, aplicando CodeIgniter 4.

Se recomenda revisar los siguiente ejemplos para familiarizarse con el Framework CodeIgniter versión 4:



Conclusiones y referencias.

Concluciones:

En este tutorial detallamos algunos nuesvas carácteristica que nos ofrece CodeIgniter 4, asimismo, revisamos los principales directorios con relación a la estructura base del proyecto, y detallamos los principales achivos a considerar para inciar un desarrollo básico de un sitio web, por ejemplo hello wolrd. 

Referencias:

¡Piensa, innova y transforma...!

Publicar un comentario

0 Comentarios