Programa de ordenador o computadora (software) De Wikipedia, la enciclopedia libre. Software -también conocido como programática y aplicación informática- es la parte lógica del ordenador, esto es, el conjunto de instrucciones (programas) que puede ejecutar el hardware para la realización de las tareas de computación a las que se destina. Es por tanto un campo de estudio de la informática. Probablemente la definición más formal de software es la atribuida a la IEEE en su estándar 729: la suma total de los programas de cómputo, procedimientos, reglas [,] documentación y datos asociados que forman parte de las operaciones de un sistema de cómputo (Ver: IEEE Std 729-1993, IEEE Software Engineering Standard 729-1993: Glossary of Software Engineering Terminology. IEEE Computer Society Press, 1993). Bajo esta definición el concepto de software va más allá de los programas de cómputo en sus distintas versiones: código fuente,binario o código ejecutable. El software se puede presentar en dos formas: el código fuente escrito por personas, el código objeto usualmente en la forma de archivos binarios, ejecutables directamente en una arquitectura de ordenador determinada. Los programas que traducen el código fuente de los programas en ejecutables se llaman compiladores. Programática se divide en dos categorías principales: los sistemas operativos las aplicaciones de usuario. Programación De Wikipedia, la enciclopedia libre. Programación es el acto de crear un programa de computadora, 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. Software es el sustantivo que denomina a los programas y datos de computadora. Tabla de contenidos [mostrar] [editar] Programas y algoritmos Un algoritmo es una secuencia finita y ordenada de instrucciones que han de seguirse para resolver un problema. Un programa normalmente implementa (especifica en un lenguaje de programación concreto) un algoritmo. Puede haber programas que no se ajusten a un algoritmo (pueden no terminar nunca), en cuyo caso se denomina procedimiento a tal programa. Los programas suelen subdividirse en partes menores (módulos), de modo que la complejidad algorítmica de cada una de las partes es menor que la del programa completo, lo cual ayuda al desarrollo del programa. Según Niklaus Wirth un programa está formado por algoritmos y estructuras de datos. [editar] Compilación El programa escrito en un lenguaje de programación de alto nivel (comprensible por el ser humano, aunque se suelen corresponder con lenguajes formales descritos por gramáticas independientes del contexto) no es inmediatamente ejecutable en un ordenador. 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 ha de someterse 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 los usuarios de Windows) conlleva dos pasos. El primer paso se llama compilación (propiamente dicho) y traduce el código fuente escrito en un lenguaje de alto nivel a código objeto (más cercano al lenguaje máquina). El segundo paso se llama enlazado (o linkado del inglés link) y traduce el código objeto a código máquina. Un programa podría tener partes escritas en varios lenguajes, que se podrían compilar de forma independiente y enlazar juntas para formar un único ejecutable, aunque no es una práctica habitual. [editar] Programación e ingeniería del software 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 tiene los siguientes pasos: 1. Reconocer la necesidad de un programa para solucionar un problema ó identificar la posibilidad de automatización de una tarea. 2. Recoger los requisitos del programa. Debe quedar claro qué es lo que debe hacer el programa y para qué se necesita. 3. 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. 4. Diseñar la arquitectura del programa. Se debe descomponer el programa en partes de de complejidad abordable. 5. 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. 6. 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 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 únicamente en escribir el código. El término coder se refiere al que únicamente se centra en el paso de codificación (escritura del código), por lo que a veces se usa de forma despectiva. [editar] Referencias históricas La primera programadora de computadora conocida fue Ada Lovelace, hija de Anabella y Lord Byron (el poeta). Anabella le dio el amor por las matemáticas a Ada, quien después de conocer a Charles Babbage, tradujo y amplió una descripción de su máquina analítica. Incluso aunque Babbage nunca completó la construcción de cualquiera de sus máquinas, el trabajo Ada hizo en éstas le hizo ganarse el título de primer programador de computadoras del mundo. El nombre del lenguaje de programación Ada fue escogido como homenaje a esta programadora. (para hacer: encuentre el nombre de la primera programadora para terminar los 5 pasos, incluyendo la compilación y la prueba.) Alan Turing es frecuentemente considerado el padre de la ciencia de la computación, y por extensión, de la programación. Participó activamente en el diseño y programación de una computadora para romper el código alemán Enigma durante la Segunda Guerra Mundial. Lenguaje de programación De Wikipedia, la enciclopedia libre. Lenguaje de programación es un conjunto de sintaxis y reglas semánticas que definen los programas del computador. Es una técnica estándar de comunicación para entregarle instrucciones al computador. Un lenguaje le da la capacidad al programador de especificarle al computador, qué tipo de datos actúan y que acciones tomar bajo una variada gama de circunstacias, utilizando un lenguaje relativamente proximo al lenguaje humano. Un programa escrito en un lenguaje de programación necesita pasar por un proceso de compilación, es decir, ser traducido al lenguaje de máquina para que pueda ser ejecutado por el ordenador. Los lenguajes de programación pueden ser clasificados de acuerdo a diversos criterios: Lenguajes interpretados Lenguajes compilados Paradigma de programación o Programación orientada a objetos o Programación estructurada o Programación lógica o Programación funcional Nivel de Abstracción o Lenguajes de bajo nivel o Lenguajes de alto nivel Generación o Primera generación o Segunda generación o Tercera generación o Cuarta generación o Quinta generación [editar] Lista de lenguajes de programación Ada ASP ASP.NET ALGOL APL AWK B BASIC BCPL Befunge C C++ C# Clipper COBOL Delphi Dylan Eiffel Forth FORTRAN Haskell INTERCAL Java Joy Lexico Lisp Logo Lua Miranda ML Modula-2 Oberon Objective-C Ocaml Pascal PHP PL/1 Perl PostScript Prolog Python Ruby SQL Scheme: una variante de Lisp Simula Smalltalk Snobol TCL Visual Basic Visual Foxpro [editar] Tipos de lenguajes Fuente: http://es.wikipedia.org/wiki/Programa_de_ordenador_o_computadora_%28software%29 Lenguajes declarativos Lenguajes imperativos Lenguajes funcionales Lenguajes esotéricos