
Los Estándares de programación en ABAP
¿Que son los Estándares de programación y por que es tan importante que los utilicemos?
Determina la forma en la que codificaremos los programas ABAP.
Es decir, como declararemos las variables, las estructuras, las tablas internas, así como también la forma en que debemos definir los objetos que creamos en el Diccionario de datos o en cualquier otra transacción de SAP donde se creen objetos en el sistema.
El uso de estándares de programación es sumamente beneficioso ya que hace que los programas sean mucho más simples de leer y mantener al momento de tener que realizar una modificación.
Te propongo evaluar la utilidad de seguir estándares de programación en la siguiente situación hipotética pero que se repite muy a menudo en el ambiente laboral real de SAP.
Supongamos que en la empresa donde trabajamos no hay sino 2 programadores entre los cuales nos encontramos nosotros.
Supongamos que tampoco se han definido estándares de programación y que cada uno de los 2 programadores tiene bien divido el trabajo, de modo que dependiendo de que trate el desarrollo ABAP a realizar lo tomara uno de ls 2 programadores.
Por último imaginémonos que debido a la alta demanda de empleo en SAP, nuestro compañero de equipo se va de la empresa y a nosotros nos toca tener que modificar los programas ABAP que el creó.
Si no uso ningún estándar de programación es muy probable que modificar los programas ABAP desarrollados por otro programador se convierta en una tarea complicada, que nos puede llegar a llevar mas del doble de tiempo que debería.
Esto debido a que el programador que ya no trabaja uso su propia convención de nombres para declarar las variables que usa en el programa, como también al momento de crear cualquier objeto ABAP en el diccionario de datos.
Los criterios de un buen estándar de programación
Hay muchos estándares de programación que se pueden usar. Un buen estándar considerará los siguientes factores:
El factor nemotécnico: para que el programador pueda recordar el nombre de una variable fácilmente se debe seguir alguna regla de tipo nemotécnica.
El factor sugestivo: para que otros programadores puedan leer y entender rápidamente nuestro código, el solo nombre de una variable indica o sugiere su uso y finalidad.
La consistencia: de mod que usemos las mismas convenciones de nomenclatura en todo el programa y hagamos que el texto del código sea legible.
Las ventajas del uso de estándares de programación
Algunos beneficios de usar estándares de programación:
Los nombre de variables serán nemotécnicos con lo que podrá saber el tipo de dato de cada variable con solo ver el nombre de la variable.
Los nombres de variables serán sugestivos, de tal forma que se podrá saber el uso y finalidad de dicha variable o función fácilmente con solo ver el nombre de la variable.
La decisión de poner un nombre a una variable o función será mecánica y automática, puesto que seguirá las reglas definidas por el estándar.
El uso de estándares de programación permite el uso de herramientas automáticas de verificación de nomenclaturas tales como el La verificación ampliada para el programa ABAP o el Inspector de código. Es decir una vez definido el estándar de programación a usar, se pueden usar estas 2 herramientas para asegurar la calidad del código, de mod que detecten todos los puntos dentro del código ABAP en donde no se cumple con el estándar definido.

Sin lugar a dudas las utilización de la Verificación ampliada de un programa ABAP y el Inspector de código es considerada una buena práctica de programación.
Lo ideal es que cada vez que se cree un nuevo programa ABAP, se incluya cmo un paso necesario dentro de las pruebas unitarias que realiza el programado, la utilización de estas dos herramientas y que se corrijan todos los errores y sugerencias que informan hasta llegar a cero, lo cual es la situación óptima.
¿Porque los estándares de programación son utilizados tan poco?
Si estos tienen tantos beneficios, ¿porque no se usan?. La razón tiene que ver más con los seres humanos que con la tecnología. Veamos a continuación las justificaciones mas comunes escuchadas:
Trabajan en un proyecto que no ha adoptado ningún estándar de programación.
No los entienden o no los pueden recordar.
No ven el beneficio de usarlos.
Están muy apurados o cansados.
Prefieren creatividad y consistencia arbitraria.
Piensa que es divertido usar nombres bonitos en el código.
Son artistas del software y no quieren regidos por convenciones.
Todas estas razones que mencionamos por las que no se usan los estándares de programación no son exclusivas de los programadores ABAP sino que aplica para los programadores de cualquier lenguaje.
Nuestros estándares de programación ABAP
A continuación te presentamos los estándares de programación que usaremos a lo largo de la Carrera ABAP.
Es importante que sepas que dentro de los estándares de programación que definiremos a continuación es probable que mencionemos conceptos que desconoces, pero que iremos incorporando a lo largo de la Carrera Consultor ABAP.
Los estándares que te presento a continuación fueron elaborados en base a la experiencia recopilada en los distintos proyectos en los que he participado como Consultor ABAP y como líder del equipo de desarrollo.
Para las declaraciones dentro de un programa ABAP usaremos los siguientes estándares:

Cuando hablamos de variables locales, constantes locales o cualquier otra declaración local, nos referimos a aquellas que se realizan dentro de las subrutinas.
Cuando hablamos de variables globales, constantes globales o cualquier otra declaración global, nos referimos a aquellas que se realizan dentro del programa principal, es decir dentro del evento START-OF-SELECTION.
Para las declaraciones de los datos que creamos en el Diccionario de datos ABAP usaremos los siguientes estpandares:

Usaremos la siguiente nomenclatura para establecer los nombres de los siguientes objetos:

Para los encabezados de programas ABAP:
Cuando creamos un programa ABAP nuevo en SAP es recomendable usar siempre el mismo encabezado de modo de unificar criterios entre todos los programadores de un mismo proyecto.
A continuación proponemos una versión de la plantilla de un programa ABAP que puedes utilizar para tus desarrollos.

Más abajo, dentro de la misma plantilla de programa nuevo, especificamos las declaraciones de los includes, tipos, tablas internas, etc.

Por último te hacemos entrega del documento en donde se definen los estándares de programación ABAP que usaremos en la Carrera Consultor ABAP y te recomendamos que tú también los uses en tus desarrollos ya que cumplen con los criterios necesarios para un buen estándar.