¿Qué es la programación?

  1. Concepto
  2. Un poco de historia
  3. La esencia de la programación
  4. Algoritmos
  5. Lenguajes de programación

Concepto

La programación informática es el proceso por medio del cual se diseña, codifica, limpia y protege el código fuente de programas computacionales. A través de la programación se dictan los pasos a seguir para la creación del código fuente de programas informáticos. De acuerdo con ellos el código se escribe, se prueba y se perfecciona.



"La programación es la forma de conseguir que los ordenadores resuelvan problemas."

Hay dos frases clave aquí que son importantes:



Los programas de ordenador (o software) son los que hacen que los ordenadores funcionen. Sin software, las computadoras modernas son sólo máquinas complicadas para convertir la electricidad en calor. Es el software en tu computadora el que hace funcionar tu sistema operativo, el navegador, el correo electrónico, los juegos, el reproductor de películas, casi todo. La programación es una tarea creativa: no hay una manera correcta o incorrecta de resolver un problema, de la misma manera que no hay una manera correcta o incorrecta de pintar un cuadro. Hay que tomar decisiones, y una forma puede parecer mejor que otra, pero eso no significa que la otra esté equivocada. Con las habilidades y la experiencia adecuadas, un programador puede crear un software para resolver un número ilimitado de problemas, desde decirte cuándo llegará el próximo tren hasta reproducir tu música favorita. Las posibilidades sólo están limitadas por tu imaginación. ¡Por eso a nosotros, los programadores, nos encanta programar! Cuando creas un programa para una computadora, le das un conjunto de instrucciones, que se ejecutará una a una en orden, precisamente como se ha dado.


Si le dijeras a una computadora que salte de un acantilado, ¡lo haría!


  1. Girar y mirar hacia el acantilado
  2. Caminar hacia el acantilado
  3. Detenerse en el borde del acantilado
  4. Saltar del acantilado

Para más información, haga click en la siguiente imagen...

El objetivo de la programación es la de crear software, que después será ejecutado de manera directa por el hardware de la computadora, o a través de otro programa. La programación se guía por una serie de reglas y un conjunto pequeño de órdenes, instrucciones y expresiones que tienden a parecerse a una lengua natural acotada. El lenguaje de programación, son todas aquellas reglas o normas, símbolos y palabras particulares empleadas para la creación de un programa y con él, ofrecerle una solución a un problema determinado.

En resumen, la programación no es más que una explicación a la computadora de qué, en qué forma y cómo llegar al usuario. En otras palabras, es una especie de arte de traducir los deseos de una persona al lenguaje de la máquina.


Pf. Donald Knuth, "padre de la programación", acerca de la programación:
La vida cotidiana es como la programación, supongo. Si te gusta algo que puede poner la belleza en ella.


Un poco de historia

La historia de la Programación está relacionada directamente con la aparición de los computadores, que ya desde el siglo XV tuvo sus inicios con la construcción de una máquina que realizaba operaciones básicas y raíces cuadradas (Gottfried Wilheml von Leibniz); aunque en realidad la primera gran influencia hacia la creación de los computadores fue la máquina diferencial para el cálculo de polinomios, proyecto no concluido de Charles Babbage (1793-1871) con el apoyo de Lady Ada Countess of Lovelace (1815-1852), primera persona que incursionó en la programación y de quien proviene el nombre del lenguaje de programación ADA creado por el DoD (Departamento de defensa de Estados Unidos) en la década de 1970.

La siguiente imagen, es un resumen de los principales hitos en la historia de la computación:

Historia de la computacion

Luego los avances en las ciencias informáticas han sido muy acelerados, se reemplazó los tubos al vacío por transistores en 1958 y en el mismo año, se sustituyeron por circuitos integrados, y en 1961 se miniaturizaron en chips de silicio. En 1971 apareció el primer microprocesador de Intel; y en 1973 el primer sistema operativo CP/M. El primer computador personal es comercializado por IBM en el año 1980.


De acuerdo a este breve viaje por la historia, la programación está vinculada a la aparición de los computadores, y los lenguajes tuvieron también su evolución. Inicialmente se programaba en código binario, es decir en cadenas de 0s y 1s, que es el lenguaje que entiende directamente el computador, tarea extremadamente difícil; luego se creó el lenguaje ensamblador, que aunque era lo mismo que programar en binario, al estar en letras era más fácil de recordar. Posteriormente aparecieron lenguajes de alto nivel, que en general, utilizan palabras en inglés, para dar las órdenes a seguir, para lo cual utilizan un proceso intermedio entre el lenguaje máquina y el nuevo código llamado código fuente, este proceso puede ser un compilador o un intérprete.


Un compilador

(software que traduce un programa escrito en un lenguaje de programación de alto nivel en lenguaje de máquina)
lee todas las instrucciones y genera un resultado; un intérprete ejecuta y genera resultados línea a línea. En cualquier caso han aparecido nuevos lenguajes de programación, unos denominados estructurados y en la actualidad en cambio los lenguajes orientados a objetos y los lenguajes orientados a eventos.



La esencia de la programación

La idea principal es crear un algoritmo y traducirlo a un lenguaje de programación. Al guía de desarrollo se le suele aconsejar que empiece a desarrollar un programa respondiendo a la pregunta: ¿Es posible implementar esta tarea de forma programada? Por ejemplo, incluso hoy en día no se puede hacer que una computadora prediga lo que sucederá en unos días. E incluso si este ejemplo no es del todo correcto, porque esta tarea es imposible en principio. Sin embargo, si se limita la tarea a predecir el comportamiento de alguna divisa en el intercambio, tal tarea se resuelve con la ayuda de un algoritmo suficientemente complejo y una gran base de datos experimental.




Algoritmos

Una vez que se haya tomado la decisión sobre la posibilidad de implementar el software en una tarea, es necesario construir un algoritmo para su solución. Es decir, es necesario describir la secuencia de pasos para resolver la tarea con el máximo detalle teniendo en cuenta todas las posibles ramas, ciclos y errores. Se puede construir un algoritmo para las operaciones diarias más simples. Por ejemplo, se puede describir el algoritmo de la preparación del té:

  1. Abrir la tetera
  2. Si no hay agua en la tetera, se le debe echar
  3. Poner la tetera en la estufa de gas
  4. Abrir el gas
  5. Encender el fuego
  6. Esperar a que el agua de la tetera hierva
  7. Colocar el sobre de té en la taza
  8. Echar el agua caliente de la tetera a la taza

Hay varias formas de describir un algoritmo:

Ejemplos de algoritmos gráficos:


Ejemplo de un algoritmo gráfico Ejemplo de un algoritmo gráfico Ejemplo de un algoritmo gráfico

Lenguajes de programación

El lenguaje de programación es el responsable de que la computadora siga paso a paso las órdenes que el programador ha diseñado en el algoritmo. Con esto se entiende que el lenguaje de programación es una especie de intermediario entre el ordenador y el usuario, para que este último pueda darle respuesta a los problemas mediante la computadora y haciendo uso de palabras (funciones), que le interpretan dicho programa al computador para la realización de ese trabajo.

Hay muchos lenguajes de programación diferentes, todos ellos con sus propios méritos, y ciertos lenguajes se adaptan mejor a determinados tipos de tareas, pero no hay un lenguaje que sea el mejor.


En este caso se programará utilizando un lenguaje llamado Phython. Phython es uno de un grupo de lenguajes llamados lenguajes de programación de propósito general, que puede ser usado para resolver una amplia variedad de problemas.


Es un pequeño programa Phython que pide al usuario que introduzca su nombre y le dice "Hola":

print("Hola y bienvenido" ) name = input("¿Cómo te llamas?") if name == "Martin"; print("¡Ese es mi nombre también!") print("Hoola" + nombre)

No necesitas ser un programador de computadoras para poder leer este código. Contiene palabras en inglés y es legible (si no comprensible). Los programas son a menudo referidos como código y por lo tanto la programación es también conocida como codificación.


Cada lenguaje de programación limita al desarrollador a un conjunto estrictamente predeterminado de palabras clave y comandos que pueden ser utilizados en el desarrollo. Hay varios niveles de lenguajes entre los cuales se distinguen:

A continuación, algunos ejemplos de lenguajes de programación de alto nivel...

lenguajesprogramacion JavaScript Java Swift o Kotlin Phython CSharp

Ahora bien, dependiendo del lenguaje que se elija, se puede hablar del tipo de programación que se va a realizar. Algunos de ellos son:


        Programación secuencial: son aquellos programas que se diseñan con directrices que van en secuencia una detrás de la otra. 
        Por ejemplo: Cobol, Basic.

        Programación estructurada: se considera así, cuando la programación es diseñada por módulos. Cada módulo realiza una tarea 
        en especial, y cuando se requiera de esa tarea, sencillamente se le hace el llamado a ese módulo. Por ejemplo: Turbo Pascal, 
        Ada, Modula.

        Programación orientada a objetos: son aquellos lenguajes que permiten la implementación de objetos dentro del diseño del mismo 
        y el usuario podrá pegar a cada objeto un código de programa. Algunos de estos son: Java, Xml, entre otros.

        Programación lógica o de lenguaje natural: son aquellos programas que se diseñan con interfaces, de tal manera que el usuario 
        pueda darle ordenes a la máquina utilizando un lenguaje simple. Por ejemplo: Prolog.

        Programación de inteligencia artificial: son aquellos programas que más se acercan a la inteligencia humana, ya que tienen la 
        capacidad de desarrollar conocimiento. Este tipo de lenguaje trabaja de una manera muy semejante a la mente humana.

    

Evolución de los lenguajes de programación:



Desplazamiento a otras páginas