Como hacer un programa de computadora

Como hacer un programa de computadora

Atom

Un programa de ordenador suele ser escrito por un programador en un lenguaje de programación. A partir del programa en su forma legible para el ser humano de código fuente, un compilador o ensamblador puede derivar el código máquina, una forma que consiste en instrucciones que el ordenador puede ejecutar directamente. También se puede ejecutar un programa de ordenador con la ayuda de un intérprete.
Un conjunto de programas informáticos, bibliotecas y datos relacionados se denomina software. Los programas informáticos pueden clasificarse según su funcionalidad, como software de aplicación y software de sistema. El método subyacente utilizado para algún cálculo o manipulación se conoce como algoritmo.
Los algoritmos para descifrar códigos existen desde hace siglos. En el siglo IX, el matemático árabe Al-Kindi describió un algoritmo criptográfico para descifrar un código encriptado, en A Manuscript On Deciphering Cryptographic Messages. En él se describe por primera vez el criptoanálisis por análisis de frecuencia, el primer algoritmo de descifrado de códigos[2].
Las primeras máquinas programables precedieron a la invención del ordenador digital. Ya en el siglo IX, los hermanos persas Banu Musa inventaron un secuenciador musical programable y describieron un flautín mecánico automatizado en el Libro de los ingenios[3][4] En 1206, el ingeniero árabe Al-Jazari inventó una caja de ritmos programable en la que se podían hacer autómatas mecánicos musicales para tocar diferentes ritmos y patrones de tambor[5] En 1801, Joseph-Marie Jacquard ideó un telar que tejía un patrón siguiendo una serie de tarjetas perforadas. Los patrones podían tejerse y repetirse mediante la disposición de las tarjetas[6].

Paréntesis

Este tutorial asume que estás diseñando un programa informático independiente que se ejecuta con una interfaz gráfica de usuario o de línea de comandos convencional, pero muchas de las técnicas también pueden aplicarse a programas que formarán parte de un sistema más grande. Es el siguiente de una serie después de «Así que te acaban de asignar tu primer trabajo de programación» y amplía lo que ocurre en el paso 7 de ese tutorial: Esbozar un plan de ataque. Te presentará los principios más importantes del diseño de programas y repasará algunos ejemplos ilustrativos y específicos.
Un programa autónomo es aquel que se justifica por sí mismo, como un procesador de textos o un juego, pero incluso si fuera un engranaje de un sistema más grande seguiría teniendo las mismas cualidades: se centraría en un solo trabajo, tomaría algún tipo de entrada que el sistema produce y lo transformaría en algún tipo de salida que el usuario o el sistema consumen. Algunos ejemplos de buenos programas autónomos son:
El primer grupo de programas son todos útiles por sí mismos, pero el segundo grupo necesita algo más para completarlos, como un servidor web o un servidor de correo electrónico. Incluso el reproductor de MP3 necesita un programa que pueda crear nuevos archivos MP3 para su reproducción. El impacto para ti es que el segundo conjunto de programas tiene que cooperar con algún tipo de protocolo o formato de archivo que no has diseñado tú mismo, por lo que se convierten en parte de tu especificación. En este tutorial voy a ignorar ese aspecto para poder concentrarme en lo básico.

Retroalimentación

La programación de ordenadores es el proceso de diseñar y construir un programa informático ejecutable para lograr un resultado informático específico o realizar una tarea concreta. La programación implica tareas como: el análisis, la generación de algoritmos, la elaboración de perfiles de precisión y consumo de recursos de los algoritmos, y la implementación de los algoritmos en un lenguaje de programación elegido (lo que se conoce comúnmente como codificación)[1][2] El código fuente de un programa se escribe en uno o varios lenguajes inteligibles para los programadores, en lugar de en código máquina, que se ejecuta directamente en la unidad central de procesamiento. El objetivo de la programación es encontrar una secuencia de instrucciones que automatice la realización de una tarea (que puede ser tan compleja como un sistema operativo) en un ordenador, a menudo para resolver un problema determinado. Por lo tanto, una programación competente suele requerir conocimientos en varias materias diferentes, como el conocimiento del dominio de la aplicación, los algoritmos especializados y la lógica formal.
Entre las tareas que acompañan y están relacionadas con la programación se encuentran: las pruebas, la depuración, el mantenimiento del código fuente, la implementación de sistemas de construcción y la gestión de artefactos derivados, como el código máquina de los programas informáticos. Estas tareas podrían considerarse parte del proceso de programación, pero a menudo se utiliza el término desarrollo de software para este proceso más amplio, reservando el término programación, implementación o codificación para la escritura real del código. La ingeniería de software combina técnicas de ingeniería con prácticas de desarrollo de software. La ingeniería inversa es un proceso relacionado utilizado por diseñadores, analistas y programadores para entender y recrear/reimplementar[3]:3

Spreadsh…

El término «programador» puede utilizarse para referirse a un desarrollador de software, ingeniero de software, informático o analista de software. Sin embargo, las personas que ejercen estas profesiones suelen tener otros conocimientos de ingeniería de software además de la programación. Por esta razón, el término programador se considera a veces una simplificación excesiva de estas otras profesiones.
Esto ha suscitado un gran debate entre desarrolladores, analistas, informáticos, programadores y personas ajenas a la profesión que siguen desconcertadas por las sutiles diferencias entre estas ocupaciones. Dentro de la ingeniería del software, la programación (la implementación) se considera una fase del proceso de desarrollo del software.
El siglo XXI ha traído consigo una cantidad extraordinaria de progreso tecnológico. En el centro de esta tecnología moderna se sitúan los programadores informáticos, con las habilidades tecnológicas para crear y navegar por cualquier nuevo proyecto que se les presente.
El trabajo de los programadores informáticos es tomar los diseños creados por los desarrolladores e ingenieros de software y convertirlos en conjuntos de instrucciones que los ordenadores pueden seguir. Estas instrucciones dan lugar a las plataformas de las redes sociales, los programas de procesamiento de textos, los navegadores, etc. que la gente utiliza cada día.