En cualquier lenguaje de programación que sea, se dice que un experto es el que tiene dominio sobre la sintaxis y la semántica, conoce los pros y los contras del lenguaje, qué dominio y problema será adecuado para resolver el idioma. Y se necesita mucha práctica escribiendo código (bueno) para dominar ese idioma.
Estas son las pocas cosas que espero que un experto en JavaScript conozca bien (sin ningún orden en particular)
- Herencia prototípica (vs POO clásica)
- Cierres y funciones parciales.
- esto, alcance, aplicación, llamada y enlace.
- Programación funcional: no solo asigna, filtra y reduce cosas habituales. Debería poder escribir funciones más pequeñas (puras) y componerlas en funciones más grandes.
- Escribir código de prueba. Y, por supuesto, probar el código.
- Cómo funciona el navegador Cómo se analiza y ejecuta JavaScript en el navegador.
Y además del experto en JavaScript anterior, debe tener una buena comprensión de las especificaciones de idiomas actuales y futuras como ES6 y ES7. Saber cómo los diferentes marcos y bibliotecas como Ember, React, Angular., Etc. ayudan a crear aplicaciones y cuáles son los pros y los contras de los demás.
- ¿Cómo hacer que una pulsación de tecla se vaya al siguiente elemento de una lista?
- ¿Qué es Node.js? Quiero una comprensión clara al respecto.
- ¿Cuál es el mejor flujo de trabajo de Git para un solo individuo que construye una aplicación de rieles de producción? He visto el flujo de GitHub y el flujo de Git. ¿Cuáles son algunas recomendaciones de quienes han estado allí?
- ¿Cuáles son las diferencias entre px, em y% en CSS? ¿Cuál debo usar y por qué?
- Cómo configurar un sitio web con registro de cuentas de usuario e inicio de sesión
Y, finalmente, cuanto más crees aplicaciones y resuelvas más problemas, te convertirás en un experto.
Espero que esto ayude.