LA PROGRAMACIÓN
La programación es el proceso de crear un conjunto de instrucciones que le dicen a una computadora como realizar algún tipo de tarea. Pero no solo la acción de escribir un código para que la computadora o el software lo ejecute. Incluye, además, todas las tareas necesarias para que el código funcione correctamente y cumpla el objetivo para el cual se escribió.
En la actualidad, la noción de programación se encuentra muy asociada a
la creación de aplicaciones de informática y videojuegos . En este sentido, es el
proceso por el cual una persona desarrolla un programa, valiéndose de una
herramienta que le permita escribir el código (el cual puede estar en uno o
varios lenguajes, como C++ Java y PyThon , entre
muchos otros) y de otra que sea capaz de "traducirlo" a lo que se conoce
Como un Lenguaje de máquina, que puede
"comprender" el microprocesador.
Léxico y programación
La programación se rige por reglas y un conjunto más o menos reducido de
órdenes, expresiones, instrucciones y comandos que tienden a asemejarse a
una lengua
natural acotada (en inglés); y que
además tienen la particularidad de una reducida ambigüedad.
En los lenguajes de programación se distinguen diversos elementos entre los que se incluyen el léxico propio del lenguaje y las reglas semánticas y sintácticas. Dentro del léxico, generalmente se utilizan símbolos y palabras con funciones específicas dentro del lenguaje. Estas palabras suelen tomarse del inglés y no se las puede utilizar de manera diferente: son las denominadas palabras reservadas. Otra particularidad de los lenguajes es el permitir a los programadores el uso de comentarios: frases o párrafos sin funcionalidad en el programa, que los compiladores o intérpretes descartan y solo están destinados a ser leídos por personas; así se pueden dejar explicaciones que ayuden a entender el código a quien lo lea.
La programación puede seguir muchos enfoques, o paradigmas, es decir,
diversas maneras de formular la resolución de un problema dado. Algunos de los
principales paradigmas de programación son:
- Programación declarativa
- Programación imperativa
- Programación estructurada
- Programación modular
- Programación orientada a objetos
- Programación orientada a eventos
Programación e ingeniería del
Existe una tendencia a identificar el proceso de creación de un programa
informático con la programación, que es cierta cuando se trata de programas
pequeños para uso personal, y que dista de la realidad cuando se trata de
grandes proyectos.
El proceso de creación de software, desde el punto de vista de la ingeniería, incluye mínimamente los
siguientes pasos:
·
Reconocer la necesidad de un programa para solucionar
un problema o identificar la posibilidad de automatización de una tarea.
·
Recolectar los requisitos del programa. Debe quedar
claro qué es lo que debe hacer el programa y para qué se necesita.
·
Realizar el análisis de los requisitos del programa.
Debe quedar claro qué tareas debe realizar el programa. Las
pruebas que comprueben la validez del programa se pueden especificar en esta
fase.
·
Diseñar la arquitectura del programa. Se debe descomponer
el programa en partes de complejidad abordable.
·
Implementar el programa. Consiste en realizar un
diseño detallado, especificando completamente todo el funcionamiento del
programa, tras lo cual la codificación (programación propiamente dicha) debería
resultar inmediata.
·
Probar el programa. Comprobar que pasan pruebas que se
han definido en el análisis de requisitos.
·
Implantar (instalar) el programa. Consiste en poner el
programa en funcionamiento junto con los componentes que sean necesarios (bases
de datos, redes de comunicaciones, etc.).
La ingeniería del software se centra en los pasos de planificación y
diseño del programa, mientras que antiguamente (programación artesanal) la
realización de un programa consistía casi únicamente en escribir el código,
bajo solo el conocimiento de los requisitos y con una modesta fase de análisis
y diseño.
Objetivos de la programación
La programación debe perseguir la obtención de programas de calidad.
Para ello se establece una serie de factores que determinan la calidad de un
programa. Algunos de los factores de calidad más importantes son los
siguientes:
- Correctitud. Un programa es correcto si hace lo que debe hacer tal y como se estableció en las fases previas a su desarrollo. Para determinar si un programa hace lo que debe, es muy importante especificar claramente qué debe hacer el programa antes de su desarrollo y, una vez acabado, compararlo con lo que realmente hace. Al verificar este comportamiento está cumpliendo dicho objetivo.
- Claridad. Es muy
importante que el programa sea lo más claro y legible posible, para
facilitar tanto su desarrollo como su posterior mantenimiento. Al elaborar
un programa se debe intentar que su estructura sea sencilla y coherente,
así como cuidar el estilo de programación. De esta forma se ve facilitado
el trabajo del programador, tanto en la fase de creación
como en las fases posteriores de corrección de errores, ampliaciones,
modificaciones, etc. Fases que pueden ser realizadas incluso por otro
programador, con lo cual la claridad es aún más necesaria para que otros
puedan continuar el trabajo fácilmente. Algunos programadores llegan
incluso a utilizar Arte ASCII para delimitar secciones
de código; una práctica común es realizar aclaraciones en el mismo código
fuente utilizando líneas de comentarios. Contrariamente,
algunos programadores realizan acciones que tienden a introducir confusión
para impedir un análisis cómodo a otros programadores, recurren al uso
de código ofuscado,
- Eficiencia. Se
trata de que el programa, además de realizar aquello para lo que fue
creado (es decir, que sea correcto), lo haga gestionando de la mejor forma
posible los recursos que utiliza. Normalmente, al hablar de eficiencia de
un programa, se suele hacer referencia al tiempo que tarda en realizar la
tarea para la que ha sido creado y a la cantidad de memoria que necesita,
pero hay otros recursos que también pueden ser de consideración para
mejorar la eficiencia de un programa,
dependiendo de su naturaleza (espacio en disco que utiliza, tráfico en la
red que genera, etc.).
- Portabilidad. Un programa es portable cuando tiene la capacidad de poder ejecutarse en una plataforma, ya sea hardware o software, diferente a aquella en la que se desarrolló. La portabilidad es una característica muy deseable para un programa, ya que permite, por ejemplo, a un programa que se ha elaborado para el sistema GNU/Linux que también pueda ejecutarse en la familia de sistemas operativos Windows. Consecuentemente el programa puede llegar a más usuarios.
No comments:
Post a Comment