Artigos

Que é Laravel, como funciona e arquitectura básica para crear aplicacións WEB

Laravel é un marco web baseado en PHP para construír aplicacións web de gama alta, utilizando as súas sintaxes sinxelas pero poderosas.

O framework Laravel PHP inclúe unha sólida colección de ferramentas e proporciona a arquitectura ás aplicacións producidas. É un framework PHP de código aberto, que utiliza a arquitectura MVC:

  • Cadro: é a colección de métodos, clases ou ficheiros que utiliza o programador, e tamén pode ampliar a súa funcionalidade mediante o seu propio código.
  • Arquitectura: é o patrón de deseño específico que segue o marco. Laravel segue a arquitectura MVC.

mvc

Acrónimo composto por tres letras, o significado é o seguinte:

  • M: Modelo. Un modelo é unha clase que se ocupa dunha base de datos. Por exemplo, se temos usuarios nunha aplicación, teremos un modelo de usuarios que se encarga de consultar a táboa de usuarios, se temos un modelo de usuarios tamén teremos unha táboa de usuarios.
  • V: Vista. Unha vista é unha clase que se encarga de todo o que podemos ver sobre a aplicación no navegador.
  • C: Controladores. Un controlador é o intermediario que se encarga tanto do modelo como da vista. Un controlador é a clase que obtén os datos do modelo e os envía á clase de vista.

Beneficios e características

Creación de sistemas de autorización e autenticación

Cada propietario de aplicacións web debe asegurarse de que os usuarios non autorizados non accedan aos recursos protexidos. Laravel ofrece un xeito sinxelo de implementar a autenticación. Tamén ofrece un xeito sinxelo de organizar a lóxica de autorización e controlar o acceso aos recursos.

Integración con ferramentas

Laravel está integrado con moitas ferramentas que crean unha aplicación máis rápida. Non só é necesario crear a aplicación, senón tamén crear unha aplicación máis rápida. A integración co backend de almacenamento na caché é un dos pasos principais para mellorar o rendemento dunha aplicación web. Laravel está integrado con algúns backends populares de almacenamento en caché como Redis e Memcached.

Integración do servizo de correo

Laravel está integrado co servizo de correo. Este servizo úsase para enviar correos electrónicos de notificación. Ofrece unha API limpa e sinxela que che permite enviar correo electrónico rapidamente a través dun servizo local ou baseado na nube.

Automatización de probas

Probar un produto é moi importante para asegurarse de que o software funciona sen erros, erros e fallos, sempre que se publique unha nova versión. Sabemos que as probas automatizadas tardan menos que as manuais, especialmente para as probas sen regresión. Laravel foi desenvolvido pensando tamén en probas.

Separación do código de lóxica empresarial do código de presentación

A separación do código de lóxica empresarial e do código de presentación permite aos deseñadores de maquetación HTML cambiar a aparencia sen interactuar cos desenvolvedores. Os desenvolvedores poden solucionar un erro máis rápido se se proporciona a separación entre o código de lóxica empresarial (Controlador) e o código de presentación (Ver). Sabemos que Laravel segue a arquitectura MVC, polo que a separación é fundamental.

Corrección das vulnerabilidades técnicas máis habituais

Laravel é un marco seguro xa que protexe a aplicación web de todas as vulnerabilidades de seguridade. A vulnerabilidade é un dos aspectos máis importantes no desenvolvemento de aplicacións web. A organización estadounidense Fundación OWASP, defielimina as principais vulnerabilidades de seguridade como a inxección de SQL, a falsificación de solicitudes, a creación de scripts, etc.

CRON: planificación de actividades de configuración e xestión

As aplicacións WEB sempre requiren mecanismos de programación de tarefas para programar e executar tarefas a tempo. Por exemplo, cando enviar correos electrónicos aos subscritores ou cando limpar as táboas da base de datos ao final do día. Para programar tarefas, os desenvolvedores deben crear a entrada Cron para cada tarefa e o programador de comandos Laravel defiremata a planificación do comando.

Creación do proxecto Laravel

Para crear o teu primeiro proxecto Laravel, necesitas ter o Composer instalado. Se non está presente na súa máquina, proceda a instalalo como se describe no noso artigo sobre compositor.

Despois diso, crea un novo directorio no teu sistema para o teu novo proxecto Laravel. A continuación, navegue ata o camiño onde creou o novo directorio e execute o comando crear proxecto composer create-projectescribindo o seguinte comando:

composer create-project laravel/laravel myex-app

Este comando (versión 9.x) crea o proxecto chamado myex-app

Ou podes crear novos proxectos Laravel instalando globalmente o instalador de Laravel medios Composer:

Boletín de innovación
Non te perdas as novidades máis importantes sobre innovación. Rexístrese para recibilos por correo electrónico.
composer global require laravel/installer
laravel new myex-app

Despois de crear o proxecto, inicie o servidor de desenvolvemento Laravel local usando o comando serve Dell 'Artisan CLI de Laravel:

php artisan serve

Despois de iniciar o servidor de desenvolvemento Artisan, poderás acceder á túa aplicación no teu navegador web en http://localhost:8000. Agora xa estás listo para usar Laravel. Por suposto, tamén pode querer configurar unha base de datos.

Estrutura da aplicación en Laravel

A estrutura de Laravel é basicamente a estrutura de cartafoles, subcartafoles e ficheiros incluídos nun proxecto. Unha vez que se crea un proxecto en Laravel, podemos ver a estrutura da aplicación como se mostra na imaxe do cartafol raíz de Laravel:

Config

O cartafol de configuración inclúe configuracións e parámetros asociados, que son necesarios para que unha aplicación Laravel funcione correctamente. Os diferentes ficheiros incluídos no cartafol de configuración están listados na seguinte imaxe. Os nomes dos ficheiros representan ámbitos de configuración.

Database

Este directorio inclúe varios parámetros para a funcionalidade da base de datos. Inclúe tres subdirectorios:

  • Sementes: contén as clases utilizadas para a base de datos de probas unitarias;
  • Migracións: este cartafol úsase para a xeración e alineación da estrutura da base de datos coa aplicación;
  • Fábricas: este cartafol úsase para xerar un gran número de rexistros de datos.
público

É o cartafol raíz que axuda a inicializar a aplicación Laravel, é dicir, o inicio da aplicación. Inclúe os seguintes ficheiros e cartafoles:

  • .htaccess: ficheiro que proporciona a configuración do servidor;
  • javascript e css: conteñen todos os ficheiros de recursos da aplicación Laravel;
  • index.php: ficheiro necesario para inicializar unha aplicación web.
recursos

O directorio de Recursos contén ficheiros que melloran a aplicación web. Os subcartafoles incluídos neste directorio e a súa finalidade:

  • activos: o cartafol inclúe ficheiros como LESS e SCSS, que son necesarios para o estilo da aplicación web;
  • lang: inclúe a configuración para a localización ou a internalización;
  • vistas: son os ficheiros HTML ou modelos que interactúan cos usuarios finais e desempeñan un papel primordial na arquitectura MVC.
almacenamento

Este é o cartafol que almacena todos os rexistros e ficheiros que son necesarios cando se está a executar un proxecto Laravel. Abaixo amósanse os subcartafoles incluídos neste directorio e a súa finalidade −

  • app: este cartafol contén os ficheiros que se chaman en sucesión;
  • framework: contén sesións, cachés e vistas que se chaman con frecuencia;
  • Rexistros: contén ficheiros que rastrexan problemas de tempo de execución, especialmente todos os rexistros de erros e excepcións.
Probas

Todos os casos de proba unitaria están contidos neste directorio. A denominación para as clases de casos de proba é camel_case e segue a convención de nomenclatura baseada na funcionalidade da clase.

Vendedor

Laravel baséase en dependencias xestionadas compositor, por exemplo para instalar a configuración de Laravel ou para incluír bibliotecas de terceiros, etc.

O cartafol Vendor contén todas as dependencias de compositor.

Ercole Palmeri

Boletín de innovación
Non te perdas as novidades máis importantes sobre innovación. Rexístrese para recibilos por correo electrónico.

Artigos recentes

Editores e OpenAI asinan acordos para regular o fluxo de información procesada pola Intelixencia Artificial

O pasado luns, o Financial Times anunciou un acordo con OpenAI. FT licencia o seu xornalismo de clase mundial...

Abril 30 2024

Pagos en liña: aquí tes como os servizos de streaming che fan pagar para sempre

Millóns de persoas pagan por servizos de streaming, pagando taxas de subscrición mensuais. É unha opinión común que vostede...

Abril 29 2024

Veeam ofrece o soporte máis completo para ransomware, desde a protección ata a resposta e a recuperación

Coveware by Veeam continuará ofrecendo servizos de resposta a incidentes de extorsión cibernética. Coveware ofrecerá capacidades forenses e de remediación...

Abril 23 2024

Revolución verde e dixital: como o mantemento preditivo está a transformar a industria do petróleo e do gas

O mantemento preditivo está a revolucionar o sector do petróleo e do gas, cun enfoque innovador e proactivo para a xestión das plantas...

Abril 22 2024