lunes, 2 de diciembre de 2013

Aprender a programar. Lenguajes de programación


Hola a todos,

Si habéis leído el capítulo anterior ya sabéis lo que significa programar y todo lo que implica. Si pese a saberlo queréis empezar :) os faltará un poco de base de como funciona un lenguaje de programación

Los lenguajes de programación no son más que estandars. Es decir, cuando se define un lenguaje de programación lo que se dice son las normas y características que tendrá ese lenguaje, nada más. Con lo que trabajaremos nosotros será con las implementaciones de ese lenguaje.

Por ejemplo, hace muchos años se definió el lenguaje C. Posteriormente aparecieron compiladores como turboC, watcom, visualC, gcc que implementaban dicho estandar.

Un mismo código en diferentes compiladores, aunque genere diferentes ejecutables, debería de comportarse igual. Así pues las diferencias entre compiladores normalmente radican en tres factores importantes:
- como de bien transforma el código en un ejecutable : tamaño del ejecutable, velocidad de ejecución, uso de memoria, etc...
- facilidades que aporta a la producción: tiempo de compilación, incorporación de debuger y profiler, etc...
- soporte para librerias: que librerias externas soporta (OpenGL, DirectX o las que fuera) y cuan fácil es usarlas.


Todo esto aplica tanto para un lenguaje compilado como uno interpretado. Un caso claro lo podemos ver en la programación web. Podemos definir el lenguaje html , que es un estandar, pero cada navegador lo implementa a su manera.



Ahora la gran pregunta. Ya se la teoría.... ¿cómo empiezo con la práctica?

Antes de empezar con un lenguaje en concreto vamos a ver un poco las operaciones comunes entre los lenguajes más usados (C/C++ y Java entre otros muchos). Si domináis la lógica de estas operaciones aprenderéis cualquier lenguaje en un suspiro.

- Condicional (normalmente en código es "if"): Si se cumple "lo que sea" hago "esto". Opcionalmente, también puede haber el caso en que sino se cumple la condición ("else"), haga "lo otro". Ejemplo de código en C:
          if (dinero < 5 )
          {
                trabajar();
          }
          else
          {
                 descansar();
          }

- Bucles: Repetir una y otra vez una zona de código o una operación (los puede haber de muchos tipos diferentes, pero se centran en dos categorías):
     - De repeticiones fijas: Quiero repetir una operación X veces. Ejemplo de código.
for( i = 0 ;  i < 1000 ; i = i+1 )     //Voy a repetir una operación 1000 veces
{
        dormir();
}
     - De repeticiones variables: Quiero repetir una operación mientras que haya una condición que se cumpla.
while ( tengosueño() )   //Repito una operación mientras se cumpla una condición.
{
       dormir();
}

- Funciones: Zonas de código que se pueden ejecutar desde cualquier parte del código. La sintaxis puede variar mucho de un lenguaje a otro, pero el funcionamiento siempre es parecido. Se reciben unos parámetros de entrada (números de la derecha) y se devuelve un resultado (número de la izquierda). Si no hay parámetros se usa void (vacio). Ejemplos:
bool tengosueño(void)
{
        if (sueño > 5)
             return true;   //Es una función que se usa para finalizar una función y devolver un valor.
        else
              return false;
}

void dormir(void)
{
       sueño--;
}

//int, char y bool son tipos de variables. Es la manera de indicarle al compilador como queremos que interprete esos datos.
int cobrar( int horas)
{
          return horas*6;
}


Ahora que tenéis la base , mirad código. Aún sin entender lo que diga. Iros quedando con la "gramática" y con la estructura. Código para leer por internet lo hay a cientos. Si queréis tengo un par de proyectos que os pueden servir para ir mirando código: pakengine, algún que otro motor gráfico y el math engine

Cuando ya esteis empapados de código os podéis plantear mirar algún que otro tutorial del lenguaje que queráis aprender. (si queréis aprender C/C++ espero que este os sirva).

A partir de ahí, sabiendo la teoria y teniendo la lógica, haced ejercicios. Nuevamente, si os apetece aprender C/C++ tengo un conjunto de ejercicios que tal vez os interesan.

A partir de ahí todo es practicar, practicar y practicar.

Ya sin más, os dejo hasta el siguiente capítulo, espero que os haya gustado.

Nos vemos

LordPakusBlog

0 comentarios :

Publicar un comentario

Related Posts Plugin for WordPress, Blogger...