viernes, 7 de septiembre de 2007

El pseudocodigo: lenguaje común

Alien [blackhat4all@gmail.com]

Vivimos en un mundo donde desde los sucesos descritos en la biblia referente a la legendaria torre de babel, los idiomas y dialectos son tantos que impiden la comunicación en un solo lenguaje con el resto de las personas, y aunque el inglés sea el idioma dominante, no todos lo hablan con fluidez y destreza, si a esto sumamos la variedad de lenguajes de programación, resultaría casi imposible para un programador chino experto en C++, explicarle a un cubano que se especializa en Fortran como realizar una rutina que de cómo resultado una búsqueda de archivos en la PC.

Por otra parte, desgraciadamente no todos los directores de empresas que se dedican a la creación y distribución de software tienen dominio de programación, lo que complica la situación de un informático a la hora de explicarle paso a paso a su jefe que es lo que hace su programa, aún comunicándose en el mismo idioma.

Sin embargo, con la existencia del pseudocódigo, la comunicación entre un programador (independientemente del lenguaje que domine) y un recién graduado de la escuela de medicina se torna más asequible para ambas parte.

La palabra pseudocódigo puede dividirse perfectamente en dos, Pseudo, que significa supuesto, y la terminación Código, que no es más que la frase que describe en programación una instrucción determinada. Formando así una especie de supuesta programación, que no llega a ser ni lo uno ni lo otro, sino una simbiosis de ambas.

Cualquier estudiante de carreras relacionadas con la informática, podrá recordar entre sus primeras clases alguna que tuviera que ver con el tema, ya que es la mejor forma que pudiera encontrar un profesor de programación para enseñarle a programar a sus alumnos. No tendría que hacer uso de complicadas palabras, ni de tecnicismos innecesarios, ni tampoco de amplias líneas de declaración de variables, ni nada por el estilo; con un dialogo común podría reducir a pocas líneas casi cualquier programa; Esto sin contar que es la manera más rápida de abrirle la mente a quien quiera adentrarse en el mundo de la programación. Por estas razones, el pseudocódigo es el puente perfecto entre un lenguaje de programación y el lenguaje común en que podría hablar cualquier persona, ya que se toman partes de ambas para describir el funcionamiento de un programa.

Para que los no entendidos en el tema tengan una idea, imaginemos que hemos creado una aplicación en Visual Basic 6.0 que se encarga de revisar el tamaño de cada uno de los nombres de archivos que se encuentran en una lista y decirnos cual de ellos es el más grande.
Nota: para hacerlo menos complicado y largo, supongamos que todos los archivos están en la misma carpeta (C:\BlackHat\Prueba).

Con este ejemplo, el código sería:
Dim Tamaño As Double
Dim Nombre As String
Tamaño = 0
Nombre = ""
For i = 0 To File1.ListCount - 1
If FileLen("d:\blackhat\" & File1.List(i)) > Tamaño Then
Tamaño = FileLen("c:\blackhat\Prueba\" & File1.List(i))
Nombre = File1.List(i)
End If
Next
Msgbox (Nombre)

Quizás escrito de esa forma pocos lo entiendan, pero si en lugar de eso decimos:
Asigna un espacio para poner el nombre y tamaño del mayor archivo
Escoje cada archivo
Compara con el tamaño del mayor archivo, si el tamaño es mayor, reemplaza sus datos
Repite hasta que se acaben los archivos disponibles
Muestra el nombre del mayor archivo

Hasta el momento no se ha asignado un lenguaje estándar para diseñar un pseudocódigo, ya que depende de quien lo escriba y el conocimiento sobre programación que tenga a quien va dirigido; sin embargo, lo anterior podría ser un ejemplo inicial, aunque aún contiene algunos errores que serán explicados más adelante.

Escribir un programa o parte de el en pseudocódigo puede ser para comunicarse con alguien que no tenga conocimientos sobre programación, como para quien está familiarizado con esta, ya que al no existir un solo lenguaje para realizar programas, estas mismas líneas mostradas anteriormente realizadas para compiladores como pascal, se escribirían completamente distintas, eso sin contar que cada persona puede crear las variables con los nombres que prefiera, y por lo general, cuando se va a hacer un programa simple, que no consta de mucha complejidad, muchos de los programadores, para acortar tiempo, asignan nombre a las variables que no tienen nada que ver con el contenido que guardan, o simplemente las denominan con letras, que quizás para ellos tienen sentido, más no para el que sin saber que hace el programa, prefiere leerse el código.

Por lo general, a la hora de escribir un programa en pseudocódigo, la declaración de variables se anula, a menos que las variables vallan adquiriendo determinada complejidad a lo largo del código o se considere necesario especificarlas dado los conocimientos de programación que pudiera tener quien va a leerlo, y fue este el error que se cometió en el ejemplo de pseudocódigo anterior.

Por todo lo dicho anteriormente, un pseudocódigo puede tener la complejidad o sencillez que se le quiera dar y no sólo puede ser escrito, sino también graficado, lo cual resulta a veces más fácil de entender.

Un ejemplo que pudiera ser fácil de razonar sería el de crear un programa que dada la nota de un estudiante, nos dijera si está suspenso o aprobado. Veamos el código escrito en C++:

Int nota;
If (nota>=60 )
{ShowMessage (“Aprobado.”);}
Else
{ShowMessage (“Suspenso.”);}

Este mismo ejemplo llevado a pseudocódigo escrito sería:

Si la nota es mayor o igual que 60
Esta aprobado
Sino
Esta suspenso

Como vemos aquí se ha eliminado la creación de la variable nota, ya que al ser utilizada una sola vez en el programa, y no ser de gran complejidad, cualquier programador sabría de que tipo crearla. Veamos ahora como sería este mismo pseudocódigo en forma de gráfico, o diagrama como usualmente se le llama:

Como vemos, la representación grafica, o en forma de diagrama, en ocasiones es más fácil de hacer e incluso de entender, pudiendo ver así el programador todos los pasos y faces realizados en el código.

Hasta aquí hemos tratado sobre escribir los programas en pseudocódigo por los programadores para mostrárselo a otras personas, sin embargo el proceso se puede hacer en forma inversa. En no pocas ocasiones se nos dan tareas, programas, algoritmos a construir, y como programadores tenemos que cuestionar constantemente sobre diversos aspectos buscando que nuestras aplicaciones sean lo más cercana a la petición que se nos ha hecho, sin embargo, una gran parte de los desarrolladores, preferimos que se nos entreguen las encomiendas en pseudocódigos, ya que desde ahí nos es más fácil llevarlas a un lenguaje de programación y no tenemos que preguntar por detalles que se podían haber especificado en caso de que se nos hubiese entregado un diagrama.

La programación en forma de pseudocódigo, ya sea en forma de diagrama o textual, ahora a los desarrolladores de software horas de trabajo, y evita las constantes reuniones con los jefes, superiores o supervisores para que nos digan “yo quiero un programita que me diga…”. Es una forma de lograr un acercamiento entre el lenguaje común y la programación, de llegar de una manera más fácil y cómoda a la forma de pensar de los programadores, ya que todos, de forma escrita, en diagrama o mental, antes de enfrascarnos en una aplicación, lo primero que generamos es el pseudocódigo.



Artículos relacionados


No hay comentarios: