Curso programación desde 0 – Tema 1 – ¿Qué es la programación?

En este curso pretendo que alguien
que todavía no sabe nada de programación, alguien que parte desde 0,
adquiera los conocimientos necesarios para comenzar en el arte de la
programación.

Veremos los aspectos básicos, las
bases, cimientos, que nos servirá para cualquier lenguaje de programación, para
cualquier lenguaje.
Una vez tengamos estos
conocimientos podremos aprender
cualquier lenguaje
, para cualquier
plataforma
.
Lo primero es saber que es la programación, en qué consiste:
Según Wikipedia: La programación es el proceso de diseñar, codificar, depurar y
mantener el 
código
fuente
 de programas computacionales. El código fuente es escrito en un lenguaje de programación. El propósito de la programación es crear
programas que exhiban un comportamiento deseado. El proceso de escribir código
requiere frecuentemente conocimientos en varias áreas distintas, además del
dominio del lenguaje a utilizar, algoritmos especializados y lógica formal.
Programar no involucra necesariamente otras tareas tales como el análisis y
diseño de la aplicación (pero sí el diseño del código), aunque sí suelen estar
fusionadas en el desarrollo de pequeñas aplicaciones.
http://es.wikipedia.org/wiki/Programaci%C3%B3n
O en otras palabras, la
programación consiste en diseñar/escribir el código necesario para resolver
algún problema; para ello necesitaremos tener algunos conocimientos de matemáticas,
usar la lógica, y deberemos conocer un lenguaje de programación valido para la
plataforma de destino; con plataforma me refiero a donde queremos que nos
funcione, hacia donde queremos programar, donde se va a ver, que vamos a hacer,
algunos ejemplos son: (Web, Windows, Mac, Android, Iphone….).
Aunque no lo parece los
ordenadores, son tontos
, no saben hacer absolutamente nada, solo leen el
código que nosotros (los programadores) les escribamos y le hacen vivir, al
ordenador no le llega nada más que 0 y 1, pero no hay que asustarse, eso es
lenguaje maquina, es el nivel de programación más bajo que existe, pero
prácticamente nadie sabe usarlo, en cuanto más bajo nivel programemos, más
flexibilidad tendremos, pero también tendremos mucho más trabajo que hacer; hoy
día hay lenguajes de bajo, medio y alto nivel; mucha gente no considera
que exista el medio nivel, pero ya es algo de cuestión de “gustos” como cada
uno quiera catalogar según qué nivel.
En un lenguaje de bajo nivel,
para hacer algo muy básico, tendremos que hacer decenas de líneas de código,
muy complejas
; en cambio en un lenguaje de alto nivel, podremos hacer eso mismo con muy pocas líneas, hoy día que lo que más importa es sacar trabajo y
hacerlo rápido, nos interesa hacerlo a
alto nivel
, además al hacerlo a alto nivel, con el mismo trabajo podremos
hacer aplicaciones mucho más seguras,
mas robustas, y más fáciles de mantener, algo muy importante, como habéis
podido leer en la descripción de Wikipedia sobre la programación, el trabajo
no termina en hacer un programa
en cuestión y olvidarnos de ello, si no que
después hay que mantenerlo, según el
programa, este mantenimiento puede consistir en hacer ampliaciones, reparar
fallos/bugs (no hay programa, por muy básico que sea, al que no le salga algún
pequeño fallo)hacer modificaciones, no os podéis imaginar las veces que el
cliente ve el programa terminado, y decide que aunque sea eso lo que te ha
pedido no le vale y es necesario cambiar algunas/o todas las cosas; ya depende
de cada uno si esos cambios los cobra a parte o no, pero bueno no vamos a
entrar en eso en este curso.
Ahora que sabemos que es
programar, y sabemos que es la programación a bajo y a alto nivel, os diré que
nosotros vamos a ver la programación a alto nivel, algunos niveles de alto
nivel son:
.NET, ya sea VB.NET o C#; PHP, JAVA….
Con .NET podremos desarrollar para Windows, ya sean teléfonos, PC´s, y Web; pero siempre necesitaremos
que el dispositivo que va a tener la aplicación instalada sea Windows, también
es recomendable que tenga los frameworks actualizados, con esto quiero decir,
que no podremos hacer un programa para Android, ni para Iphone, aunque sí
para Windows Mobile, también para ordenadores Windows, la versión del Framework a usar (ya veremos mas adelante que es),
dependerá del Windows de destino ya que las versiones mas recientes no son compatibles con los windows antiguos, aunque los framework utilizados en windows antiguos siguen teniendo soporte para los modernos; .NET tiene un Framework llamado ASP.NET que en realidad es VB.NET o C# cualquiera de los 2 orientados
a web.
(Tambien se puede programar con otros lenguajes .NET aunque no es habitual)

PHP es un lenguaje exclusivamente WEB con el podremos hacer todo tipo de
webs, trabaja del lado del servidor, y únicamente necesitaremos que el servidor
web soporte php, puede ser servidores Windows, o Linux, en la actualidad
hay muchísimos servidores php Linux gratuitos, por lo que es recomendable
aprenderlo para comenzar en la programación web, además de ser “similar” a
otros lenguajes como JAVA, C#, o Java Script, por lo que nos facilitaría
aprender otro lenguaje rápidamente
.
JAVA es otro de los lenguajes más populares actualmente
utilizando este lenguaje, podrás programar en cualquier plataforma de ordenadores, ya sea Windows, Linux, o Mac,
esto es gracias a que en el ordenador en cuestión, se tiene instalada una maquina virtual de JAVA y es la propia
maquina la que convierte el código a lo necesario por el Sistema Operativo,
esto pasa de manera invisible para el usuario y el programador tampoco se debe
preocupar por ello, simplemente haces el programa y cuando se instala, siempre
que este la maquina virtual instalada funcionara, también nos permite programar
para web, y tenemos algunos
frameworks como JSF que nos ayudaran
muchísimo en esa tarea; por último las aplicaciones Android, suelen desarrollarse en JAVA, por lo que en los últimos
años es uno de los lenguajes con mayor crecimiento.

Tema 1 – ¿Que es la programación? (Tema actual)