Fundamentos de los Programas Informáticos: De Instrucciones a Aplicaciones Complejas
Enviado por Programa Chuletas y clasificado en Informática y Telecomunicaciones
Escrito el en español con un tamaño de 4,94 KB
Programas Informáticos
Los programas de ordenador (http://en.wikipedia.org/wiki/Computer_program) son listas de instrucciones que la computadora ejecuta. Estas pueden variar desde unas pocas instrucciones para una tarea sencilla hasta listas complejas que incluyen tablas de datos. Muchos programas contienen millones de instrucciones, ejecutadas repetidamente. Una PC moderna típica (http://en.wikipedia.org/wiki/Personal_computer) (alrededor del año 2005) podía ejecutar cerca de 3 mil millones de instrucciones por segundo. Las extraordinarias capacidades de los ordenadores no radican en la complejidad de las instrucciones individuales, sino en la ejecución de millones de instrucciones sencillas organizadas por programadores (http://en.wikipedia.org/wiki/Programmer).
En la práctica, las instrucciones no se escriben directamente en lenguaje de máquina. Esta forma de programación es lenta y propensa a errores, lo que reduce la productividad. En cambio, los programadores describen las acciones en un lenguaje de programación (http://en.wikipedia.org/wiki/Programming_language) de "alto nivel", que luego se traduce a lenguaje de máquina mediante programas especiales como intérpretes (http://en.wikipedia.org/wiki/Interpreter_%%28computing%29) y compiladores (http://en.wikipedia.org/wiki/Compiler). Algunos lenguajes, como el Lenguaje Ensamblador (http://en.wikipedia.org/wiki/Assembly_Language), se asemejan al lenguaje de máquina (lenguajes de bajo nivel), mientras que otros, como Prolog (http://en.wikipedia.org/wiki/Prolog), se basan en principios abstractos (lenguajes de alto nivel). La elección del lenguaje depende de la tarea, las habilidades del programador, las herramientas disponibles y las necesidades del cliente (por ejemplo, proyectos militares de EE. UU. a menudo requerían el lenguaje de programación Ada (http://en.wikipedia.org/wiki/Ada_programming_language)).
Software informático (http://en.wikipedia.org/wiki/Computer_software) es un término más inclusivo que abarca los programas y el material auxiliar necesario para realizar tareas útiles. Por ejemplo, un videojuego (http://en.wikipedia.org/wiki/Computer_and_video_games) incluye el programa, imágenes, sonidos y otros materiales para crear el entorno virtual. Una aplicación informática (http://en.wikipedia.org/wiki/Computer_application) es una pieza de software para muchos usuarios, a menudo en un entorno comercial. Un ejemplo moderno es la suite de oficina (http://en.wikipedia.org/wiki/Office_suite), un conjunto de programas para tareas de oficina comunes.
Pasar de instrucciones simples a programas de aplicación complejos implica que muchos programas sean grandes y complejos. Windows XP, por ejemplo, tiene aproximadamente 40 millones de líneas de código fuente (http://en.wikipedia.org/wiki/Source_lines_of_code) en lenguaje C++ (http://en.wikipedia.org/wiki/C%2B%2B) [10] http://en. wikipedia.org / wiki / Computer>. Existen proyectos aún mayores, construidos por grandes equipos. La gestión de esta complejidad es clave: los lenguajes y prácticas de programación permiten dividir la tarea en subtareas más pequeñas, manejables por un programador individual.
Sin embargo, el desarrollo de software sigue siendo lento, impredecible y propenso a errores. La ingeniería de software (http://en.wikipedia.org/wiki/Software_engineering) busca hacer el proceso más rápido, productivo y mejorar la calidad del producto final.
Modelos Computacionales
Un problema o modelo computacional se puede formalizar para transformarse en un programa de ordenador. La computabilidad es un problema importante en la investigación de humanidades, ciencias sociales y psicología. Por ejemplo, los enfoques sistémicos modernos, cognitivos y socio-cognitivos [11] http://en.wikipedia.org/wiki/Computer desarrollan diferentes intentos de computarizar la especificación de su conocimiento "blando".