Пожалуйста, имейте в виду, что это не совсем другое «Сколько [ вставить язык программирования здесь ] я должен знать, прежде чем перейти к [ вставить сюда фреймворк ]?» Что я хотел бы знать, так это то, насколько полезно изучать эти передовые концепции языка программирования, когда вы намерены в большинстве случаев полагаться на его структуру. Так, например, я начал использовать jQuery и сначала потратил время на то, чтобы по-настоящему понять основные концепции Javascript. Кроме того, у меня есть несколько книг по основам (например, «Секреты ниндзя Javascript») на полке, которые действительно углубляются в язык. Просматривая страницы, я обнаружил, что большая часть этого не переносится на jQuery, поскольку мое основное намерение - манипулирование DOM.
То же самое можно сказать и о Ruby и RoR. Эти книги сделают меня лучшим программистом в целом? Вероятно. Могут ли эти темы помочь мне стать намного лучше с его структурой? Это то, что мне трудно понять.
источник
Ответы:
Это более важно для изучения языка , чем изучать основы. Хорошо выучите язык, и вы будете хорошо пользоваться фреймворком.
В порядке важности (самый важный сначала):
источник
Конечно. Вопрос в том, «стоит ли эта выгода затрат времени?». Я бы сказал, что так оно и есть, но это, безусловно, зависит от вас и вашего окружения, поскольку они будут влиять на выгоду (сколько ваша среда получит от ваших знаний) в зависимости от стоимости (сколько времени вам нужно учиться, и насколько хорошо вы впитывать знания).
С чего бы мне спорить, что это выгодно? Потому что ты не всегда будешь в рамках. Даже самая всеобъемлющая структура по-прежнему является частью большей экосистемы. Вы не можете делать звонки JQuery в одиночку. Вам нужно знать, как привязать ваш скрипт к странице, как он работает, как он взаимодействует с тем, что вы хотите сделать. Это может быть "основами" в вашей книге, но я всегда обнаруживал, что более глубокие знания помогли мне сделать код быстрее и, конечно, быстрее отладить проблемы. Рамки или нет.
Кроме того, в реальном мире есть неприятная привычка навязываться программистам. Конечно, ваша задача сегодня может заключаться в манипулировании DOM, но завтра вам может понадобиться подключить какой-нибудь объект SWFObject. Наличие хорошего фундамента позволит вам легче адаптироваться к меняющимся условиям.
И, наконец, даже если вам захочется только манипулировать DOM, очень немногие программисты работают в одиночку. Ваши коллеги, вероятно, будут делать более сложные вещи с языком программирования. Вам нужно будет прочитать этот код или, по крайней мере, не испортить его.
источник
Вероятно, нужно немного баланса в сумме, которую вы должны изучить. Это не все или ничего, поэтому уделите этому столько времени, сколько сможете. Вы должны спросить себя, какие риски вы готовы принять, полагаясь на структуру.
Здорово, если все, что вам нужно, - это запустить минимально жизнеспособный продукт. Не будет большой производительности или сложных требований. Это предполагает, что вы выбрали среду, которая может обрабатывать то, что вы пытаетесь построить.
С другой стороны спектра, если вы работаете над довольно большим / сложным приложением, и вы обнаружите что-то, что фреймворк плохо обрабатывает. Ничего страшного, так что вам придется больше учиться JavaScript. Вам бы пришлось потратить это время на это, если бы вы узнали это с самого начала. Но у тебя есть время? Сможете ли вы узнать основы под стрессом, не успев вовремя что-то сделать? Никто не может ответить на это.
Балансировка это, вероятно, лучшая ставка. Побейся. Изучите немного JavaScript, если можете. Вы не можете стать экспертом, но это не повод игнорировать это. Фреймворки создавались людьми, которым нужно было решить проблему, похожую на вашу, но не совсем такую, как ваша.
источник
Общей областью, которая страдает от углубления в каркас (ы), прежде чем хорошо знать основной язык, является производительность. Это верно для всех языков / платформ ( Hibernate n + 1 выбирает и т. Д.). Вот много из JQuery советов и трюков , которые полагаются (помимо всего прочего) на хорошем знании основного языка по отношению к производительности:
источник
Я думаю, что ваш вопрос основан на ложной предпосылке. Вы начинаете с того, что говорите, что планируете использовать фреймворк, а затем спрашиваете, полезно ли учиться за его пределами. Поэтому, конечно, вы пришли к выводу, что оно того не стоит. Но эта предпосылка ошибочна. Вы не должны фокусироваться на использовании фреймворка. Вы должны сосредоточиться на использовании правильного инструмента для правильной работы . jQuery действительно хорош в определенных задачах, как и Ruby on Rails или любой другой фреймворк. Но они не всегда являются подходящим инструментом для всего. Изучение языка вне рамок и даже изучение других рамок, микрофреймов или других инструментов помогает вам определить, когда ваша инфраструктура мешает вам больше, чем помогает, и дает вам возможность искать другие,
Итак, мой ответ: да, это того стоит, потому что фреймворк не подходит для каждой работы.
источник