You are on page 1of 3

La programaci�n es un proceso que se utiliza para idear y ordenar las acciones que

se realizar�n en el marco de un proyecto; al anuncio de las partes que componen un


acto o espect�culo; a la preparaci�n de m�quinas para que cumplan con una cierta
tarea en un momento determinado; a la elaboraci�n de programas para la resoluci�n
de problemas mediante ordenadores, y a la preparaci�n de los datos necesarios para
obtener una soluci�n de un problema.[cita requerida]

En la actualidad, la noci�n de programaci�n se encuentra muy asociada a la creaci�n


de aplicaciones inform�tica y videojuegos. 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 otros) y de otra que sea capaz de �traducirlo� a lo que se conoce como
lenguaje de m�quina, que puede comprender el microprocesador.[cita requerida]

�ndice
1 Historia
2 L�xico y programaci�n
3 Programas y algoritmos
4 Compilaci�n
5 Programaci�n e ingenier�a del software
6 Referencias hist�ricas
7 Objetivos de la programaci�n
8 Ciclo de vida del software
9 V�ase tambi�n
10 Referencias
11 Enlaces externos
Historia
Archivo:Pauscal lenguaje de .png
Ejemplo de c�digo fuente escrito en lenguaje Pauscal
Para crear un programa, y que la computadora lo interprete y ejecute las
instrucciones escritas en �l, debe escribirse en un lenguaje de programaci�n. En
sus comienzos las computadoras interpretaban solo instrucciones en un lenguaje
espec�fico, del m�s bajo nivel, conocido como c�digo m�quina, siendo �ste
excesivamente complicado para programar. De hecho solo consiste en cadenas de
n�meros 1 y 0 (sistema binario). Para facilitar el trabajo de programaci�n, los
primeros cient�ficos, que trabajaban en el �rea, decidieron reemplazar las
instrucciones, secuencias de unos y ceros, por palabras o abreviaturas provenientes
del ingl�s; las codificaron y crearon as� un lenguaje de mayor nivel, que se conoce
como Assembly o lenguaje ensamblador. Por ejemplo, para sumar se podr�a usar la
letra A de la palabra inglesa add (sumar). En realidad escribir en lenguaje
ensamblador es b�sicamente lo mismo que hacerlo en lenguaje m�quina, pero las
letras y palabras son bastante m�s f�ciles de recordar y entender que secuencias de
n�meros binarios. A medida que la complejidad de las tareas que realizaban las
computadoras aumentaba, se hizo necesario disponer de un m�todo sencillo para
programar. Entonces, se crearon los lenguajes de alto nivel. Mientras que una tarea
tan trivial como multiplicar dos n�meros puede necesitar un conjunto de
instrucciones en lenguaje ensamblador, en un lenguaje de alto nivel bastar� con
solo una. Una vez que se termina de escribir un programa, sea en ensamblador o en
algunos lenguajes de alto nivel, es necesario compilarlo, es decir, traducirlo
completo a lenguaje m�quina.1? Eventualmente ser� necesaria otra fase denominada
com�nmente link o enlace, durante la cual se anexan al c�digo, generado durante la
compilaci�n, los recursos necesarios de alguna biblioteca. En algunos lenguajes de
programaci�n, puede no ser requerido el proceso de compilaci�n y enlace, ya que
pueden trabajar en modo int�rprete. Esta modalidad de trabajo es equivalente pero
se realiza instrucci�n por instrucci�n, a medida que es ejecutado el programa.

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. Cuanto menos ambiguo es un lenguaje de programaci�n, se dice, es m�s
potente. Bajo esta premisa, y en el extremo, el lenguaje m�s potente existente es
el binario, con ambig�edad nula (lo cual lleva a pensar as� del lenguaje
ensamblador).[cita requerida]

En los lenguajes de programaci�n de alto nivel se distinguen diversos elementos


entre los que se incluyen el l�xico propio del lenguaje y las reglas sem�nticas y
sint�cticas.

Programas y algoritmos
Un algoritmo es una secuencia no ambigua, finita y ordenada de instrucciones que
han de seguirse para resolver un problema. Un programa normalmente implementa
(traduce a un lenguaje de programaci�n concreto) uno o m�s algoritmos. Un algoritmo
puede expresarse de distintas maneras: en forma gr�fica, como un diagrama de flujo,
en forma de c�digo como en pseudoc�digo o un lenguaje de programaci�n, en forma
explicativa.

Los programas suelen subdividirse en partes menores, llamadas m�dulos, de modo que
la complejidad algor�tmica de cada una de las partes sea menor que la del programa
completo, lo cual ayuda al desarrollo del programa. Esta es una pr�ctica muy
utilizada y se conoce como "refino progresivo".

Seg�n Niklaus Wirth, un programa est� formado por los algoritmos y la estructura de
datos.

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 la programaci�n son:

Programaci�n declarativa
Programaci�n estructurada
Programaci�n modular
Programaci�n orientada a objetos
Compilaci�n
El programa escrito en un lenguaje de programaci�n de alto nivel (f�cilmente
comprensible por el programador) es llamado programa fuente y no se puede ejecutar
directamente en una computadora. La opci�n m�s com�n es compilar el programa
obteniendo un m�dulo objeto, aunque tambi�n puede ejecutarse en forma m�s directa a
trav�s de un int�rprete inform�tico.

El c�digo fuente del programa se debe someter a un proceso de traducci�n para


convertirlo a lenguaje m�quina o bien a un c�digo intermedio, generando as� un
m�dulo denominado "objeto". A este proceso se le llama compilaci�n.

Habitualmente la creaci�n de un programa ejecutable (un t�pico.exe para Microsoft


Windows o DOS) conlleva dos pasos. El primer paso se llama compilaci�n (propiamente
dicho) y traduce el c�digo fuente escrito en un lenguaje de programaci�n almacenado
en un archivo de texto a c�digo en bajo nivel (normalmente en c�digo objeto, no
directamente a lenguaje m�quina). El segundo paso se llama enlazado en el cual se
enlaza el c�digo de bajo nivel generado de todos los ficheros y subprogramas que se
han mandado compilar y se a�ade el c�digo de las funciones que hay en las
bibliotecas del compilador para que el ejecutable pueda comunicarse directamente
con el sistema operativo, traduciendo as� finalmente el c�digo objeto a c�digo
m�quina, y generando un m�dulo ejecutable.

Estos dos pasos se pueden hacer por separado, almacenando el resultado de la fase
de compilaci�n en archivos objetos (un t�pico .o para Unix, .obj para MS-Windows,
DOS); para enlazarlos en fases posteriores, o crear directamente el ejecutable; con
lo que la fase de compilaci�n puede almacenarse solo de forma temporal. Un programa
podr�a tener partes escritas en varios lenguajes, por ejemplo, Java, C, C++ y
ensamblador, que se podr�an compilar de forma independiente y luego enlazar juntas
para formar un �nico m�dulo ejecutable.

You might also like