LA FUNCIONALIDAD DEL LENGUAJE DE PROGRAMACIÓN DENTRO DE LA INGENIERÍA CIVIL
JOHAM ANGARITA GUERRERO
UNIVERSIDAD MILITAR NUEVA GRANADA
FACULTAD DE EDUCACION A DISTANCIA
INGENIERÍA CIVIL
CONVENCIÓN, NORTE DE SANTANDER
2010
INTRODUCCIÓN
En esta era de la informática y las comunicaciones cuando todo está
sistematizado, es de suponer que todas las ciencias y técnicas, sobre todo
la ingeniería civil, estén en esta mismo tónica, es decir, la de construir
programas para resolver los problemas que a los ingenieros se les presenta
en sus labores cotidianas y que las obras mismas demandan. El lenguaje de
programación es toda una herramienta imprescindible para la ingeniería
porque le puede brindar toda una gama de oportunidades para resolver los
obstáculos de cálculo, técnicos y de estructuras que encuentre en su
trasegar, pero al mismo tiempo puede convertirse, a largo plazo, en una
disminución de sus capacidades metodológicas tal y como se expondrá en el
presente escrito.
Los software y programas constituyen para los ingenieros civiles una
herramienta muy funcional, puesto que en todas las áreas o campos de dicha
ciencia se pueden utilizar con una cantidad de ventajas y bondades
extraordinarias, ya que desde su intromisión en la ingeniería no se han
dejado de utilizar, usar en forma correcta y racional, pero también se ha
caído en un abuso de ellos convirtiéndose dicha funcionalidad en un arma en
su contra, tal y como se analizará por medio de los argumentos a
desarrollar en el presente paper.
Se espera que los argumentos presentados sean lo suficientemente claros,
fundamentados y convincentes para alertar a todos aquellos que se
encuentran trabajando y estudiando la ingeniería civil. Este escrito
constituye, pues, una ventana que posibilita ver la otra cara del lenguaje
de programación, aquella que no es posible ver en medio del trabajo o
estudio diario.
OBJETIVOS
OBJETIVO GENERAL
Analizar los efectos causados por los lenguajes de programación en los
estudiantes de ingeniería civil por el uso exclusivo de la sintaxis y el
desconocimiento de otro método para la resolución de los problemas.
OBJETIVOS ESPECÍFICOS
Revisión bibliográfica sobre la sintaxis y semántica de los
lenguajes de programación más utilizados en la ingeniería civil.
Estudiar los autores críticos de la funcionalidad de los lenguajes
de programación dentro de la ingeniería civil.
Analizar los distintos paradigmas desde donde se plantean las
críticas respectivas por el pretendido lexicalismo y sintaxismo de los
programas y software utilizados en la ingeniería civil.
Presentar los argumentos a favor y en contra en torno a las críticas
sobre el sintaxismo en que se ha caído en la ingeniería civil,
olvidando de plano los métodos para resolver los problemas.
Presentar los argumentos a favor y en contra sobre aquellos autores
que detestan del sintaxismo y reclaman la importancia de los métodos
de resolución de problemas.
JUSTIFICACIÓN
Aprender un lenguaje de programación para construir un programa o software
que va a solucionar un problema cualquiera sobre alguna de las
especialidades de la ingeniería civil, es algo sumamente satisfactorio y
ventajoso en cualquier aspecto en que se le mire, pero dicha facilidad
también está ocasionando un grave problema en el estudiantado de dicha
disciplina científica, ya que los jóvenes que cursan la ingeniería civil se
preocupan por resolver el problema sin antes haberlo comprendido a
cabalidad.
Se necesita hacer un análisis serio sobre esta problemática que se viene
presentando en la carrera de ingeniería civil, puesto que al dedicarse los
jóvenes a resolver los problemas sin haberlos entendido, puede ocasionar
graves consecuencias a nivel personal, intelectual, profesional y ético;
por lo tanto abordar dicho problema es algo de palpitante actualidad debido
a la cantidad de estudiantes en dicha ciencia y la urgente necesidad que
existe de que los egresados no sean seres virtuales resolviendo problemas
por medio de programas informáticos, sino unas personas que utilizan la
comprensión total de los problemas y son capaces para encontrar los métodos
necesarios para resolverlos.
Se espera con este paper poder contribuir a dirimir tal polémica que se
viene presentando con argumentos sólidos y contrastables con la realidad,
de tal forma que el tema planteado contribuya a responder a ese gran
interrogante del por qué se debe aprender un lenguaje de programación
dentro de la ingeniería civil.
ANÁLISIS DE LA FUNCIONALIDAD DE LOS LENGUAJES DE PROGRAMACIÓN EN LA
INGENIERÍA CIVIL
ANTECEDENTES
Hasta el momento los estudiantes de ingeniería civil han estado utilizando
los lenguajes de programación para construir programas o software cuyo fin
es resolver los problemas que se les ha venido presentando durante sus
estudios o trabajos, esto ha representado ahorro de tiempo, energías,
esfuerzo, trabajo intelectual, etc.; ya hasta hay lenguajes dedicados para
las distintas especialidades de la ingeniería, cada día están creándose más
lenguajes y programas para facilitar la tarea de los ingenieros y
contribuir así para que las obras reúnan los estándares de seguridad
requeridos por las normas internacionales.
PROBLEMA
Los ingenieros civiles necesitan los lenguajes de programación para
construir software y programas para solucionar los problemas, esto es claro
y nadie lo puede poner en duda, pero también es cierto que a medida que los
lenguajes se están volviendo más prácticos dentro de las disciplinas
ingenieriles están convirtiendo a los futuros ingenieros en unos
profesionales programadependientes, es decir, que sólo quieren o piensan
que la solucionan la obtienen a través de la sintaxis correcta en la
construcción de un programa, pero no son capaces de utilizar los métodos,
la metodología adecuada que se requiere en la resolución de problemas
cuando se le ha entendido completamente.
Como se puede apreciar el problema obedece no al qué de los lenguajes de
programación, sino al aspecto actitudinal sobre el mismo y los efectos
nocivos que puede causar esta actitud reduccionista, simplista, que puede
ocurrir en la utilización de los lenguajes de programación dentro de la
ingeniería civil.
SINTAXIS O MÉTODO
Dentro de la los lenguajes de programación existen tres elementos formales
o estructurales indispensables, el léxico, la sintaxis y la semántica, cada
uno de estos desempeña una función específica en la elaboración o
construcción de los programas, pero en el argot de sistemas se les conoce
como sintaxis, la cual permite que los códigos realicen la función u
operación para los cuales fueron programados y cuando un estudiante de
ingeniería se detiene en la programación para resolver un problema está
dando por sentado que ha comprendido el problema en su totalidad, algo que
escapa a la realidad del asunto, entonces vienen las consecuencias de tal
falta de profesionalismo.
Los estudiantes no toman conciencia de la necesidad de aplicar los métodos
para resolver los problemas, únicamente se dedican a la parte de la
sintaxis y listo, creen que con esto ya van a solucionar todos los
problemas que se le presenten en la carrera o dentro de su trabajo, asi lo
plantean los profesores del departamento de Ingeniería Informática y
ciencias de la comunicación de la Universidad de Concepción, Chile, los
cuales afirman lo siguiente: "Uno de los problemas claros que hemos
detectado, es que los estudiantes rápidamente comienzan a preocuparse del
cómo resolver un problema, sin haberse centrado en el entendimiento del
problema en sí, que es el que se debe resolver. Los estudiantes creen que
el empleo de una sintaxis correcta en la construcción de un programa es
garantía de una adecuada resolución del problema: esta es necesaria, pero
para nada suficiente"[1].
El reducir el trabajo para la solución de los problemas con la simple
sintaxis es algo que perjudica varios aspectos del estudiantes, pero sobre
todo, no desarrolla esa competencia o capacidad que tenemos los humanos
para resolver los problemas, tal como es la aplicación de un método, de una
metodología, la cual incluye una serie de pasos lógicos, y a veces
ilógicos, que constituyen una forma gradual, procedimental, ingeniosa,
creativa para solucionar cualquier clase de problema, con sus excepciones
claro está, tales como los de índole o connotaciones matemáticas,
excluyendo aquellos como la típica generación de tablas de números, manejo
de factoriales, de secuencias particulares de términos y otros bien
conocidos.
El manejo de los problemas no consiste en buscarles la solución instantánea
a partir de la sintaxis de los programas, sino por medio de una técnica
combinatoria que permita comprender, entender en su totalidad el problema,
puesto que en la medida en que se le comprenda, vendrá en consecuencia la
resolución del mismo. Hay que advertir que cuando la sintaxis falte, es
necesario recurrir a la resolución de problemas combinatoriales,
metodología ésta cuyo procedimiento se puede resumir en los siguientes
pasos y la cual es fácil de aplicar, y sobre todo, que todo alumno de
ingeniería debe conocer.
La metodología que proponemos parte con la Descripción del Problema, esto
es, el texto que nos permite enterarnos de qué es lo que se pretende
resolver; qué se entiende por solución. Luego, como segundo elemento
tenemos un Análisis del Dominio, que nos permite identificar los medios, en
su sentido más amplio, de que disponemos para resolver el problema en
cuestión. Una vez clarificados los dos primeros puntos, tarea no siempre
sencilla, nos enfrentamos al tercer paso: la Búsqueda de Representaciones
Operacionales. Esto resulta de alguna complejidad, ya que sabemos que en
este punto la imaginación nos puede llevar a representaciones difíciles de
operacionalizar, pero entendemos que es parte importante del juego del
aprendizaje no podar tempranamente ideas no tradicionales. Eso será en
parte responsabilidad de la etapa siguiente, la Selección de una
Representación. Aquí en base a criterios operacionales, se deberá optar por
alguna de las eventuales representaciones generadas en el punto anterior.
Es claro que puede haber consenso al desarrollar un problema particular en
la elección de una representación, y no ser necesaria la fase de Selección,
pero nos interesa ilustrar el andamiaje del método general.
La siguiente etapa, Identificación de Estructuras de Control, nos relaciona
con lo que hemos llamado un Seudolenguaje, ya que de su potencialidad
nacerán las distintas formas de expresar los procesamientos que estarán
permitidos. Esto implica que el Seudolenguaje mencionado debe estar
relacionado fuertemente con las estructuras de control disponibles en los
lenguajes de programación, por una parte, y con una restricción que
implique un cierto grado de formalismo por otra, para ir puliendo aquellas
conceptualizaciones que el lenguaje natural no precisa suficientemente. Del
Seudolenguaje hablaremos en el próximo punto. Una vez identificadas estas
estructuras de control estamos en condiciones de generar el seudoprograma
que guiará el proceso de solución del problema planteado, fase que hemos
llamado Estructuración de la Solución.
Es importante notar que lo que hasta aquí hemos llegado a construir es un
algoritmo, que todavía es independiente de los lenguajes de programación, y
que, en su desarrollo, nos ha permitido focalizarnos más en el problema
mismo a resolver que en las herramientas destinadas a su implementación.
Eso nos parece un logro importante[2].
Es interesante anotar que el procedimiento o metodología consistente en los
cinco pasos o etapas, constituye todo un algoritmo por medio del cual se
diferencia las entradas con la descripción del problema y el análisis del
dominio; que sucede unos procesos, tales como la selección de una
representación y la búsqueda de representaciones operacionales y la
identificación de estructuras de control; y al final se encuentra una
salida, la cual no puede ser otra que la estructuración de la solución.
Todo estudiante de ingeniería que se someta a esta metodología estará en
capacidad de afrontar cualquier problema de sus estudios, de su carrera y
de sus trabajos u obras profesionales, es una forma estupenda para
comprender verdaderamente un problema, no es tan rápida como la fórmula de
la sintaxis, pero si es claro que entenderá completamente el problema y
como es de esperarse, la solución vendrá inevitablemente en forma correcta
y contextualizada.
CONCLUSIONES
El estudiante de ingeniería civil no debe dedicarse únicamente a utilizar
la sintaxis para resolver los problemas de su carrera o de sus estudios,
por cuanto incurre en el error más grave que puede cometer un alumno de
esta ciencia, tal como es la de querer buscar la solución de un problema
sin haberlo comprendido en su complejidad.
Los problemas que surjan en las distintas especialidades de la ingeniería
son dignos de aplicarles la resolución combinatoria, puesto que cada uno de
ellos que aparezca hay que entenderlos, para que así se forme la costumbre
en el ingeniero de hacer un estudio verdaderamente científico al mismo, y
no esperar que con la sola sintaxis se seguirán resolviendo todos los que
encuentre en sus estudios o trabajos profesionales.
La metodología de la resolución combinatoria de problemas es una técnica
que permite al ingeniero practicante de los lenguajes de programación
asumir como todo un profesional o científico los problemas que se le
aparezcan, y podrá asumirlos con todas las garantías para resolverlos de
una manera idónea, ética y científica. Esta metodología transforma a los
jóvenes ingenieros en unos veteranos consumados a pesar de sus cortas
edades, puesto que los métodos pueden llenar los vacios que muchos han
llenado con los años y la experiencia.
BIBLIOGRAFÍA
Computación.
http:// mago. blogsome. com
JAIME A., Pérez T., GOJENOLA K., "Una Experiencia para la Mejora en los
Resultados de las Prácticas de Programación", III Congreso Iberoamericano
de Educación Superior en Computación.
PINNINGHOFF J. M. Angélica et al. Una proposición para la enseñanza de
lenguajes de programación en ingeniería. Computación, Concepción, Chile,
1994.
RODRÍGUEZ, Miguel, "Metodología de la Programación", McGraw-Hill, 1991.
RUIZ, Edgar. Lenguaje de programación. Conceptos y paradigmas. Buenos
Aires: Atenea, 2002.
SETHI, Ravi, "Lenguajes de Programación Conceptos y Constructores",
Addison-Wesley Iberoamericana, 1992.
www.lenguajes-de-programación.com
www.um.es
-----------------------
[1] Pinninghoff J. M. Angélica et al. Una proposición para la enseñanza de
lenguajes de programación en ingeniería.
[2] Ibíd. pág. 15