Aprende todo un fin de semana sin pagar una suscripción 🔥

Regístrate

Comienza en:

02D

05H

16M

05S

2

¿Cómo evitar el hard coding en mi Proyecto de automatización de procesos?

1. Definición de Hard coding.


En el contexto de desarrollo de software, es la práctica de incrustar datos o piezas repetidas directamente en el código fuente del programa o de cualquier otro objeto.

Esta mala práctica de desarrollo es considerada como un anti patrón de diseño[1].

2. Definición de Data Table y Lista

En UiPath, todo es un objeto. Existen 2 tipos de estructuras de datos que son ampliamente utilizadas en el desarrollo de RPAs.

  • Data Table[2]: Es una estructura de** datos simétrica**,** bidimensional** (que cuenta con filas y columnas), en principio inmutable, que soporta varios tipos de variables y que en si mismo es un tipo de objeto. Es similar al Data Frame de Pandas (Python) y es usada para declarar un gran volumen de información (como por ejemplo, una tabla en un archivo de Excel).
  • Lista[3]: Esta estructura que en principio es unidimensional, es mutable, puede contener otras listas y solo soporta un tipo de dato.

3. La actividad For Each.


Nota: La siguiente explicacion es una paráfrasis te la documentación oficial de UiPath relativa a la actividad For Each[4], así como las generalidades de un ciclo for en programación[5].

  • Iterador: Es un objeto que expresa el elemento actual de un objeto iterable (item). Normalmente es un entero que se incrementa en cada iteración.
  • Objeto Iterable: Es el objeto que recorre el iterador (in), este objeto normalmente es un tipo de estructura de datos (Data Table, Array o List)
  • Secuencia a iterar : Es el cuerpo del ciclo (Body), el conjunto de actividades que se van a repetir. A veces están en función de la variable iterador.
  • Criterio de paro: Es una condición, que al momento de cumplirse, el ciclo se detiene para continuar con la secuencia general. En el ciclo for, el criterio de paro normalmente es el número de iteraciones, que està en funciòn de la longitud del Objeto Iterable.


Cabe mencionar, que existen otros tipos de ciclos. El ciclo for es solo una manera de repetir una secuencia en función de un número predefinido de iteraciones.

4. Actividades sobre estructuras de datos + Ciclo For = No mas Hard Coding

En este post[6] se discute sobre una solución al Hard Coding de actividades que separan un Data Table en sus columnas individuales, y las pegan en un archivo en Excel, siguiendo un patron. La soluciòn consiste en aplicar una actividad For Each que envuelve un conjunto de actividades.


5. Conclusiones.

Como en todos los lenguajes de programación, en todos los entornos de desarrollo (UiPath incluido), evitar repetirse a si mismo distingue a un desarrollador pro de uno novato. No solo eso, es una buena práctica de desarrollo. El ciclo for es una alternativa para dejar de hardcodear las actividaedes.

Cómo diria William E. Conway, famoso hombre de negocios norteamericano ; “La manera más efectiva de mejorar la productividad, es eliminando el trabajo”

6. Fuentes y enlaces externos.

  1. Artículo sobre Hard Coding
  2. Data Table Variables (2020) Artículo de la documentación oficial de UiPath
  3. How to initiate List<String[]>? (2017) Post del foro oficial de UiPath
  4. The For Each Activity (2021) Artículo de la documentación oficial de UiPath
  5. Difference between iterable and iterator (2019) Artículo de GeeksforGeeks
  6. How can you split a DataTable into its columns and without hard coding variables? (2021) Post del foro oficial de UiPath
Escribe tu comentario
+ 2
1
31488Puntos

Tiene mucho sentido