Cuando se habla de programación, una de las primeras preguntas que los futuros desarrolladores se hacen es ¿Java o .NET?. Cuando en realidad, para hacer inmersión en el mundo de la programación y en el desarrollo de software, lo más importante es comenzar con una fuerte base de algoritmos y técnicas de resolución de problemas, y en esta instancia ¡aún no entra en juego el lenguaje de programación!. A su vez, es de vital importancia comprender correctamente el requisito, es decir, qué es lo que se quiere modelizar mediante un algoritmo. Es imposible poder desarrollar un algoritmo, sin comprender un enunciado o un requerimiento.

En la actualidad, existen numerosos establecimientos que ofrecen cursos de programación de Java o .NET, desde un nivel básico. Incluso arman “carreras”, donde extienden las capacitaciones hasta en un plazo de 2 o 3 años, contenidos que tú podrías aprender en 3 o 6 meses…Prácticamente cuando terminas el curso ¡estarán todos los contenidos desactualizados! Según mi experiencia personal, para sacar provecho de los cursos de programación, a priori, debes tener suficiente práctica en contenidos fundamentales de programación, para sacarle el mayor provecho al curso que tomes (independientemente del lenguaje que escojas).

¿Cuáles son los conocimientos que deberías tener antes de elegir un curso? Lo ideal sería que hubieses cursado alguna materia de introducción a la programación o algoritmos en una Universidad, en caso contrario, podrás encontrar material muy útil en Internet, los criterios de búsqueda recomendados son: fundamentos de programación, algoritmos, clasificación de lenguajes de programación, entre otros. De la misma forma, hay numerosos libros para introducirse en la programación de software, los más antiguos utilizan diagramas de flujo para representar gráficamente la secuencia de pasos de un algoritmo. Los diagramas de flujo de datos constituyen aún un método muy pedagógico para dar los primeros pasos con los algoritmos.

Cuando comparas diferentes cursos de programación ¿qué aspectos deben analizarse sobre los lenguajes de programación en los que se basan? Debes centrarte en las características, capacidades y en los puntos de debilidad del lenguaje de programación anfitrión. Así como también, debes considerar el paradigma del lenguaje, es decir, la forma en que hay que pensar y escribir el algoritmo para resolver una situación problemática. Si estás un poco perdido en este eje temático, sería conveniente que leas algo sobre paradigmas imperativos, paradigmas orientados a objetos, entre otros. En la actualidad, la orientación a objetos es una de las técnicas que está en auge cuando se habla de desarrollo de software, ya sea en el ámbito laboral o como herramienta de aprendizaje.

Quienes se orientan a cursos de programación de .NET comúnmente se preguntan ¿es mejor C# o Visual Basic? Precisamente se trata de los lenguajes más importantes de la plataforma .NET, C#.NET es un lenguaje orientado a objetos que está basado en C, Visual Basic.NET, por su parte, es una readecuación para la plataforma .NET del popular Visual Basic. Visual Basic.NET también está basado en el paradigma de objetos. En mi opinión personal, voto por C#.NET, pero esta decisión debe tomarla cada desarrollador en función de sus necesidades y comodidades a la hora de programar. Después de todo ¡son dos lenguajes distintos!. De todas formas, si tomas cursos de programación basados en .NET, estarán contrastando continuamente las características de ambos lenguajes y tendrás todas las herramientas para trabajar con cualquiera de los dos.