Sei sulla pagina 1di 11

FACULTAD DE INGENIERÍA

ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS

TEMA : DESARROLLO WEB ENTORNO A SERVIDOR

ASIGNATURA : TECNOLOGÍA WEBII

DOCENTE TUTOR : MG. EDGARD VILCARINO ZELADA

CICLO : VI

INTEGRANTES :

 IDROGO CAVERO ARTURO PAÚL

PIURA – PERÚ
2017
Contenido
INTRODUCCION ........................................................................................................................................................3
¿QUE ES UN FRAMEWORK? .....................................................................................................................................3
MVC (MODELO-VISTA-CONTROLADOR) ...................................................................................................................4
JUSTIFICACION ..........................................................................................................................................................5
CARACTERÍSTICAS .....................................................................................................................................................6
¿CUÁNDO UTILIZARLO? ............................................................................................................................................6
REQUISITOS DEL SERVIDOR ......................................................................................................................................6
VENTAJAS..................................................................................................................................................................7
DESVENTAJAS ...........................................................................................................................................................8
MERCADO DE COMPETENCIA ...................................................................................................................................8
OTRAS HERRAMIENTAS AUTOMATIZADAS ..............................................................................................................9
CONCLUSIÓN ..........................................................................................................................................................10
REFERENCIA DOCUMENTAL ...................................................................................................................................11

2
INTRODUCCION
Laravel es un framework joven con un gran futuro. Cuenta con una comunidad llena de energía,
documentación atractiva de contenido claro y completo, además, ofrece las funcionalidades
necesarias para desarrollar aplicaciones modernas de manera fácil y segura.

En el 2011 su creador, Taylor Otwell, lo mostró por primera vez al mundo. Por lo tanto, se trata
de un framework con un enfoque fresco y moderno ya que es bastante joven. Está hecho
para arquitectura MVC y resuelve necesidades actuales como manejo de eventos y
autenticación de usuarios. Además, cuenta con un código modular y extensible por medio de
un administrador de paquetes y un soporte robusto para manejo de bases de datos.

No importa si eres un experto en PHP o si son tus primeros pasos, cuando lo conozcas, sabrás
que Laravel es el framework que estabas buscando para tus proyectos PHP.

Figura 1: Laravel

La filosofía de Laravel es la creación de aplicaciones web con una sintaxis expresiva


y elegante, además se enfoca en hacer el proceso de desarrollo agradable para el
desarrollador sin sacrificar funcionalidad.

¿QUE ES UN FRAMEWORK?

Framework es un marco de trabajo (un esqueleto, un patrón) para el desarrollo y/o la


implementación de una aplicación, ya que nos brinda un conjunto de herramientas (utilidades,

3
librerías) adaptadas al framework concreto para facilitar el desarrollo. Generalmente los
frameworks cuentan con comunidades de developers muy grandes quienes brindan soporte y
nos facilita la vida para concentrarnos en lo que da valor al cliente y no volver a programar
desde cero ciertos patrones que ya fueron validados.

Frameworks PHP

Symfony, Yii, Zend, CakePHP, CodeIgniter

MVC (MODELO-VISTA-CONTROLADOR)
Denominado también 3 capas, es un patrón de arquitectura de software encargado de separar
la lógica de negocio de la interfaz del usuario en tres componentes distintos y es el más
utilizado en aplicaciones Web, donde la vista es la página HTML y el código que provee de
datos dinámicos a la página, el modelo es la abstracción de la Base de Datos y la Lógica de
negocio y el controlador es el responsable de recibir los eventos de entrada desde la vista.

Figura 2: MVC

4
JUSTIFICACION
1. Incluye un ORM(Object-Relational mapping): a diferencia de CodeIgniter, Laravel
incluye un ORM integrado. Por lo cual no debes instalar absolutamente nada. Ahora
bien, yo no soy muy amigo de los ORM’s, están de moda y todo, pero siento que están
sobre-explotados. Hay que saber cuándo utilizarlos, muchas veces dejan mucho que
desear a nivel de rendimiento.

2. Bundles: existen varios paquetes que extienden a Laravel y te dan funcionalidades


increíbles. En la página de “packagist.org” se pueden consultar los diversos paquetes,
entre los que destacan: laracasts/flash, para la gestión de mensajes entre controladores
y vistas; e illuminate/html para la creación de formularios y validaciones.

3. Es elegante y aprendes a programar con estilos. No más porquerías de códigos que


no se entienden, aprenderás a programar ‘con clase’ y ordenar tu código de manera de
que sea lo más re-utilizable posible.

4. Puedes manejar tu base de datos desde la misma aplicación (vía código) y tener un
control de versiones de lo que haces con ella. Esto se llama migrations. Es excelente
herramienta, porque puedes manejar todo desde tu IDE, inclusive montar datos en tus
tablas, todo desde la misma ventana y vía consola.

5. Aprovecha de las ventajas de PHP 5.3. A diferencia de CodeIgniter que da soporte a


versiones más antiguas haciendo que sea feo programar en él.

6. Las rutas te permiten tener control de las peticiones. Una misma ruta puede responder
de distinto modo a un método GET o POST. A diferencia de CodeIgniter, en Laravel no
hay riesgo de que ‘descubran’ una ruta (URL) mientras no la hayas definido.

7. Cuenta con su propio motor de plantillas HTML.

8. El framework es actualizable utilizando composer update y listo, nada de descargar un


ZIP y estar remplazando.

9. La comunidad está viva. Todas mis dudas me las responden en menos de 5 minutos en
el chat IRC, son todos muy amables.

5
CARACTERÍSTICAS
Las principales características que este moderno Framework PHP ofrece son:

 Una completa y concisa documentación que es muy sencilla de leer y comprender. Con
código de ejemplo que es elegante y expresivo, facilitando significativamente
aprendizaje del framework, incluso sólo observando el código.

 Un ORM para manejar la capa de persistencia de datos de manera muy simple, con
sólo un par de líneas de código se puede hacer mucho. Además, maneja con efectividad
las distintas relaciones entre las tablas de una base de datos.

 Un poderoso administrador de extensiones (Bundles), en el cual podemos instalarlo


inmediatamente, algunos valiosos Bundles ya están disponible en la propia página de
Laravel.

 Es un proyecto Open Source con licencia MIT, de uso libre.

Nota: Las extensiones o Bundles, no sólo nos ayudan a incorporar nuevos módulos en nuestra
aplicación, sino que además nos proveen una ruta para modularizar nuestras propias
aplicaciones web, un aspecto muy valioso en el desarrollo web profesional.

¿CUÁNDO UTILIZARLO?
Hay muchas interesantes novedades en Laravel, aparte que es muy fácil de aprender, por
ejemplo, Laravel tiene soporte RESTfull muy útil en el desarrollo de Web service (Servicios
Web), que hacen el considerar a este framework PHP una magnifica opción, transformándolo
en tu principal caballo de batalla para el desarrollo de poderosas aplicaciones web.

REQUISITOS DEL SERVIDOR


El framework Laravel tiene unos cuantos requisitos de sistema:

 PHP > = 5.4


 Extensión PHP MCrypt
 Extensión PHP OpenSSL
 Extensión PHP Mbstring
 Extensión PHP Tokenizer

6
VENTAJAS
 Reducción de costos y tiempos en el desarrollo y mantenimiento.

 Curva de aprendizaje relativamente Baja (en comparación con otros framework Php).

 Flexible y adaptable no solo al MVC Tradicional (Modelo vista controlador) sino que para
reducir código propone usar “Routes with clousures”

 Buena y abundante documentación sobre todo en el sitio oficial.

 Posee una amplia comunidad y foros.

 Es modular y con un amplio sistema de paquetes y drivers con el que se puede extender
la funcionalidad de forma fácil, robusta y segura.

 Hace que el manejo de los datos en Laravel no sea complejo; mediante Eloquent (que
es un ORM basado en el patrón active record) la interacción con las bases de datos es
totalmente orientada a objetos, siendo compatible con la gran mayoría de las bases de
datos del mercado actual y facilitando la migración de nuestros datos de una forma fácil
y segura. Otro punto es que permite la creación de consultas robustas y complejas.

 Facilita el manejo de ruteo de nuestra aplicación como así también la generación de url
amigables y control de enlaces auto–actualizables lo que hace mas fácil el
mantenimiento de un sitio web.

 El sistema de plantillas Blade de Laravel, trae consigo la generación de mejoras en la


parte de presentación de la aplicación como la generación de plantillas más simples y
limpias en el código y además incluye un sistema de cache que las hace más rápidas,
lo que mejora el rendimiento de la aplicación.

 También cuenta con una herramienta de interfaces de líneas de comando llamada


Artisan que me permite programar tareas programadas como por ejemplo ejecutar
migraciones, pruebas programadas, etc.

7
DESVENTAJAS
 Tiempo de aprendizaje. Aprender a utilizar un framework no necesariamente es algo
que podamos hacer en un par de días. Si bien ahorramos mucho tiempo, también
tenemos que dedicar muchísimas horas en aprender los aspectos básicos y no tanto. A
mayor conocimiento del framework, más jugo le podemos sacar.

 Dependencia. Una vez que escribimos un programa para determinado framework es


casi imposible migrar a otro sin tener que reescribir todo el código. En ese sentido
cuando comenzamos un proyecto con un framework prácticamente nos estamos
casando con él.

 Falsa sensación de conocer el lenguaje. Esto es importantísimo porque veo que mucha
gente esta confundida en este aspecto. Programar para determinado un framework no
nos hace conocedores del lenguaje para el que esta creado. El mejor ejemplo: Saber
programar con jQuery no significa saber programar en JavaScript. Es mejor, aprendan
el lenguaje y luego aprendan el framework.

MERCADO DE COMPETENCIA
Algunos otros frameworks de PHP son:

Phalcon

Aquí ya entramos en un framework muy peculiar, tanto como que se instala como un módulo
de PHP y está escrito en C. Aunque está escrito en C se utiliza como si se usasen clases
normales, por lo que no debemos de preocuparnos por nada que no sea PHP.

Phalcon también incorpora MVC y una cantidad enorme de funcionalidades extra como: ODM
para Mongo, cifrado, motor de plantilla, gestión de HTTP (respuestas, cabeceras...),
paginación, constructor y validador de formulario, sistema de logging y muchas más cosas.

CodeIgniter

CodeIgniter es considerado uno de los frameworks más rápidos actualmente, implementando


de forma ligera el patrón de diseño MVC.

8
Yii

PHPixie es una buena alternativa si queremos implementar de forma simple el patrón de


diseño MVC, ya que su objetivo es ser uno de los frameworks más ligeros en este campo sin
añadir ningún tipo de extra.

PHPixie

PHPixie es una buena alternativa si queremos implementar de forma simple el patrón de


diseño MVC, ya que su objetivo es ser uno de los frameworks más ligeros en este campo sin
añadir ningún tipo de extra.

Medoo

Medoo es un minúsculo framework de 13kb con una única función: hacer más simple, seguro
y compatible el uso de bases de datos. Además nos da un plus de seguridad al prevenir
inyección de SQL.

Admite distintos gestores de bases de datos (basados en PDO) como: MySQL, MariaDB,
MSSQL, SQLite, PostgreSQL o SQL Server.

OTRAS HERRAMIENTAS AUTOMATIZADAS

Para el desarrollo del proyecto, se ocupó como principal herramienta automatizada el


framework Laravel. Pero es importante mencionar que en el desarrollo del proyecto se
utilizaron algunas otras herramientas compatibles directamente con Laravel, como se enuncian
a continuación.

Materialize y Bootstrap. Ambos son frameworks frontend, que sirvieron para el desarrollo del
proyecto de forma atractiva y responsiva de las vistas.

phpMyAdmin. Software complemento para la manipulación y control de las bases de datos


relacionales.

Sublime Text. Por definición es un editor de texto y código fuente altamente configurable con
depurador de código incluido (útil para reducir las pruebas). Además de ser extensible para

9
pequeños y grandes proyectos con su facilidad de navegación. Facilita y acelera el tiempo de
codificación.

CONCLUSIÓN

Al trabajar nuestro proyecto con el framework Laravel, hemos podido aprender un poco más
sobre éste y sus características. Hemos aprendido cómo crear un proyecto de Laravel y hemos
revisado la estructura del mismo.

Laravel es un framework muy flexible y fácil de aprender que, seguramente, nos podrá
solucionar un gran número de problemas en el desarrollo de futuros proyectos, además
aprenderlo nos brinda grandes bases de programación ya que es muy restricto con la
semántica y nos ayuda enormemente a ser más ordenados a la hora de programar.

Si el proyecto es muy simple. No utilizo un framework, no tiene sentido cargar toda una
estructura, un esqueleto con cientos de funciones, si el trabajo a realizar no requiere más que
unas lineas de programación. Por ejemplo, si van a realizar un sitio con un formulario para
recibir consultas y nada más, utilizar un framework ni merece la pena.

Si el proyecto tiene una complejidad baja-intermedia. Es probable que utilice un framework.


Sitios del tipo institucionales podemos crearlos en cuestión de horas. Me animo a decir que
minutos, obviamente sacando de lado la parte gráfica. Un framework para un proyecto de una
complejidad intermedia es realmente una bendición.

Si el proyecto es complejo. Si el proyecto es complejo, no es algo común, probablemente no


utilizaría un framework, aunque en este punto en particular habría que evaluar que tan útil es
el framework en base a nuestros requerimientos. Es solo cuestión de analizar las ventajas y
desventajas en cada caso en particular.

10
REFERENCIA DOCUMENTAL
Cesar Anton. (2015). Laravel, el mejor framework en PHP. Noviembre 01 2017, de platzi.com
Sitio web: https://platzi.com/blog/laravel-framework-php/

Pablo. (2012). Laravel: Un framework PHP para los más puristas. Noviembre 01 2017, de
kabytes.com Sitio web: http://www.kabytes.com/programacion/laravel-un-framework-php-
para-los-mas-puristas/

JLinares. (2015). Laravel: Introducción y Conceptos básicos. Noviembre 01 2017, de


devacademy.la Sitio web: http://blog.devacademy.la/post/94202131491/tutorial-laravel-
introducci%C3%B3n-y-conceptos

Juan Carlos Núñez. (2014). Laravel: ventajas del framework PHP de moda. Noviembre 01
2017, de nubelo.com Sitio web: http://www.nubelo.com/blog/ventajas-del-framework-moda-
laravel/

11