Perfil requerido, conceptos y herramientas

<< Click to Display Table of Contents >>

Navigation:  Bizagi Studio > Asistente de Procesos > Integrar > Integración con aplicaciones > Integrar APIs o código personalizado en Bizagi > Conectores de Bizagi > Crear conectores > Conectores Personalizados >

Perfil requerido, conceptos y herramientas

Introducción

Al crear sus propios conectores y específicamente al ser de tipo Personalizado, asegúrese de cumplir con el perfil requerido y de estar familiarizado con los conceptos presentados a continuación.

Recuerde que para crear conectores Personalizados, usted deberá escribir el código de la implementación, como se describe en Conectores Personalizados.

 

Perfil

Se requiere por lo tanto el siguiente perfil:

Habilidades de programador, principalmente experiencia con Javascript (desarrollo orientado a aplicaciones Web).

Es óptimo e ideal si se ha trabajado anteriormente con modelos de código basado en eventos/asíncrono, como por ejemplo jQuery o AJAX.

Entendimiento de estructuras básicas como XML y JSON.

Estar familiarizado con manejadores de paquetes como npm (https://www.npmjs.com/) -o incluso repositorios de código tipo git como GitHub.

Podrá necesitar instalar npm y utilizarlo desde la consola de comandos para descargar y empaquetar cualquier librería de código libre (disponibles usualmente bajo licencia MIT en Node.js -https://nodejs.org/en/).

 

Conceptos

Partiendo de que usted implementará el conector con código en lenguaje Javascript, es de gran importancia que usted también conozca la notación y capacidades que ofrece Node.js.

 

A nivel introductorio, los factores más relevantes para comprender lo que ofrece Node.js, que usted deberá considerar, son:

Es un entorno de ejecución basado en código Javascript pero que se ejecuta del lado del servidor (usando Chrome's V8 JavaScript engine).

La versión de Node.js que utiliza Bizagi es v0.12.5, y por lo tanto, cualquier librería de terceros que usted utilice deberá poderse ejecutar sobre esta versión.

Nótese que si desea extender las interfaces de usuario de Bizagi, desde lo que se ejecuta del lado del cliente, entonces el enfoque para ello es la creación de Bizagi Widgets.

A diferencia de PHP u otras tecnologías que se ejecuten del lado del servidor, se ejecuta de manera asíncrona como no-bloqueante (mientras se usa un único hilo de ejecución).

Estos conceptos están ligados y soportando el hecho de que Node.js se apoya en un modelo de programación basado en eventos (siguiendo el patrón observer).

Dentro de este patrón, los eventos de finalización se atan a las invocaciones de manera que las respuestas se manejen a través de callbacks de manera asíncrona.

 

note_pin

En caso de que Node.js sea nuevo para usted, usted podrá consultar blogs, tutoriales y documentación externa para comprender de mejor manera el enfoque principal y las desventajas de esta tecnología (para conocer cuándo utilizarlo y cuándo no).

Por ejemplo, consulte los enlaces https://www.toptal.com/nodejs/why-the-hell-would-i-use-node-js o http://www.tutorialspoint.com/nodejs/index.htm para una mejor ilustración sobre los escenarios donde Node.js es ideal.

 

Requerimientos a nivel de software

Para los conectores Personalizados, y dado que éstos se apoyan en librerías de terceros, se debe instalar npm.

Npm es el manejador de paquetes para las librerías de Node.js (lo cual significa que le permite descargar y empaquetar las librerías desde https://www.npmjs.com/, tal como lo sugiere su acrónimo: Node Package Manager).

 

Versiones soportadas

A pesar de que puede descargar la última versión desde https://nodejs.org, usted deberá asegurarse que la librería y código que utilice sea compatible con la versión de Node.js y de npm que utiliza Bizagi.

La versión actual de Node.js que incluye Bizagi es 0.12.5. mientras que la de npm es la versión <%NODENPMVERSION%>.

 

note_pin

Versiones soportadas de npm son la <%NODENPMVERSION%> o superior.

 

Por tal motivo, se recomienda descargar la versión más reciente (current).

Podrá descargarla e instalarla directamnete desde https://nodejs.org/en/download/.

 

NodeJS_download

 

 

note_pin

En caso de que desee de manera alternativa descargar un Node JS portable (sin archivo de instalación .exe), al mismo tiempo en que se garantice que sea la misma versión que usa Bizagi, podrá hacerlo desde www.bizagi.com en:

http://download.bizagi.com/connectors/forecast/nodejs.zip

 

Consideraciones de instalación

Al instalar npm, se requieren los siguientes componentes: Node.js runtime y npm package manager:

 

NodeJS_install

 

Nótese que incluir la opción Add to PATH no es obligatoria, y por el contrario se recomienda no usarla sino que configurar a su vez una variable de entorno que plantee el uso de NODEJS_HOME:

 

NODEJS_HOME

 

La imagen anterior ilustrar un NODEJS_HOME donde se instalan los ejecutables de npm y nodejs:

 

NODEJS_Folder

 

De esta manera, usted podrá ejecutar comandos de npm directamente desde una consola de comandos, al mismo tiempo en que se encuentre en la ubicación de ruta donde desea descargar una librería específica (la imagen a continuación ilustra una librería forecast.io que se descarga dentro de C:\tmp\node_modules\):

 

NODEJS_Npmcommand

 

note_pin

En caso de que usted identifique que necesitará de 2 o más librerías completamente diferentes y aparte desde www.npmjs,com, se recomienda utilizar un archivo de definición package.json y así evitar potenciales conflictos cuando se empaqueten dichas librerías dentro del conector de Bizagi.

 

En cualquier momento usted podrá revisar qué versión de npm tiene instalada, usando npm -version:

 

Npm_version

 

 

note_pin

En versiones de npm 3.x o superior, el comando npm install por defecto descarga las librerías bajo una estructura plana de dependencias, tal como se debe usar en Bizagi.

Sin embargo, la opción --greedy puede ser de utilidad para asegurarse de lo anterior.

Para mayor información sobre esto, consulte https://docs.npmjs.com/how-npm-works/npm3.