Bienvenidos a la eterna lucha entre el hardcode y los códigos
funcionales.
Muchas personas tildan de malos programadores a aquellos que hacen
uso del hardcode cual si fuese un error en sí mismo, aun y cuando este trozo de
código es admitido por el lenguaje.
Programar con funciones parece ser un poco más factible para el
negocio mismo, aunque este tome más tiempo, puesto que serán necesario crear
mantenimientos y un mejor análisis de la nueva transacción.
Para el leguaje abap se han incluido un sin número de buenas
prácticas incluyendo la programación orientada a objetos, pero por su origen
estructurado aún está lejos de ser un lenguaje OO plenamente utilizable, y es
que a la hora de realizar consultas y reportes no es tan factible modelar las
informaciones cual si fuesen objetos porque aumenta el tiempo de desarrollo.
Entonces que es el hardcode? Es escribir código en cadena de
caracteres que se tomaran tal cual fueron escritos.
Como punto a favor de esta práctica está el factor prisa, en
ocasiones el negocio requiere un cambio drástico pero para de inmediato, y como
se puede ser eficiente si empezamos a crear todo un caso de uso, los
programadores experimentados recurren al hardcode y entregan la solución en
menos de lo que canta un gallo.
Como punto en contra, está la idea de inmutabilidad que adquiere el
sistema al usar este método, por lo tanto cada detalle requerirá de una
intervención ABAP para poder ser efectuada y en el peor de los casos el
programador terminaría trabajando de la mano al usuario, entre modificaciones y
usabilidad.
En mi opinión no juzgo a quien use hardcode o a quien no lo haga, al
final el negocio no usa los códigos como tal, solo necesita que el sistema
funcione, y si este cumple con su propósito no importa el medio, entonces
estará más que perfecto.
Att: El escritor del limbo.