Laravel un framework PHP excelente (Rompe las espectativas)

0
Sin votos
Hola comunidad, quisiera en este apartado darle a conocer de este super framework que estoy trabajando; puesto que es muy potente y ágil.
Este framework actualmente está siendo comparado con el famoso symfony, de echo, salió como mejor framework de php del año 2014 por sus facilidades y su ágil trabajo.

Entre las ventajas que posee se tienen:
  • Curva de aprendizaje muy rápida.
  • Rápido, incluso más que Codeigniter.
  • Adaptable y modificable: Es muy adaptable ya que puedes crear tus vistas tanto en html,  php como en su sistema de plantillas blade. Además todas las funcionalidades pueden ser accedidas desde cualquier sitio, desde controladores, vistas, modelos, rutas.
  • Seguro: Posee un método de encriptación muy potente para la autenticación de usuarios. Posee filtros de seguridad e incluso para ataques por post (csrf) al sitio.
  • No tienes que programar en los modelos. Muy importante, pues todo está echo en laravel, solo crear los modelos y listo.
Entre las desventajas que le veo(que no es como tal una pero bueno)
Capacidad: Debido a los vendors se hace un poco grande como tal el framework.

Por arribita
A continuación les hago referencia breve de como funciona el framework, luego desde el link de descarga de la comunidad usted puede acceder a otras referencias ilustradas por ejemplos, pero desde aca les daré lo más genérico puesto que en la documentación existente solo se trabaja sobre las rutas y puede confundir al lector.
De todos modos siempre puedes acceder a www.laravel.com que es el sitio oficial del framework y dan referencia de sus funciones y de el mismo como tal.

RUTAS
En la direccion /app/routes.php se encuentran las rutas desde las cuales se accederá en el sitio que se desarrolle.
Las rutas pueden ser tanto GET, POST, ANY entre otras.
  • Las rutas declaradas como get sería para cuando se quiere acceder desde la barra de dirección del navegador o por links directos desde la web.
  • Las rutas declaradas como post, seria solamente para cuando se hace una petición desde un formulario vía post.
  • Las rutas any son muy importantes puesto que puede coger tanto get como post, solamente debes especificar por qué metodos quieres rescatar los valores y entonces trabajar con ello.
Las rutas tienen varias formas de declararse.
  • FACADE: cuando declaras una ruta usando facades es muy sencillo pues puedes realizar una función en cuanto se haga llamada a la ruta.. Ejemplo: Route::get('/hola', function(){echo 'HOLA'}); ... Como puedes ver cuando se acceda a la ruta /hola se mostrará solamente un mensaje diciendo HOLA.
  • Controller: muy importante pues permites a la ruta hacer la función de un controlador cualquiera.. Ejemplo: Route::any('/hola', 'MyController@hola').. como ves solamente se ejecutar'a la funci'on hola del controlador MyController al llamar a la ruta /hola
  • Usando identificadores (routes), este método es usado cuando se quiere identificar una ruta con un nombre que desees para ser llamada después desde donde quieras.. Ejemplo: 
    Route::any('/hola', ['as'=>'h','uses'=>'MyController@hola']); ... Esta ruta define como nombre h a la ruta por lo que cuando vayas a llamar la ruta puedes hacerlo especificado por su alias es decir h.
  • Parámetros: Muy importante, cuando quieres pasar parámetros a un controlador o a una función desde una llamada por get o como sea entonces se declara la ruta de la siguiente manera. Route::get('/hola/{parametro}', 'MyController@hola2').. En este ejemplo cuando se pase cualquier cosa despues de /hola/ ejemplo /hola/mundo se ejecuta la funcion hola2 del controlador MyController que tiene por supuesto un parametro y haria lo que este dentro del mismo. Laravel entiende esto perfectamente.
Existen más formas de usar rutas, solo estoy poniendo las más importantes. Para más información viste siempre www.laravel.com

Configuración
Dentro de /app/config/ están los ficheros de configuración del laravel. Voy a explicar los más importantes brevemente para que puedas comenzar a usarlo fácilmente.
  • app.php:  Es el fichero de configuración de la aplicación laravel como tal, una de las más importantes. Dentro existen varios parámetros entre ellos:
  1. debug - Este casi siempre esta en false, pero para desarrollar se recomienda ponerlo en true para que puedas ver los errores a medidas que desarrollas.
  2. url - no es más que la url que el sistema usará para generar URLs u otras cosas usando comandos o la herramienta Artisan (Se recomienda poner solo la raiz es decir ejemplo http://localhost) o IP como desees.
Los demás parámetros los puedes dejar como están pues solo son correspondientes con los vendors que están instalados y desde ahi se reconocen a los mismos.
  • database.php: No es más que el fichero de configuración de la base de datos que usará laravel.
  1. default: Se pone el gestor de base de datos a usar. Por estándar esta mysql, pero puedes escoger el que vayas a usar.
  2. connections.. Aquí es donde especificas según el gestor que vas a usar los datos de la base de datos. Si escoges por ejemplo mysql como default verás que hay un índice que dice mysql => array(...), ahi dentro están los parámetros de la BD (nombre, host, pass, etc..)
Lo demás lo dejas tal como está.
  • mail.php: Este fichero contiene los datos para enviar correos electrónicos, en el paquete que se encuentra en el sitio a descargar verás que la configuración está echa a partir de datos q se encuentran en otro fichero de configuración.
  1. driver: es el driver que se usará para enviar los correos, normalmente smtp.
  2. host: El host smtp o servidor de salida.
  3. port: Puerto de salida de correo  normalmente se usa 25 pero se puede especificar cualquiera.
  4. from: Un arreglo que define en su primera posición la dirección de correo y en la segunda el nombre que le quieres dar al usuario que envía el correo.
  5. username y password: Son los datos para autenticar al servidor smtp en cuestión.
lo demás lo dejas tal como está.

miconfig.php: Este fichero que se encuentra en el paquete de descarga del sitio de la comunidad no es más que un fichero que cree para que fuera más dinámica la interacción entre los ficheros de configuración y el sistema.
Solamente lo haces si lo deseas para que sea más genérico pero no es necesario ni obligatorio hacerlo. solo es una opción que yo vi adecuada para trabajar con mis configuraciones fijas y no tener que ir fichero por fichero y configurar las cosas. (Ver este fichero y su relación con el fichero mail.php)

Controller
Los controladores no son más que clases que interactúan entre las vistas y los modelos de la aplicación aunque no es tán mecánico asi puesto que laravel es muy configurable, pero su función es esta como tal.
Es muy importante recarcar que siempre hereda de la clase BaseController para que todo pueda realizarse de forma satisfactoria y pueda ejecutar las funciones que el framework ofrece.
  • Para declarar un controlador, siempre se pone el nombre que le quieres poner la controlador seguido de la palabra Controller, ejemplo HolaController, esto es siempre así para que el framework pueda trabajar correctamente con el mismo.
  • Las funciones puedes declararse de cualquier modo, una de las ventajas que da el framework, que no tiene que tener ningun patrón para poder ejecutar las funciones.
Models
Los modelos no son más que clases que interactúan con tablas de las base de datos. En laravel solo con crear el modelo ya tienes, solo debes por cuestión de limpieza y que todo te funcione bien que poner el nombre del modelo como mismo es la tabla en la base de datos(no es obligatorio) pero en singular, por ejemplo si tienes una tabla libros, entonces creas un modelo que se llame libro.
  • Lo unico que debes tener en cuenta en los modelos es que debes poner la línea protected $table = 'libros'; que es la que hace referencia a la tabla de la Base de datos como tal.
  • Lo otro mñas importante es que para trabajar con autenticación de laravel y todo te funcione perfectamente, debes tener una tabla en la base de datos que sea users y usando el modelo User que viene por defecto con el framework todo te saldrá perfecto.
Views
Es donde se encuentran las vistas. Laravel como tal puede gestionar sus vistas tanto en php como en su sistema de plantillas blade. Muy bueno puesto que puedes usar cualquier alternativa para tu comodidad.

Hablando de Código
En otro apartado hablaré sobre el código. Esperen y les informo.

Úsalo y verás esta potente alternativa libre.

Recuerda para más información acerca del mismo visite www.laravel.com

Y vaya a http://www.cav.jovenclub.cu/comunidad/node/563 para descargar el framework completo con vendors y todo.

y a http://www.cav.jovenclub.cu/comunidad/node/564 y http://www.cav.jovenclub.cu/comunidad/node/565 para ver otras documentaciones acerca del mismo.

Saludos
Atentamente.. Eugenio Noda Castillo


 
Categoría: 
Bibliografía del minitutorial: 
Personal

Comentarios

Imagen de Eidel E. Miranda del sol
Enviado por Eidel E. Mirand... el Jue, 08/13/2015 - 12:21

Estas documentaciones del framework estan muy buenas, al igual que tus comentarios pero lo que mas me ayudo para empezar a programar con codeigniter es tener una aplicacion disenada minima para irla probando y mejorando te recomiendo hacer algo asi y ponerlo en el sitio con su script de base de datos, ademas seria bueno trabajar con el bootstrap el tema del diseño, los de la comunidad podemos ir comentando los cambios que le hacemos y aportando a la mejora de ese codigo, para que sea algo social puede ser por ejemplo un sitio sobre software libre pero ponerle grid, reportes, consultas, etc, no se si me entiendes. sds y gracias de antemano.