You are on page 1of 5

La programacin La programacin es el proceso de disear, escribir, probar, depurar y mantener el cdigo fuente de programas computacionales.

El cdigo fuente es escrito en un lenguaje de programacin. El propsito de la programacin es crear programas que exhiban un comportamiento deseado. El proceso de escribir cdigo requiere frecuentemente conocimientos en varias reas distintas, adems del dominio del lenguaje a utilizar, algoritmos especializados y lgica formal. Programar no involucra necesariamente otras tareas tales como el anlisis y diseo de la aplicacin (pero si el diseo del cdigo), aunque si suelen estar fusionadas en el desarrollo de pequeas aplicaciones. Utilidad Una utilidad es una herramienta que realiza:

Tareas de mantenimiento Soporte para la construccin y ejecucin de programas Las tareas en general

En donde se incluyen las bibliotecas de sistema, middleware, herramientas de desarrollo, etc. Entre ellas podemos nombrar cifrado y descifrado de archivos, compresin de archivos, desfragmentadores de disco, editores de texto, respaldo, etc. Importancia de la utilidad Es importante porque es una herramienta que nos sirve de soporte para la construccin y la ejecucin de programas.

Los programas Un programa informtico es un conjunto de instrucciones que una vez ejecutadas realizarn una o varias tareas en una computadora. Sin programas, estas mquinas no pueden funcionar. Al conjunto general de programas, se le denomina software, que ms genricamente se refiere al equipamiento lgico o soporte lgico de una computadora digital. Programas que se auto-modifican Un programa en ejecucin se trata de forma diferente que los datos en los cuales opera. De cualquier forma, en algunos casos sta distincin es ambigua, especialmente cuando un programa se modifica a s mismo. El programa modificado es secuencialmente ejecutado como parte del mismo programa. Se pueden escribir programas auto-modificables en lenguajes como Lisp, COBOL y Prol. Programas empotrados en hardware El microcontrolador a la derecha de la Memoria USB est controlada por un firmware empotrado. Algunos programas estn empotrados en el hardware. Una computadora con arquitectura de programas almacenados requiere un programa inicial almacenado en su ROM para arrancar. El proceso de arranque es para identificar e inicializar todos los aspectos del sistema, desde los registros del procesador, controladores de dispositivos hasta el contenido de la memoria RAM.4 Seguido del proceso de inicializacin, este programa inicial carga al sistema operativo e inicializa al contador de programa para empezar las operaciones normales. Independiente de la computadora, un dispositivo de hardware podra tener firmware empotrado para el control de sus operaciones. El firmware se utiliza cuando se espera

que el programa cambie en raras ocasiones o nunca, o cuando el programa no debe perderse cuando haya ausencia de energa. Programas cargados manualmente Interruptores para la carga manual en una Data General Nova 3. Los programas histricamente se cargaron manualmente al procesador central mediante interruptores. Una instruccin era representada por una configuracin de estado abierto o cerrado de los interruptores. Despus de establecer la configuracin, se ejecutaba un botn de ejecucin. Este proceso era repetitivo. Tambin, histricamente los programas se cargaban manualmente mediante una cinta de papel o tarjetas perforadas. Despus de que el programa se cargaba, la direccin de inicio se estableca mediante interruptores y el botn de ejecucin se presionaba. Programas generados automticamente La programacin automtica es un estilo de programacin que crea cdigo fuente mediante clases genricas, prototipos, plantillas, aspectos, y generadores de cdigo para aumentar la productividad del programador. El cdigo fuente se genera con herramientas de programacin tal como un procesador de plantilla o un IDE. La forma ms simple de un generador de cdigo fuente es un procesador macro, tal como el preprocesador de C, que reemplaza patrones de cdigo fuente de acuerdo a reglas relativamente simples. Lenguaje de los programas Un lenguaje de programacin es un idioma artificial diseado para expresar computaciones que pueden ser llevadas a cabo por mquinas como las computadoras. Pueden usarse para crear programas que controlen el comportamiento fsico y lgico de una

mquina, para expresar algoritmos con precisin, o como modo de comunicacin humana.1 Est formado por un conjunto de smbolos y reglas sintcticas y semnticas que definen su estructura y el significado de sus elementos y expresiones. Al proceso por el cual se escribe, se prueba, se depura, se compila y se mantiene el cdigo fuente de un programa informtico se le llama programacin. Tambin la palabra programacin se define como el proceso de creacin de un programa de computadora, mediante la aplicacin de procedimientos lgicos, a travs de los siguientes pasos:

El desarrollo lgico del programa para resolver un problema en particular. Escritura de la lgica del programa empleando un lenguaje de programacin especfico (codificacin del programa). Ensamblaje o compilacin del programa hasta convertirlo en lenguaje de mquina. Prueba y depuracin del programa. Desarrollo de la documentacin. Tipos de lenguajes

Tipos estticos versus tipos dinmicos En lenguajes con tipos estticos se determina el tipo de todas las expresiones antes de la ejecucin del programa (tpicamente al compilar). Por ejemplo, 1 y (2+2) son expresiones enteras; no pueden ser pasadas a una funcin que espera una cadena, ni pueden guardarse en una variable que est definida como fecha. Los lenguajes con tipos estticos pueden manejar tipos explcitos o tipos inferidos. En el primer caso, el programador debe escribir los tipos en determinadas posiciones textuales. En el segundo caso, el

compilador infiere los tipos de las expresiones y las declaraciones de acuerdo al contexto. Tipos dbiles y tipos fuertes Los lenguajes dbilmente tipados permiten que un valor de un tipo pueda ser tratado como de otro tipo, por ejemplo una cadena puede ser operada como un nmero. Esto puede ser til a veces, pero tambin puede permitir ciertos tipos de fallas que no pueden ser detectadas durante la compilacin o a veces ni siquiera durante la ejecucin. Los lenguajes fuertemente tipados evitan que pase lo anterior. Cualquier intento de llevar a cabo una operacin sobre el tipo equivocado dispara un error. A los lenguajes con tipos fuertes se les suele llamar de tipos seguros.

You might also like