Programación para todos: Programas

View this thread on: d.buzz | hive.blog | peakd.com | ecency.com
·@cervantes·
0.000 HBD
Programación para todos: Programas
<html>
<br>
<h2>Luego de un reparador descanso, ¡continuemos nuestro camino!</h2>
<br>
En nuestro viaje ya hemos aprendido que son los datos, la información y la informática, los que han tenido un rol fundamental para el desarrollo de la humanidad.

Descubrimos el nacimiento de uno de los instrumentos más poderosos creado en la historia ; la computadora, conociendo su estructura y funcionamiento a grandes rasgos.

Pero hay algo que no quedó muy claro, ¿que es un programa?. En este artículo responderemos está pregunta, y comenzaremos a estudiar una disciplina que prometimos enseñaros desde el principio: la <strong>programación</strong>.

Pero antes de empezar necesitamos recordar algo importante; este artículo es la tercera parte de una serie, para comprenderlo a cabalidad recomendamos leer los anteriores en el siguiente orden:

<p><br></p>

Parte1:https://steemit.com/cervantes/@cervantes/programacion-para-todos-la-informatica-y-su-rol-en-la-humanidad

<p><br></p>

Parte 2:https://steemit.com/spanish/@cervantes/programacion-para-todos-computadoras
<p><br></p>

<strong>Como de costumbre, miremos el pasado</strong>
<p><br></p>

En el artículo anterior aprendimos que el primer instrumento que podemos llamar computadora corresponde a la <a href='https://es.wikipedia.org/wiki/M%C3%A1quina_anal%C3%ADtica'> máquina analítica </a>, la cual , mediante el uso de  <a href='https://es.wikipedia.org/wiki/Tarjeta_perforada'>tarjetas perforadas</a> recibe datos e instrucciones.
<p><br></p>

Una tarjeta perforada es simplemente una lámina de cartulina, la que contiene perforaciones en patrones específicos.
<p><br></p>

<center>
https://steemitimages.com/DQmTMd3XV6Kj6H3SPMoEYRHmH2N5HX4uKUxihKo9i3AG3V1/tarjeta.png
</center>

<center>
<a href='https://lcsistemasoperativos.wordpress.com/2015/02/04/04-11-complemento-tarjeta-perforada/'>Fuente</a>
</center>
<p><br></p>

Cada perforación en la tarjeta corresponde a un <strong>dato</strong>, y el patrón en el que se encuentran estas perforaciones corresponde a la <strong>información</strong> que recibe la computadora.
<p><br></p>

Pero , si observamos una tarjeta solo vemos orificios que para nosotros no tienen ningún significado, ¿de que se trata?. 
Para entender esto, estudiemos un poco el concepto de <a href='http://dle.rae.es/?id=N7BnIFO'>lenguaje</a>.
<p><br></p>

Tomando la definición de la RAE, lenguaje corresponde a “Facultad del ser humano de expresarse y comunicarse con los demás a través del sonido articulado o de otros sistemas de signos” . Siendo más generoso, podemos decir que el lenguaje corresponde a un sistema con el cual el hombre, los animales o cualquier entidad capaz pueden comunicar ideas, pensamientos, y sentimientos, a través del habla o signos.
<center>
<p><br></p>

https://steemitimages.com/DQmYHXS1h2nC71dy96k7x8WLGNMK2cobEqLDttGvkc4kjSE/DP-Communication-Heads.jpg
</center>
<p><br></p>

<center>
<a href='https://culturacientifica.com/2015/10/29/la-comunicacion/'>Fuente</a>
</center>
<p><br></p>

Analicemos un segundo lo anterior; la computadora ejecuta instrucciones que recibe en una tarjeta con orificios, es decir, el usuario se comunica con la computadora a través de la tarjeta.
Por lo tanto, según la definición anterior, ¡la tarjeta perforada corresponde a un lenguaje!, y un lenguaje que la computadora entiende.
<p><br></p>

De modo que, podemos entender a una computadora como una entidad que comprende un lenguaje en específico, y nosotros nos podemos comunicar con ella escribiéndole en aquel lenguaje, el cual corresponde al patrón de orificios en las tarjetas perforadas.
<p><br></p>

Comprender este concepto ha sido fundamental , pero, ¿quién fue el primero en entenderlo y vislumbrar sus capacidades?, ¿fue el creador de la máquina analítica, Charles Babbage?. 
<p><br></p>

Charles Babbage fue ciertamente un genio innovador, pero no percibía el real potencial de su diseño. Desde su perspectiva, la máquina analítica sólo cumpliría con la función de calculadora automática.
<p><br></p>

<a href=’https://es.wikipedia.org/wiki/Ada_Lovelace’>Ada Lovelace</a>, matemática y escritora francesa, vió más allá. Dedujo y vislumbró la capacidad de la máquina analítica, y por ende de las computadoras, de cumplir con múltiples tipos de tareas elaboradas .
<div>
<div class=pull-left>
<p><br></p>

https://steemitimages.com/DQmPtiMXWbsAkEs94xSmczRY7HocAfJ1BuKVF7V2WTF6kbc/ada.jpg
<a href=’https://historiaybiografias.com/ada_lovelace/’>Fuente</a>
</div>

<p><br></p>

Sentía una gran curiosidad y admiración por el trabajo del que sería su amigo, Charles Babbage. Con el fin de divulgar e ilustrar la existencia y funcionamiento del diseño de Charles, tradujo unos textos escritos por el militar e ingeniero italiano <a href=’https://es.wikipedia.org/wiki/Luigi_Federico_Menabrea’>Luigi Menabrea</a> sobre la máquina, anexando en ellos notas de su autoría, denominadas <i>Notas</i>.
<br><br><br><br>
En éstos documentos, se pueden encontrar notas que definieron un hito en la historia de la informática: describió un lenguaje de uso general para dar instrucciones a la máquina analítica,y escribió lo que se considera como el primer programa de ordenador. 
<p><br></p>

<center>
https://steemitimages.com/DQmTEpEf6GRtk52zFQLQzyN7zCWFmwf2EPhEoRZQ4z6YoMM/ada%20lovelace.jpg</center>
<center>
<a href='http://www.mujeresenlahistoria.com/2011/01/la-encantadora-de-numeros-ada-lovelace.html'>Fuente</a>
</center>
<p><br></p>
Realizó impresionantes deducciones, y vislumbró que el instrumento se puede utilizar para variadas y complejas tareas: realizar representaciones matemáticas más allá de los números, y hasta componer y reproducir piezas musicales.
<p><br></p>

Este gran acontecimiento y trabajo convirtió a Ada Lovelace en la madre de la programación.
<p><br></p>

<h2>Entonces, ¿qué es un programa?</h2>
<p><br></p>

Primero, veamos la definición de la palabra <a href='http://dle.rae.es/?id=UJWsNlv'>programar</a> de la RAE: “Idear y ordenar las acciones necesarias para realizar un proyecto.”. Es decir, programamos cuando planificamos nuestra semana, definimos en que orden haremos las compras, etc.
<center>
<p><br></p>
https://steemitimages.com/DQmeQF8yPWwyiau6A951m2Bpbpt1ThRJJo7VgqPxew3P65c/jugando-a-adivinar-el-futuro.jpg
</center>
<center>
<a href='http://www.optimainfinito.com/2016/04/programar-el-ineficaz-lado-oscuro-de-planificar.html'>Fuente</a>
</center>
<p><br></p>
Desde esta perspectiva, podemos entender un programa como un conjunto de acciones necesarias para realizar un proyecto. ¿Y en una computadora?.
<p><br></p>

Como vimos, la máquina analítica recibe instrucciones a través de una tarjeta perforada, es decir, recibe de manera ordenada las acciones necesarias para realizar una tarea. Por lo tanto, podemos definir un <a href=’https://es.wikipedia.org/wiki/Programa_inform%C3%A1tico’>programa informático</a> como: ”secuencia de instrucciones escritas para completar una tarea específica en una computadora”, y estas instrucciones están escritas en un lenguaje que la computadora entiende.
<p><br></p>

Así, cuando perforamos las tarjetas para que la computadora ejecute unas instrucciones , ¡estamos programando!.
<p><br></p>

<h3>¿Cómo funciona un programa en la actualidad?</h3>
<p><br></p>

Claramente, las computadoras actuales no utilizan tarjetas perforadas, no son mecánicas, y funcionan mediante el uso de electricidad en pequeños circuitos integrados (tarjeta madre, memorias, tarjeta de sonido, etc), pero su principio de funcionamiento <strong>es el mismo</strong>.
<p><br></p>

https://steemitimages.com/DQmePjeNLqT79sHyq4V3YGeUdQ7oMJuSe3RdU56KCN74udA/tarjetamadre.jpg

<a href='http://conceptodefinicion.de/tarjeta-madre/'>Fuente</a>

Así, los programas de computadoras que utilizamos hoy en día son secuencias de instrucciones escritas en un lenguaje que la computadora entiende, y éstas instrucciones son ejecutadas por el procesador.
<p><br></p>

<h4>¿Qué lenguaje entiende una computadora?</h4>
<p><br></p>

Los pequeños circuitos programables de las computadoras actuales son <a href=’’>digitales</a>, y funcionan mediante solo dos niveles de tensión, los que se simbolizan con dos números; 0 y 1.  Toda instrucción que se entrega a través de un programa está escrita sólo con estos dos números, de modo que el lenguaje que utilizamos para comunicarnos con el procesador corresponde a <a href=’https://es.wikipedia.org/wiki/C%C3%B3digo_binario’>código binario</a>.
<center>
<p><br></p>

https://steemitimages.com/DQmReDHuAMqsHYCo7QPM2kKsTtt52dBvsQiEjgpzsQgG8La/binario_html_m49ead776-730x410.jpg
</center>
<center>
<a href='http://www.biobiochile.cl/noticias/2016/02/18/para-principiantes-como-entender-lo-que-es-el-codigo-binario.shtml'>Fuente</a>
</center>
<p><br></p>

Entonces, ¿tenemos que aprender código binario para programar?, <strong>no</strong>.Se han creado múltiples herramientas y métodos para optimizar y facilitar el desarrollo de programas, ¡pero ahondaremos en esto en la entrega del próximo miércoles!.
<p><br></p>

<h2>¡Espera!, aún no hemos terminado</h2>
<p><br></p>

Ya comprendemos lo que son los programas, y podemos observar que todo funcionamiento de la computadora está dado por ellos, por lo que corresponden a un componente fundamental de una computadora.
<p><br></p>

De este modo podemos separar una computadora en dos partes: componentes físicos; tales como circuitos eléctricos, dispositivos de entrada y salida, cables, gabinetes, entre otros,  y componentes lógicos,dónde encontramos a los <strong>programas</strong>.
<p><br></p>

Al conjunto de componentes físicos los llamamos <a href=’https://es.wikipedia.org/wiki/Hardware’>hardware</a>, y a los componentes lógicos los llamamos <a href='https://es.wikipedia.org/wiki/Software'>software</a>.
<p><br></p>

<h2>Resumamos y ordenemos las ideas</h2>
<p><br></p>

<center>
https://steemitimages.com/DQmQiMaJspkfkQEAYuvrxwu45Puvj8zjtXiBkXLZRdPzFnt/ideas.jpg
<a href='http://undergradeasier.com/the-too-many-ideas-problem/'>Fuente</a>
</center>
<p><br></p>

Las computadoras son instrumentos que procesan información de manera automatizada, y para ello reciben instrucciones en forma de un  <strong>programa</strong>.
<p><br></p>

Un programa, es un conjunto de instrucciones escritas en un lenguaje que la computadora entiende, con las que puede realizar todo tipo de tareas.
<p><br></p>

Programar consiste en escribir estas instrucciones, para así crear el programa que luego la computadora utilizará.
<p><br></p>

El lenguaje que las computadoras actuales comprenden es el código binario, por lo que los programas corresponden a un conjunto de instrucciones escritas en este lenguaje.
<p><br></p>

<h2>Entonces, ¿cómo se programa?</h2>
<p><br></p>

¡Ya lo veremos!, a partir de la próxima entrega los artículos tomarán un tono más práctico. Las tres primeras etapas cumplieron una función introductoria, además de aclarar los conceptos básicos fundamentales detrás de lo que estudiaremos más adelante.
<p><br></p>

Si estás interesado en entender cómo funciona la programación, y cómo se construye un programa, no te pierdas la siguiente etapa.
<p><br></p>

Gracias por leernos y participar de esta fantástica comunidad.

</p>


¡Saludos!.


</html>
👍 , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,