Ir al contenido principal

miCode Manager, caso de uso

En esta entrada se presenta un ejemplo básico de cómo poder usar miCode Manager en un entorno funcional. Por cierto, si esta es la primera vez que lees sobre este proyecto, quizás quieras conocer un poco más en la publicación donde con los detalles de operación y manejo de miCode Manager Versión 1.0.

Para comenzar, consideraremos el siguiente escenario:

Eres un desarrollador que se adiciona a un proyecto en curso, ya sea como freelance o como empleado de la empresa que requiere el desarrollo (empresa contratante).

Como se ha expresado anteriormente, miCode no es (ni pretende ser) un repositorio de control de cambios, por tanto debería apoyarse en un software que haga las veces de uno, como GitHub, Bitbucket o cualquier otro sistema de control de versiones. Por tanto, la empresa contratante contará con un repositorio de control de cambios desde donde puedan descargarse los siguientes paquetes:

  • miCode Manager (para referencia, su repositorio oficial está en  https://github.com/jjmejia/micode-manager).
  • Librerías y scripts de uso estándar al interior de los proyectos comunes de la empresa contratante (al que referiremos como repositorio local). Aquí se encontrarán por ejemplo, las librerías que ha implementado la empresa para manejo de interfaz de usuario, consultas a bases de datos, etc.
  • Librerías y scripts propios del proyecto. Este paquete debe incluir la información requerida por miCode para incluir las librerías de uso estándar, que no deben incluirse como parte de los archivos del proyecto, tanto para optimizar uso de espacio en disco en los servidores de la empresa y en tu equipo de desarrollo, como para garantizar que siempre sea usada la versión más recientes de esos archivos.

Una vez descargados estos paquetes, deberán copiarse al directorio web de trabajo o Document Root, cada uno en su propio directorio (esto puede hacerse directamente durante el proceso de descarga), de forma que los cambios puedan posteriormente versionarse de retorno al repositorio de donde fueron recuperados. Se recomienda que para todos los paquetes o en su defecto, al menos para modificaciones al core del código de miCode y del repositorio local, se disponga de un administrador que supervise las actualizaciones.

Este es un ejemplo de los directorios que pueden usarse (aclarando que no es mandatorio que sea esta la estructura para que miCode funcione), asumiendo que el Document Root es “www”:

  • www/micode
    miCode Manager.
  • www/micode-local
    Repositorio local.
  • www/micode-projects/[mi proyecto]
    Proyecto particular (agrupa todos los proyectos que usan miCode para facilitar su referencia).

A continuación y a fin de volver operativas las copia del proyecto a trabajar, deberá realizar las siguientes actividades:

  • Iniciar sesión en miCode Manager para habilitar su operación.
  • Agregar a miCode las librerías y scripts del repositorio local, lo que posteriormente deberá hacerse cada vez que se adicionen nuevos archivos a dicho repositorio. miCode proveerá una forma ágil de realizar esta tarea. Por otra parte, la actualización de los scripts desde el repositorio de control de cambios deberá realizarse manualmente de forma periódica por tu parte como desarrollador responsable.
  • Agregar a miCode el proyecto a trabajar y actualizar los módulos administrados por miCode que sean requeridos por dicho proyecto, ya sean módulos tomados del core de miCode o del repositorio local. Esta actividad deberá realizarse cada que se adicionen (o retiren) módulos del repositorio local al proyecto particular.

Una vez terminado el desarrollo para el que te contrataron, bastará con actualizar el repositorio de control de cambios y (si lo requieres) generar el respectivo paquete de distribución, donde si se incluyen todos los archivos requeridos para que el proyecto funcione.

De esta forma cuando debas trabajar en un nuevo proyecto, bastará con adicionar el nuevo proyecto a miCode ya que los pasos previos ya habrán sido realizados.

Si tienes sugerencias y/o recomendaciones para que este proyecto sea de utilidad en un entorno real y práctico no dudes en dejar tus comentarios, para entre todos liberar una herramienta que sea de utilidad.

La primer imagen que acompaña esta entrada fue tomada de https://www.pexels.com

Comentarios

Entradas populares de este blog

Manejo de recursos HTML para tus páginas web con PHP

Déjame saber si te resulta familiar esta situación: páginas web que descargan el mismo recurso (sean estilos CSS o código Javascript) más de una vez o incluyen recursos remotos que tardan una eternidad en cada descarga. Yo lo he visto en más de una ocasión y no es difícil imaginar el porqué ocurre. Un desarrollador incluye el recurso de estilos que necesita su segmento de código y otro hace lo mismo, sin reparar (o sin que siquiera importe) que comparten el mismo recurso. En otro escenario muy común, acostumbran incluir muchos recursos remotos, con lo que el rendimiento de la página depende de lo rápido que responda dicho recurso. ¿Puede hacerse algo al respecto? Claro que si. Vamos a crear una clase en PHP que se encargue de administrar estos recursos y que nos facilite su despliegue en la página sin repeticiones . ¿Y respecto a la demora en la carga de recursos remotos? Atendamos una cosa por vez, porque como dicen por ahí: «Vísteme despacio, que tengo prisa». Administrando ...

Manejo de clases globales únicas en PHP

¿Cómo acceder desde cualquier script en tu proyecto a Clases y/o funciones de uso común? Este puede ser una de las primeras directrices a establecer para cualquier proyecto porque siempre, siempre , sea en  PHP  u otro lenguaje, será necesario usar recursos comunes. En PHP existen diferentes alternativas para su manejo, ya sea por medio de variables globales o de clases/objetos estáticos. A continuación consideraremos una propuesta para este manejo. Creación de recursos globales Para ilustrar esta solución, partimos de la necesidad de implementar una librería para manejo de servicios relacionados con el servidor Web, que de forma amigable nos permita disponer de información como: Valores almacenados de la variable superglobal $_SERVER de PHP. Valores asociados a la consulta realizada por el usuario, por Ej. la dirección IP del usuario o la URL ingresada. Valores asociados al servidor web usado, por Ej. la dirección IP del servidor o la ubicación del script que ej...

¿Qué tan bueno es realmente el “foreach” en PHP?

Como toda buena historia, esta comienza hace algún tiempo. El que fuera mi jefe por allá en la primera década del 2000, realmente odiaba (y mucho) el uso del foreach en el código PHP . Prefería que usáramos alguna alternativa diferente, alguna combinación del  for o del while . ¿Por qué? Ve tú a saber, nunca fue abierto respecto a las razones de su aprensión hacia ese constructor propio del lenguaje. Pero antes de continuar, veamos qué es y para qué nos puede servir. Arreglos, tenían que ser arreglos ¿Qué es foreach ? De acuerdo al manual de PHP , su definición es la siguiente: El constructor foreach proporciona un modo sencillo de iterar sobre arrays . foreach funciona sólo sobre arrays y objetos , y emitirá un error al intentar usarlo con una variable de un tipo diferente de datos o una variable no inicializada. Para su uso correcto existen dos sintaxis validas, a saber: foreach (expresión_array as $value) { ... } foreach (expresión_array as $key => $value) { ....