sábado, 4 de agosto de 2007

Programación

Se llama programación a la creación de un programa de computadora (Código máquina compilado e interpretado directamente desde el núcleo del sistema) o desde un script (Código fuente interpretado), un conjunto concreto de instrucciones que una computadora puede ejecutar. El programa se escribe en un lenguaje de programación, aunque también se pueda escribir directamente en lenguaje de máquina, con cierta dificultad. Un programa se puede dividir en diversas partes, que pueden estar escritas en lenguajes distintos.


Objetivos de la programación
La programación de ordenadores debe perseguir tres objetivos fundamentales:

1) Corrección: un programa es correcto si hace lo que debe hacer. Para determinar si un programa hace lo que debe es muy importante especificar claramente qué debe hacer el programa antes de desarrollarlo y una vez acabado compararlo con lo que realmente hace.
2) Claridad: es muy importante que el programa sea lo más claro y legible posible para mejorar el mantenimiento del software. Cuando se acaba de escribir el código del programa, se deben buscar errores y corregirlos. Más concretamente, cuando el programa está concluido, es necesario hacerle ampliaciones o modificaciones, según la demanda de los usuarios, esta labor puede ser llevada acabo por el mismo programador que implementó el programa o por otros.
3)Eficiencia: debe consumir la menor cantidad de recursos posible. Normalmente al hablar de eficiencia se suele hacer referencia al consumo de tiempo y/o memoria.

La eficiencia y la claridad de un programa pueden ser objetivos contrapuestos: se puede conseguir mayor claridad sacrificando parte de la eficiencia o viceversa. Pero hay que tener en cuenta que el tiempo del programador es caro, y que hoy en día el precio de los ordenadores es razonable y cada vez son más baratos.

Procesos que se debe seguir para programar:
Reconocer la necesidad de un programa para solucionar un problema ó identificar la posibilidad de automatización de una tarea.
Recoger 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 cómo debe realizar el programa las cosas que debe hacer. 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 debería resultar inmediata.
Implantar (instalar) el programa. Consiste en poner el programa en funcionamiento junto con los componentes que pueda necesitar (bases de datos, redes de comunicaciones, etc.)


La Programación de Algoritmos

La programación de algoritmos no es más que el estudio de un problema, su análisis e implementación final del mismo.
En la programación de los algoritmos encontramos tres fases fundamentales, las cuales son: identificación del problema, análisis y desarrollo del problema e implementación.
En la programación de algoritmos la identificación del problema no es más que, que es lo que se quiere hacer, para ello en esta etapa, encontramos información de entrada o inicial, que servira para el análisis del problema.
La segunda etapa o fase es analizar el problema, en esta etapa es conveniente dividir o segregar las tareas necesarias e identificadas que ayudaran a la solucion del problema dado. De esta forma se simplificaran y seran más comprensibles para su desarrollo, es recomendable siempre ir de las tareas o actividades más simples a las más complejas. En esta fase se transforma la información de entrada recibida.
La tercera etapa en la programación de algoritmos, consiste en la implantación y puesta en desarrollo del mismo, aqui se obtiene la información y resultado final resultante de las etapas anteriores.
En la programación de algoritmos, se utiliza una nomenclatura llamada seudocodigo, una vez realizados los algoritmos en seudocodigo, estos pueden ser traducidos en cualquier lenguaje de programación que lo soporte.

Compilación

El programa escrito en un lenguaje de programación (comprensible por el ser humano, aunque se suelen corresponder con lenguajes formales descritos por gramáticas independientes del contexto) no es inmediatamente ejecutado en una computadora. La opción más común es compilar el programa, aunque también puede ser ejecutado mediante un intérprete informático

El código fuente del programa se debe someter a un proceso de transformación para convertirse en lenguaje máquina, interpretable por el procesador. A este proceso se le llama compilación.

Normalmente la creación de un programa ejecutable (un típico .exe para Microsoft Windows) 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 a código en bajo nivel, (normalmente en código objeto no directamente al lenguaje máquina). El segundo paso se llama enlazado (del inglés link o linker) se junta el código de bajo nivel generado de todos los ficheros que se han mandado compilar y se añade el código de las funciones que hay el las bibliotecas del compilador para que el ejecutable pueda comunicarse con el sistemas operativo y traduce el código objeto a código máquina.

Estos dos pasos se pueden mandar hacer por separado, almacenando el resultado de la fase de compilación en archivos objetos (un típico .obj para Microsoft Windows, .o para Unix), para enlazarlos posteriormente, o crear directamente el ejecutable con lo que la fase de compilación se almacena sólo temporalmente. Un programa podría tener partes escritas en varios lenguajes (generalmente C, C++ y Asm), que se podrían compilar de forma independiente y enlazar juntas para formar un único ejecutable.

Lenguajes de Programación

La programación de algoritmos no es más que el estudio de un problema, su análisis e implementación final del mismo.
En la programación de los algoritmos encontramos tres fases fundamentales, las cuales son: identificación del problema, análisis y desarrollo del problema e implementación.
En la programación de algoritmos la identificación del problema no es más que, que es lo que se quiere hacer, para ello en esta etapa, encontramos información de entrada o inicial, que servirá para el análisis del problema.
La segunda etapa o fase es analizar el problema, en esta etapa es conveniente dividir o segregar las tareas necesarias e identificadas que ayudaran a la solución del problema dado. De esta forma se simplificaran y serán más comprensibles para su desarrollo, es recomendable siempre ir de las tareas o actividades más simples a las más complejas. En esta fase se transforma la información de entrada recibida.
La tercera etapa en la programación de algoritmos, consiste en la implantación y puesta en desarrollo del mismo, aquí se obtiene la información y resultado final resultante de las etapas anteriores.
En la programación de algoritmos, se utiliza una nomenclatura llamada seudo código, una vez realizados los algoritmos en seudo código, estos pueden ser traducidos en cualquier lenguaje de programación que lo soporte.

Aportes de la Programación

1)Uno de los aportes de la programación es el desarrollo de la tecnología como ser la automatización de los procesos dando como resultado el rendimiento y productividad generando con esto ahorros a las empresas que practican este sistema.
2) Otro aporte es que hay mejor almacenamiento de datos.
3) Nos ayuda a resolver los problemas que pueden surgir más rápido y eficaz que de manera manual.
4)En los supermercados nos ahorra tiempo al momento de ir cancelar los productos que estamos comprando. Imaginemos de que no hubiera una caja registradora entonces el cajero tendria que saber cuantas libras de tal producto llevamos comenzaria ha usar una calculadora a multiplicar el precio por la libra y eso llevaría tiempo y ahora con las cajas registradoras el cajero se ahorra ese trabajo porque practicamente el programa realiza todo el trbajo de calcular.
Otro caso seria en los bancos antes cuando nos giraban dinero digamos que de otro país tendriamos que esperar un semana para poder recibir el dinero ahora con los programas desarrollados los recibimos instante gracias a los programas desarrollados.