Muchos. Primero, está el estilo del lenguaje, que se puede dividir por la estructura matemática utilizada para describir los algoritmos, el estilo de evaluación y el sistema de tipos.
Estructura matemática: quiero decir, lógica vs. programación funcional frente a imperativa.
estilo de evaluación: me refiero a los estilos JIT, compilación, interpretación, etc. de convertir el código en código de ensamblaje.
sistema de tipos: Cálculo orientado a objetos vs. Cálculo secuencial frente a teoría de categorías / Álgebra abstracta (Haskell, Idris, Agda …) vs. vinculación dinámica vs. tipificación estática versus tipificación débil vs. tipificación fuerte.
Luego, hay disciplinas reales en las que uno usaría la programación para:
1. Programación web
2. Computación de alto rendimiento (no necesariamente Big Data, sino más bien como computación científica o análisis de datos donde los algoritmos son grandes y complejos, mientras que los datos pueden ser pequeños)
3. Big Data y análisis de datos
4. Aprendizaje automático, inteligencia artificial, procesamiento de lenguaje natural, etc.
5. Programación de bajo nivel (programación incorporada, programación del kernel del SO, programación del controlador del dispositivo, programación del firmware)
6. Programación de sistemas de nivel superior (scripts de contenedores Docker, escritura de secuencias de comandos Vagrant, shell scripting, escritura de un servidor de archivos en Go, Rust o NodeJS, escritura de secuencias de comandos de Chef, etc.)
Probablemente hay mucho más por ahí que podrías entrar y que extrañé.
No creo que haya un número difícil para cuántos tipos de idiomas o cuántas disciplinas hay en la programación. El número es enorme, y está cambiando cada día. Lo mejor que puedes hacer es encontrar algo que te interese y centrarte en él.
- ¿Es posible humanizar todo lo digital?
- ¿Qué campos de seguridad en TI tienen la mayor demanda?
- ¿Cuáles son algunas buenas prácticas a considerar para ampliar la infraestructura de TI en una organización en crecimiento?
- Estoy iniciando mi carrera en TI, pero muchas personas dicen que tengo un Talento en arte. ¿Qué tengo que hacer?
- ¿Por qué el trabajo de sysadmin parece atraer fanáticos?