Bienvenidos al primer artículo de muchos sobre los conceptos básicos de programación. Si te gustaría aprender a programar desde cero, eres alguien con conocimiento que quiere dar un repaso o simplemente ampliarlos entonces estos artículos son lo que buscas.

Descripción Breve

En este conjunto de artículos trataré de explicar los conceptos básicos de la programación desde las variables hasta estructuras más avanzadas como pueden ser las listas. El lenguaje de programación que usaremos en principio será Java. Cada artículo partirá de la idea de que el lector nunca ha programado hasta el momento e intentaré no quedarme sólo con lo básico en algunos casos.

¿Por qué Java?

Buena pregunta. Los que ya saben de programación probablemente dirán que por qué no uso otro lenguaje como C++ o Pascal y qué pasará con los punteros. En primer lugar me he decantado por Java ya que pienso que es más fácil de aprender que otros lenguajes (las ideas son más fáciles de comprender). En segundo lugar, es cierto que en Java los punteros no existen como tal. No obstante, para el contenido de estos artículos se podrá simular el comportamiento de un puntero con objetos auxiliares así que en principio no tendremos ese problema. Y por último decidí usar Java porque además de estos artículos pretendo hacer otros los cuales requieren de Java. Lógicamente es mi opinión y habrá quien prefiera explicar cómo programar con otros lenguajes como los anteriores o Python, Ruby, etc. Si el lector prefiere trabajar personalmente con otro lenguaje no hay ningún problema; una variable sigue siendo una variable ya sea en Java como en otro lenguaje. Aclarar que se escapa de los objetivos de estos artículos explicar el lenguaje Java como tal; si bien explicaré algunos paradigmas de la programación como son la programación orientada a objetos ( POO ) propia de Java, pero no explicaré a qué se refiere con el hecho de que Java es un lenguaje semicompilado. Igual algún día escribo un artículo explicando esas características, pero será independiente de estos.

Requisitos

Para poder trabajar bien con el contenido de estos artículos hacen falta los siguientes requisitos:
  • Tener ganas de aprender; sin eso muchas ideas serán muy complejas como para entenderlas.
  • Editor de texto. Da igual cual, ya puede ser el propio Vi como el NotePad++ . Yo recomiendo usar Eclipse ya que además de ahorrar mucho tiempo trae un muy buen depurador que usaremos en varias ocasiones.
  • Máquina Virtual de Java (MVJ) la cual podemos descargar de aquí.
  • Java Development Kit (JDK) descargable desde este enlace. Si como editor de texto decidiste usar Eclipse no necesitarás hacer este paso. No obstante, yo recomiendo instalarlo de igual modo "por si acaso" quieras ejecutar el código desde consola de comandos.

"Si tengo una duda..."

¡Felicidades! Si tienes una o varias dudas significa que has entrado en el maravilloso mundo del aprendizaje. Siempre que quieras podrás usar los comentarios de aquí para plantear tus dudas. En estos casos por favor intentar ser detallados con las dudas; si es una duda de cómo hacer algo dar un poco de información sobre la idea general que se intenta hacer, y si es una duda de un error intentar dar la sección de código donde se produce el error. Sería bueno que en cualquier caso para compartir código usases Pastebin. Pastebin es un servicio web en el cual puedes poner tu código y posteriormente dar un enlace web hacia dicho código.

Repositorios

Tranquilo, si no sabes lo que es un repositorio o sí lo sabes y no te gustan no te preocupes. No llegaremos a usarlos realmente. Simplemente decir que el 90% del código que se publique en los artículos estará disponible también en un repositorio de GitHub. Si no sabes qué es un repositorio así a modo rápido, un repositorio no es más que un sitio web donde poder almacenar proyectos o programas y luego compartirlos. Se suelen usar para trabajar en grupo ya que ahorran mucho tiempo.

¿El curso se limitará a artículos?

A decir verdad no estoy seguro de ello. Estoy pensando si poner además de los artículos ejercicios o cuestionarios a modo de autoaprendizaje. Me gustaría gratamente hacerlo, pero tengo que ver aún cómo plantearlo.   Y después de esta densidad de texto (procuraré que los demás no sean tan largos), decir en conclusión que espero puedan aprender mucho conmigo y entren en el maravilloso mundo de la programación. Nos vemos en el siguiente artículos: "Hello world, hello OpenWebinars.net!"

Listado de capítulos

En esta sección se listan todos los capítulos de este pequeño curso: (De momento no hay ninguno, pero iré actualizándolo a medida que escriba)