Tenga en cuenta que este no es otro '¿Cuánto [ insertar lenguaje de programación aquí ] debería saber antes de pasar a [ insertar marco aquí ]?' Lo que me gustaría saber es cuán beneficioso es aprender los conceptos avanzados de un lenguaje de programación cuando su intención es confiar en gran medida en su marco la mayoría de las veces. Entonces, por ejemplo, comencé a usar jQuery y primero me tomé el tiempo para comprender realmente los conceptos centrales de Javascript. Además, tengo algunos más allá de los libros básicos (Secretos de un Javascript Ninja, por ejemplo) en el estante que realmente profundizan en el lenguaje. A medida que hojeo las páginas, encuentro que una buena parte no se transfiere a jQuery, ya que mi intención principal es la manipulación del DOM.
Lo mismo puede decirse de Ruby y RoR. ¿Estos libros me harán un mejor programador en general? Probablemente. ¿Pueden estos temas ayudarme a ser mucho mejor con su marco? Eso es lo que me cuesta entender.
fuente
Respuestas:
Es más importante estudiar el lenguaje que estudiar el marco. Aprende bien el idioma y usarás bien el marco.
En orden de importancia (lo más importante primero):
fuente
Por supuesto. La pregunta es "¿vale la pena la inversión de ese beneficio?". Yo diría que siempre es así, pero ciertamente depende de usted y su entorno, ya que afectarán el beneficio (cuánto obtendrá su entorno de su conocimiento) versus el costo (cuánto tiempo le lleva aprender y qué tan bien absorber el conocimiento).
¿Por qué diría que es beneficioso? Porque no siempre estarás en el marco. Incluso el marco más completo sigue siendo parte de un ecosistema más grande. No puede hacer llamadas jQuery solo. Debe saber cómo vincular su secuencia de comandos en la página, cómo se ejecuta, cómo interactúa con las cosas que desea hacer. Eso puede ser "básico" en su libro, pero siempre he descubierto que un conocimiento más profundo me ayudó a hacer que el código sea más rápido, y ciertamente a depurar los problemas más rápido. Marco o no.
Más allá de eso, el mundo real tiene la desagradable costumbre de entrometerse en los programadores. Claro, su tarea hoy puede ser manipular DOM, pero mañana puede que necesite conectar algún SWFObject. Tener una buena base le permitirá adaptarse más fácilmente a los entornos cambiantes.
Y, por último, aunque es posible que solo desee realizar la manipulación DOM, muy pocos programadores trabajan solos. Sus compañeros probablemente harán cosas más avanzadas con el lenguaje de programación. Deberá poder leer ese código, o al menos, no arruinarlo.
fuente
Probablemente necesite un poco de equilibrio en la cantidad que debe aprender. No es todo o nada, así que dedica todo el tiempo que puedas. Debe preguntarse qué riesgos desea aceptar confiando en el marco.
Es genial si todo lo que necesita es tener en funcionamiento algún Producto mínimo viable. No va a haber un gran rendimiento o problemas complejos de requisitos. Esto supone que eligió un marco que puede manejar lo que está tratando de construir.
En el otro lado del espectro está si está trabajando en una aplicación bastante grande / compleja y encuentra algo que el marco maneja mal. No es gran cosa, así que terminas teniendo que aprender más JavaScript. Hubiera tenido que pasar ese tiempo si lo aprendió desde el principio. ¿Pero tienes tiempo? ¿Serás capaz de aprender los fundamentos bajo el estrés de no hacer algo a tiempo? Nadie puede responder eso.
Equilibrarlo es probablemente la mejor apuesta. Ir a tu ritmo. Aprende algunos JavaScript si puedes. Puede que no se convierta en un experto, pero esa no es razón para ignorarlo. Los marcos fueron creados por personas que necesitaban resolver un problema similar al suyo, pero no exactamente como el suyo.
fuente
Un área general que sufre de profundizar en el marco (s) antes de conocer bien el lenguaje central es el rendimiento. Esto es cierto para todos los idiomas / plataformas ( Hibernate n + 1 selecciona, etc.). Aquí hay muchos consejos y trucos de JQuery que se basan (entre otras cosas) en un buen conocimiento del lenguaje central en relación con el rendimiento:
fuente
Creo que su pregunta se basa en una premisa falsa. Comienza diciendo que planea confiar en un marco y luego pregunta si es beneficioso aprender más allá del marco. Entonces, por supuesto, llegas a la conclusión de que no vale la pena. Pero esa premisa es defectuosa. No debe centrarse en usar un marco. Debes concentrarte en usar la herramienta adecuada para el trabajo correcto . jQuery es realmente bueno en ciertas tareas, y también lo es Ruby on Rails o cualquier otro marco. Pero no siempre son la herramienta adecuada para todo. Aprender sobre el lenguaje más allá del marco, e incluso aprender sobre otros marcos o microframeworks u otras herramientas, lo ayuda a identificar cuándo su marco se interpone en su camino más de lo que lo está ayudando, y le brinda la capacidad de buscar otros,
Entonces mi respuesta es: sí, vale la pena porque el marco no es la herramienta adecuada para cada trabajo.
fuente