Об авторе: Alan Ant Financial Data Experience Technology Team
предисловие
Только что прошел Новый год, и я думаю, что многие студенты посмотрели на свой животик и по привычке начали строить планы упражнений на Новый год. В это время, если вы все еще видите эту статью, значит, вы любите учиться (ненасыщенную работу). Большая рыба и большое мясо, неуместно смотреть на галантерейные товары, когда вы полны жирного живота, поэтому на этот раз я переведу мягкую статью, которая подскажет всем, как изучать языки программирования или фреймворки, как смазку для открыть дверь к обучению в новом году.
Оригинальная ссылка:hacker noon.com/how-to-Lear…
Так как исходный текст написан не для front-end, а читатели могут быть из front-end бэкграунда, я сделал некоторые модификации и дополнения к некоторым материалам и описаниям, чтобы их было легче понять.Далее перевод.
текст
Каждый день рождается множество новых языков программирования, таких как: Dart, Go, Kotlin и Elixir и т. д. Фронтенд-фреймворки меняются с каждым днем. Изучить новый язык программирования или фреймворк непросто, но есть несколько способов и приемов, которые помогут вам освоить их быстрее и лучше.
Сначала язык, потом фреймворк
Взяв в качестве примера внешний интерфейс, многие начинающие студенты сейчас придумывают React или Vue и мало знают о самом JavaScript. Фундамент языка нестабилен, и естественно шаткий и сложный в изучении и использовании фреймворк. Если вы не знаете нативный механизм событий JS, вы не знаете прокси событий
, захват и барботирование, вы не должны быть в состоянии освоить механизм событий React; если вы не знаете классику в JSthis
Указывая на проблему, то необъяснимые ошибки могут возникать при связывании обработчиков событий для реагирования на компоненты. Существуют бесчисленные примеры, такие как вышеупомянутые, поэтому студенты должны сначала освоить самому языку, положите прочную основу, а затем изучите основу над соответствующим языком.
Несколько вопросов по программированию кистей
многотакой сайт, вы можете решать на нем различные задачи по языку программирования (некоторые часто проводят соревнования по программированию). Ответив на эти вопросы, вы можете многое узнать о синтаксисе, библиотеках классов и логике. В то же время это может быть хорошим способом подготовиться к собеседованию.
Узнайте больше на StackOverflow
В процессе программирования вы всегда будете сталкиваться с проблемами, которые не сможете решить самостоятельно.StackOverflowЧтобы помочь, чтобы другие люди не сталкивались с подобными проблемами. Также на StackOverflow есть специальныйСообщество проверки кода, если вы вставите свой собственный код, специалисты на соответствующем языке рассмотрят ваш код и предложат улучшения.
Для тех, кто не может открыть StackOverflow, вы также можете перейти кSegmentFaultпросить.
Читать больше кода
GitHubВажно на вашем пути обучения. Здесь вы можете найти множество проектов с открытым исходным кодом, созданных на языке программирования или платформе, которую вы сейчас изучаете. Вы можете увидеть, как другие люди используют эти языки и фреймворки в производственных средах, в больших проектах. И, если вы уверены и опытны, вы также можете внести свой код в проекты с открытым исходным кодом.
сделать проект
Вообще говоря, когда мы изучаем язык программирования или фреймворк, мы используем его для выполнения проекта, такого как: создание веб-сайта блога, приложения todo или веб-сайта, такого как Baidu Baike. Фактически написав проект, вы улучшите свои способности во всех областях. Вот еще один классический сайтToDoMVC, существуют приложения todo, основанные на различных фреймворках, которые можно охарактеризовать как необходимые для начала работы с фреймворками.
Установите инструмент для удаления ворсинок
Сегодняшние инструменты lint становятся все более и более мощными дляESLintНапример, вы можете не только проверить формат кода, распространенные ошибки, но и дать совет по многим передовым практикам. Использование инструмента lint во время кодирования позволит вам найти возможные ошибки в вашем коде раньше, а также сделает ваш код более элегантным.
Напишите идиоматический код
Когда я изучал JS, я воспринимал знания программирования на языке C# как должное, и это отличный способ выучить новый язык. Однако этот метод также в определенной степени мешает вам лучше освоить новый язык, потому что он мешает вам научиться наиболее идиоматичному способу написания программ на новом языке. Например: чтобы преобразовать каждое значение в матрице в число с плавающей запятой, код выглядит следующим образом:
const matrixOfFloats = matrixOfAny => {
const l = matrixOfAny.length;
const li = matrixOfAny[0].length;
const newMatrixOfFloats = [];
for (let i = 0; i < l; i++) {
const row = [];
for (let j = 0; j < li; j++) {
row.push(parseFloat(matrixOfAny[i][j]));
}
newMatrixOfFloats.push(row);
}
};
Более идиоматичное написание JS выглядит так:
const matrixOfFloat = matrixOfAny => matrixOfAny.map(row =>
row.map(anything => parseFloat(anything))
);
не сдавайся, не сдавайся
Некоторые языки и фреймворки имеют крутые кривые обучения, для преодоления которых вам потребуются время и усилия. Когда вы сталкиваетесь с узким местом, не сдавайтесь, потому что, возможно, вы недалеки от мастерства, пожалуйста, используйте эти ресурсы, упомянутые выше, для поиска помощи.
while(true) => study()
Я знаю программиста, который работает с C# более 20 лет и все еще исследует новые возможности C# и .NET. Это Антонио Маньеро — самый влиятельный португалец в StackOverflow. Тот факт, что мы никогда не сможем полностью овладеть языком программирования, делает обязательным его постоянное обучение. Однажды вы можете быть хороши в чем-то и стать эталоном в этой области, но вы обнаружите, что всегда есть чему учиться.
постскриптум
Большинство этих методов, упомянутых первоначальным автором, сосредоточены на практическом аспекте, но мы знаем, что теория не менее важна для изучения того же самого. Поэтому я предлагаю студентам читать больше официальных документов и больше статей и заметок великих богов и предшественников при изучении. Таким образом, только теория может направлять практику, а практика может использоваться для проверки теории. Наконец, позвольте мне привести вам известную цитату.
Не бойтесь трудностей, не бойтесь неудач, настойчиво боритесь и упорно учитесь, вы сможете добиться прогресса и успеха!
—— «Надпись для Чэнь Синмина» (18 апреля 1939 г.), «Избранные чернильные следы надписи Мао Цзэдуна», стр. 17.
Если вам интересна наша команда, вы можете подписаться на рубрику и подписатьсяgithubИли отправьте свое резюме на 'tao.qit####alibaba-inc.com'.replace('####', '@'), люди с высокими идеалами могут присоединиться~
Оригинальный адрес:GitHub.com/proto team/no…