Gustavo Adolfo Mesa Roldán 4631310b5e | 4 years ago | |
---|---|---|
.. | ||
app | 4 years ago | |
config | 4 years ago | |
database | 4 years ago | |
public | 4 years ago | |
vendor | 4 years ago | |
.htaccess | 4 years ago | |
Hoja de ruta.txt | 4 years ago | |
README.md | 4 years ago | |
composer.json | 4 years ago | |
composer.lock | 4 years ago | |
scaffoldPersonal.txt | 4 years ago | |
sobic | 4 years ago |
###### ####### ######## #### ###### ®
## ## ## ### ## ## ## ## ##
## ## # ## ## ## ## ##
###### ## # ## ######## ## ##
## ## # ## ## ## ## ##
## ## ### ## ## ## ## ## ##
###### ####### ######## #### ######
================================================
Sobic es un framework basado en el patrón Modelo-Vista-Controlador que combina los lenguajes PHP y AngularJS. Sobic ha sido y continua siendo desarrollado por NextSun Limited.
Sobic tiene una estructura de carpetas y archivos básica que ha de ser respetada para el correcto funcionamiento de una aplicación desarrollada con Sobic. La estructura es la siguiente:
App. En la carpeta “App” se almacenan los archivos que se podrían denominar como la api del servicio, es el software que se ejecuta en el servidor y que se comunica con la base de datos y gestiona la información y como esta es tratada y almacenada. Contiene los controladores, las rutas y los modelos.
Config. Contiene los archivos de configuración de la base de datos y el estado de la plataforma.
Database. En la carpeta “Database” se almacenan los archivos que contienen el conjunto de operaciones que se pueden realizar en la base de datos, operaciones tales como las migraciones o las semillas.
Public. La carpeta “Public” corresponde con el “front-end” o la parte visible de la aplicación, es el software que ejecuta el cliente y que le añade estilo y ordena la información mostrada y proveída por la api o “back-end”. Contiene las imágenes mostradas, las librerías y fuentes, los estilos CSS, etc.
Vendor. La carpeta “Vendor” incluye los componentes utilizados por el sistema Sobic, también se incluyen aquí los complementos o plugins así como todo el software de terceros utilizado. Es una carpeta auto-generada por Composer al instalarse junto con otros componentes esenciales como Slim o Eloquent. No se recomienda modificar el contenido ya existente de esta carpeta, si se añade algún componente aparecerá aquí el nuevo.
Composer.json.
Composer.lock.
Sobic.
Por último se encuentran tres ficheros de configuracion, “composer.json”, “composer.lock” y “sobic”.
Los dos primeros pertenecen a composer y el último es el alma de sobic, en el se almacenan las operaciones que crearán todo el sistema, se recomienda no modificar ninguno de estos tres archivos.
Descargar el git desde la dirección de Sobic en github (https://github.com/nextsun-limited/sobic/ "Sobic") y guardalo en la raíz del servidor web. A continuación se actualiza "Composer" con el comando:
composer install/update
Una vez realizada la tarea y con el sistema gestor de base de datos configurado, se modificará el acceso a la misma para que conecte satisfactoriamente, para esto Sobic ofrece varios entornos de producción. En la carpeta "config" y gestionado por el archivo "enviroment.php" se establece el estado de la plataforma entre desarrollo, prueba y producción, en cada uno podemos tener una base de datos diferente. Cada uno tiene su archivo donde establecer las variables de entorno y se hace de la siguiente manera:
$capsule->addConnection(array(
'driver' => 'mysql', //Llamamos al driver que conecta con la base de datos.
'host' => getenv('IP'), //Establecemos el host de la base de datos.
'port' => 3306, //Seleccionamos el puerto de connexión.
'database' => 'c9', //Indicamos el nombre de la base de datos a utilizar.
'username' => getenv('C9_USER'), //Usuario de la base de datos.
'password' => '', //Password del usuario.
'prefix' => '', //Indicamos el prefijo
'charset' => "utf8", //Se indica el juego de carácteres.
'collation' => "utf8_unicode_ci"
));
Ahora se puede comenzar a introducir las diferentes instrucciones de Sobic, pero antes de hacer ninguna prueba recuerda que la configuración de acceso web se hace desde el archivo '.htaccess' ubicado en la raíz y por defecto, si se accede directamente a la carpeta "/public", invocará un error 404.
Las migraciones son un tipo de control de versiones para la base de datos. Hace posible que los diferentes miembros del equipo modifiquen la estructura de la base de datos y que el resto de miembros esten informados sobre el estado actual. Para crear una migración introduce la siguiente orden en consola:
php sobic create migrate [name]
Ejemplo:
php sobic create migrate shop "string('name')" "integer('price')" [...]
Se creará un archivo parecido a este "app/database/migrations/ExamplesMigration.php".
Inicializará la base de datos con la estructura existente, en el caso de no haber creado previamente una migración se ejecutará la migraciones por defecto.
php sobic migrate [--seed]
Al ejecutar una migración creada por defecto se borrarán las tablas de las bases de datos y se volverán a crear, por lo que los datos se perderán, para evitar esto comenta o borra esta línea dentro del archivo "NameMigration.php":
Capsule::schema()->dropIfExists('name');
Crea una semilla que poblará la base de datos con datos de prueba.
php sobic create seed [name]
Se creará un archivo parecido a este "app/database/seeds/ExamplesSeed.php".
El Modelo es la representación de la información con la cual el sistema opera, por lo tanto gestiona todos los accesos a dicha información, tanto consultas como actualizaciones, implementando también los privilegios de acceso que se hayan descrito en las especificaciones de la aplicación (lógica de negocio). Para crear un modelo introducimos la siguiente orden:
php sobic create model [name] [atributo:nombre_atributo],[..,]
Ejemplo:
php sobic create model shop "string('name')" "integer('price')" [...]
Se creará un archivo parecido a este "app/models/Examples.php".
Después de crear un modelo ha de actualizarse composer, para cargar el modelo creado, introduciendo:
composer dump-autoload
El controlador responde a eventos (usualmente acciones del usuario) e invoca peticiones al 'modelo' cuando se hace alguna solicitud sobre la información (por ejemplo, editar un documento o un registro en una base de datos). Para crear un controlador introducimos la siguiente orden:
php sobic create controller [name]
Se creará un archivo parecido a este "app/controllers/example.php".
La orden Scaffold genera una estructura base de una aplicación con todas las instrucciones anteriormente descritas. Para crear un controlador introducimos la siguiente orden:
php sobic create scaffold [name] [arguments],[..,]
Ejemplo:
php sobic create scaffold shop "string('name')" "integer('price')" [...]
Durante la creación del scaffold se modifican los siguientes archivos:
Después de crear un modelo ha de actualizarse composer, para cargar el modelo creado, introduciendo:
composer dump-autoload
También hay que ejecutar la migración que se creó con el scaffold, con el siguiente comando:
php sobic migrate [--seed]
La vista presenta el 'modelo' (información y lógica de negocio) en un formato adecuado para interactuar (usualmente la interfaz de usuario) por tanto requiere de dicho 'modelo' la información que debe representar como salida. Para crear un controlador introducimos la siguiente orden:
php sobic create views [name] [atributo:nombre_atributo],[..,]
Se crearán los siguientes archivos y directorios:
Sobic ha sido desarrollado por el equipo de NextSun UK Limited, bajo licencia MIT.
Sobic utiliza los siguientes frameworks:
Idea and implementation by:
Supported by: