Evilnapsis

Programming, Hacking and More

Lb Modules

Introduccion al desarrollo de Lb Modules en Legobox

Lb modules es el inicio de una nueva serie que consiste basicamente en modulos de entidades reusables que estare publicando para hacer mas facil y extendible el desarrollo de aplicaciones en PHP.

Los Lb modules estaran desarrollados en mi framework legobox en la version “lb-min” apartir de ahora la version oficial, que pueden encontrar en el siguiente link:

Pueden saber mas sobre legobox aqui: http://evilnapsis.com/2016/05/31/legobox-original-vs-lb-min/

Instalacion de Legobox

Para instalar legobox simplementes tienes que descargar el paquete y copiarlo al directorio publico de tu servidor local u online, despues puedes acceder mediante http://localhost/lb-min/ o la carpeta donde lo instales.

Que son Lb-modules?

Los Lb modules son fragmentos o modulos que pueden ser utilizados como partes de proyectos mas grandes.

Imaginate que los lb-modules son somo legos, entonces mas adelante vas a poder usar varios lb-modules para juntarlos, modificarlos de ser el caso y crear tus proyectos un poco mas rapido.

En que consisten los lb-modules?

Los lb-modules consisten basicamente en 4 archivos, pueden ser mas, pero lo especificare en el caso correspondiente.

Los 4 archivos principales son:

  • Archivo SQL: el archivo SQL correspondiente para el modulo
  • Modelo: El modelo de la base de datos.
  • View: La vista del modulo
  • Action: El controlador de acciones que conecta modelo y vista.

Por ejemplo el modulo lb-person contiene los siguientes archivos:

  • lb-person.sql
  • PersonData.php
  • persons-view.php
  • persons-action.php

Instalar un Lb-module

La instalacion de uno o varios modulos es dela siguiente manera:

Paso 1: Descargar y copiar los archivos

  1. Descargar e instalar el framework legobox.
  2. Copiar el archivo del modelo por ejemplo PersonData.php a la carpeta legobox/core/app/model/
  3. Copiar el archivo de la vista por ejemplo persons-view.php a la carpeta legobox/core/app/view/
  4. Copiar el archivo del modelo por ejemplo persons-action.php a la carpeta legobox/core/app/action/

Paso 2: Configurar la base de datos

  1. Crear la base de datos Mysql con cualquier nombre por ejemplo: mybdx
  2. Ejecutar el archivo SQL por ejemplo lb-person.sql en la base de datos.
  3. Modificar el archivo legobox/core/controller/Database.php y colocar el nombre de la base de datos “mybdx” en el parametro $this->ddbb, tambien modificar los parametros de usuario, host y password en caso de ser necesario.

Paso 3: Ejecutar

Dependiendo de cada modulo, se debe ejecutar en el navegador, de la siguiente manera:

Por ejemplo para el modulo lb-person: http://localhost/legobox/?view=persons

Paso 4: Modificar el layout

En caso de ser necesario tambien tendrias que modificar el archivo legobox/core/app/layouts/layout.php para agregar las opciones de las vistas o modulos en el menu o navbar.

screenshot-at-2016-11-11-03-06-07

Finalizando

El proyecto lb-modules es open source, en este articulo recibire propuestas para modulos, tambien si alguien hace sus propios lb-modules y los quiere compartir lo puede hacer enviadome los datos a mi correo.

Tambien les inivito a que me apoyen desbloqueando los links con likes, tweets y +1 y que recuerden que en los links de adf.ly deben esperar 5 segundos y en la esquina superior derecha deben dar click en “Saltar Publicidad”.

 

screenshot-at-2016-11-11-03-29-30

Les inivito a que por favor me apoyen siguiendome en las redes sociales facebook o youtube: https://youtube.com/evilnapsis/

Agustin Ramos

Desarrollador de Software

2 thoughts on “Introduccion al desarrollo de Lb Modules en Legobox

  • Buen día,

    Me parecen geniales tus ideas para hacer del desarrollo de aplicaciones algo más intuitivo, controlable y ordenado. De hecho lo veo como un aporte extremadamente positivo y según gente de mi entorno que esta viendo tu trabajo, tiene un gran potencial.

    Si bien tengo varias preguntas en mente, quisiera centrarme en las conexiones a la base de datos, que es un punto importante para la seguridad de las aplicaciones.

    Me pregunto si el legobox puede permitir mayores características de seguridad en las comunicaciones con la base de datos. Me explico, los sql del ejemplo no utilizan “prepared statements”, que según todas las recomendaciones de programación son imprescindibles para mantenernos a salvo de problemas. Es que un filtrado débil puede poner en jaque toda tu base de datos sin muchos obstáculos.

    Lo otro, existe una librería llamada PDO, que puede comunicar no sólo con mysql, por lo que, si es posible adaptar las conexiones del framework a un mayor abanico de bases de datos (aunque mysql sea lo más común), tendría un impacto aún más relevante en su expansión.
    Desde ya Saludos,

    • Hola, carlos, Legobox es una estructura basica de trabajo para mi, la inicie en 2013 para algunos proyectos privados y me quede con la estructura y el funcionamiento del framework para avanzar mas rapido en el desarrollo de Apps, sin embargo, la parte de seguridad siempre la dejo pendiente para que cada quien agregue a su desarrollo su propia metodologia o principios de seguridad, en el caso de la base de datos, utilizo en componente MySQLi por que se me hace muy comodo de trabajar, pero igual con unas cuantas modificaciones es posible pasar el framework a PDO o cualquier otro controlador para base de datos. esa parte quizas no me preocupa tanto por que hay estandares, sin embargo me interesa mucho que las vistas y los datos de una aplicacion se desarrollen mas rapido. gracias por tu comentario, Saludos!!!

Leave a Reply to Carlos Cancel reply