Aprender a programar: Los conceptos básicos
Todo principiante en el campo de la programación se enfrenta a numerosos interrogantes. Independientemente de si se trata de la codificación, de los métodos o de sus herramientas, sin experiencia es muy difícil tener una visión general. Aprender a programar desde cero es una tarea compleja, especialmente si quieres aprenderlo por tus propios medios. Hemos resumido todo lo que necesitas saber para dar tus primeros pasos en el mundo del código, de los comandos y del lenguaje de script.
¿Qué necesitas para aprender a programar?
Quien quiera aprender un lenguaje de programación tendrá que leer mucho. El primer paso en la dirección correcta es consultar foros y libros afines al tema. Una lectura atenta fija las bases de conocimiento necesarias para los siguientes pasos. Lo bueno es que existe un foro para cada lenguaje y una respuesta para casi todas las preguntas imaginables o, al menos, una solución. En el remoto caso de que no encuentres la información que estás buscando, siempre puedes plantear tu pregunta en alguna de las comunidades online, donde, por lo general, siempre habrá alguien con los conocimientos necesarios para responder a tus dudas. Es importante que tomes nota de aquellas ideas importantes ya en esta primera fase de aproximación al tema. Tener algunos apuntes resulta muy útil para solucionar preguntas sistemáticamente en el futuro, además de ser un instrumento para trabajar con mayor eficacia.
¿Es necesario aprender algún lenguaje de programación?
Una parte importante de la investigación y preparación es averiguar qué lenguajes de programación existen y cuál es el que mejor se adapta a las necesidades de tus proyectos. Los más conocidos y utilizados son:
- Java
- C
- C++
- C#
- Objective-C
- Python
- Visual Basic .NET
- PHP
- JavaScript
Cada uno de estos lenguajes tiene un grado de complejidad diferente y, por lo tanto, algunos serán más fáciles de aprender que otros. Es por esto que antes de aprender a programar es necesario definir la intención: ¿quieres aprender a programar para, en un futuro, crear páginas web?, ¿quieres desarrollar aplicaciones para tablets y smartphones?, o ¿prefieres programar microcontroladores que sean aplicables a la vida cotidiana, por ejemplo, en coches?
Programación web
Si quieres crear páginas web o personalizar tus aplicaciones web, lo mejor es comenzar por los aspectos básicos. Per se, HTML y CSS no son lenguajes de programación. Estos constituyen la base de la mayoría de páginas web y son, por lo tanto, el punto de partida para muchos principiantes. Con la ayuda de HTML es posible diseñar elementos web y fijar las bases de una página. HTML5 permite dar un paso más allá, pues ofrece mayores posibilidades audiovisuales. Las CSS (Cascading Style Sheets) son las encargadas del diseño. Estas facilitan el ajuste de todas las propiedades de los elementos, como la posición y el color. Sin embargo, con HTML y CSS solo es posible crear páginas estáticas, sencillas y funcionales. Una vez se tiene el material necesario para empezar, se puede pasar al siguiente paso: la programación. Para iniciarse con la creación de páginas dinámicas es recomendable utilizar JavaScript como lenguaje de programación. JavaScript facilita la creación de páginas web dinámicas que incluyen, por ejemplo, redimensionado automático y galerías de imágenes. PHP y SQL completan el pack básico para la programación de aplicaciones web. PHP es un lenguaje de programación de código abierto que puede ser integrado en HTML. SQL es un lenguaje de bases de datos que define, manipula y permite controlar bases de datos relacionales. Contar con conocimientos básicos en PHP y SQL facilita de forma considerable el proceso de concepción de páginas web complejas (p. ej., páginas con una sección de miembros) y el trabajo con sistemas de gestión de contenidos (CMS). Esta es solo una pequeña muestra de la gran cantidad de lenguajes y scripts web disponibles. Sin embargo, con los conocimientos necesarios sobre HTML, CSS, JavaScript, SQL y PHP es posible establecer unas bases sólidas para el desarrollo de la mayoría de aplicaciones web. La web W3Schools.com ofrece documentación y tutoriales muy valiosos, también para principiantes, para los scripts y lenguajes de programación anteriormente mencionados.
Aprender a programar aplicaciones
Programar aplicaciones como juegos, programas de edición de imagen o apps, en cambio, requiere unas bases diferentes. Parte de los fundamentos son: C, C++ y Java. Estos tres lenguajes de programación gozan de una sintaxis similar, es decir, quien domine C o C++ aprenderá Java rápidamente. En la web aprenderaprogramar.com encontrarás una gran variedad de tutoriales completos para la programación con C, C#, C++ y Java con los conceptos y procesos básicos con los que todo principiante debería estar familiarizado.
Apps para iOS y OS X
Las aplicaciones para iPhone, iPads y compañía se programan utilizando Cocoa. Cocoa no es un lenguaje de programación, sino una interfaz de programación para el sistema operativo de Apple Mac OS. Xcode es un entorno de desarrollo para Mac OS que, junto a Cocoa, permite la creación de aplicaciones Mac e iOS. La interfaz Builder es un software de diseño para interfaces de usuario. Entre los lenguajes de programación utilizados se encuentra, entre otros, Objective-C.
Aplicaciones para Android
Las apps para el sistema operativo Android están escritas en Java y desarrolladas, con los conocimientos necesarios, en el entorno de desarrollo (IDE) Android Studio y Java Development Kit de Oracle.
Aprender a programar en Internet
Ya sea como candidato para un puesto de trabajo o como fundador de una startup, tener habilidades de programación representa una gran ventaja y es, muy a menudo, un requisito imprescindible para trabajar en el sector online. Internet es una herramienta que facilita un comienzo rápido y sin rodeos en el mundo de la programación y, con el paso del tiempo, la oferta de cursos online para aprender a programar es cada vez mayor.
Code Academy
Code Academy ofrece cursos de programación interactivos para HTML, JavaScript y PHP, entre otros. Sus cursos no solo están enfocados a lenguajes de programación específicos, sino que abarcan un amplio abanico de temas como, por ejemplo, la programación de páginas web interactivas. Code Academy es el ejemplo perfecto para demostrar que es posible aprender a programar desde cero sin invertir grandes cantidades de dinero.
- Idioma: inglés
- Requisitos: conocimientos básicos
- Precio: gratis
Udemy
La plataforma educativa Udemy ofrece un total de más de 40.000 cursos online, desde fotografía hasta diseño. Para los temas de IT, software y programación la oferta reúne cursos libres y de pago. Por ejemplo, los usuarios encontrarán cursos gratuitos de introducción a Java, HTML5 o PHP, mientras que algunos cursos sobre otros lenguajes de programación, sobre eCommerce y desarrollo de aplicaciones móviles, son de pago. En el caso de los emprendedores, Udemy ofrece un curso de programación para empresas.
- Idioma: inglés, algunos en español
- Requisitos: dependiendo del curso, conocimientos básicos
- Precio: cursos gratis y cursos de pago desde aprox. 12€
Code.org
Code.org es un portal online para personas sin ningún tipo de conocimientos en programación y, por lo tanto, la opción idónea para aprender a programar desde cero. Esta plataforma ofrece una gran variedad de lúdicos tutoriales con referencias a juegos online como Angry Birds. En Code.org se persigue que los usuarios entiendan la lógica básica de la programación. Es una página web internacional, disponible también en español y, como usuario, te encontrarás con pequeños juegos y tareas donde el código generado estará siempre disponible.
- Idioma: español
- Requisitos: perfecto para usuarios sin ningún tipo de conocimientos en programación
- Precio: gratisa
Conseguir el apoyo necesario para aprender a programar sí es posible
Cuando ya se tiene claro qué lenguajes de programación figuran en la lista de tareas pendientes, es el momento de buscar online, donde se encontrará una gran oferta de tutoriales, cursos y otros recursos de ayuda. Para ponerse manos a la obra solo son necesarios un ordenador, un editor y, por supuesto, algo de paciencia. La gama de editores es muy amplia, a ella pertenecen Notepad++ para usuarios Windows, BBEdit para usuarios Mac y TextMate, así como el editor para ambos sistemas operativos SublimeText. Para lenguajes como Java o para los miembros de la familia C, lo normal es recurrir a un IDE que incluya un compilador (p. ej., Eclipse, NetBeans, Visual Studie, XCode). Los cursos online son prácticos y muy populares. Sin embargo, no desestimes la oferta de universidades o institutos especializados, donde la mayoría de cursos están abiertos a participantes externos a cambio de una tarifa de pago.