Начни с ПОЧЕМУ!
📌 Позвольте мне рассказать вам о моем путешествии с JS и о том, что побудило меня переключиться на него. Около 3 месяцев назад я проходил собеседование в качестве инженера-программиста в компании Priotix. После обмена мнениями и нескольких технических встреч, на которых меня спросили о некоторых принципах программирования и выполнении некоторых задач, меня наняли, но не как разработчика C #, поскольку Priotix работает с Node.js, спросили, могу ли я Я готов перейти на JS через месяц или два процесса обучения. Мне нравятся вызовы, и я принял их, не задумываясь. После нескольких месяцев перехода я адаптировался к JS и делюсь с вами тем, чему научился😎.
Не будем здесь увязать и займемся делом🚪.
1. Начните это как хобби с нескольких простых вопросов.
Для меня это началось с попытки помочь друзьям ответить на вопросы собеседования о JS. Фактически, это были вопросы, которые заставили меня попытаться отгадать, а потом найти ответ. Вы можете увидеть один из них ниже и найти ответ в конце.
Говорят, кошку убило любопытство, но это не так😊
2. Найдите различия в синтаксисе.
Предположим, у вас достаточно опыта в программировании в качестве разработчика C # или Java, не так уж и важно освоить новый синтаксис. Для меня это было похоже на день просмотра некоторых руководств и их практического применения. Например, вы можете начать с учебного пособия Основы для начинающих, но, конечно же, нет необходимости просматривать его слово в слово, просто пропустите те части, которые вам знакомы.
Вот такая хорошая, с которой можно было бы начать.
3. Примите новую реализацию парадигмы ООП.
Как новичок в программировании на JavaScript, когда вы слышите ООП, вы ожидаете получить классическое значение класса и объекта. Однако благодаря ES6 у нас есть определение класса в JS с 2015 года. Несмотря на то, что в настоящее время класс есть, было бы хорошо знать наследование прототипов в JS.
Я бы порекомендовал вам посмотреть это руководство по ООП на JS и попытаться кодировать проекты, которые вам назначает наставник.
Между прочим, я не связан с Мошем, я просто предлагаю то, что сделал лично я.
4. Подробнее о концепциях.
Очевидно, что есть некоторые принципиальные отличия по сравнению с другими языками, поэтому вы, как JS-разработчик, должны знать о них и понимать их наизусть💖.
Среди них я должен назвать некоторые концепции, такие как Scoping, Event Loop, Closure, Object, Async / Promisses и т. Д.
Для них, на которые вам следует потратить больше времени, я могу представить два замечательных курса, которые сделают ваш день лучше😉
Первый - Продвинутый JavaScript от Кайла Симпсона, а второй - Продвинутые темы JavaScript Стивена Хэнкока. Конечно, это не единственные ресурсы, их много, но я начал с них.
5. Испытайте себя и улучшите свои навыки решения проблем JS.
Пришло время задержать в уме новые знания, решив некоторые задачи по программированию. Определенно вы должны знать некоторые из них, одна из них, которая приходит мне на ум, - это Hacker Rank, где вы можете увидеть множество вопросов и решить их на месте. Он не только помогает вам в программировании, но также может быть полезен для ваших знаний структуры данных и, что более важно, алгоритма.
6. Откройте для себя одну из самых популярных фреймворков.
Не нужно получать мастер-сертификат по JS, чтобы начать изучать фреймворк, вы можете практиковаться во время работы с фреймворком. Вот в чем дело: вам нужно решить, хотите ли вы быть Front-end или back-end-разработчиком, и на основе этого выбрать фреймворк.
Поскольку освоение фреймворка потребует времени, вам нужно читать и практиковать не только JS, но и фреймворк, который вы выбрали.
Для меня это был node.js, koajs. Я читал документацию и искал всякий раз, когда сталкивался с проблемой справиться с этим.
7. Познакомьтесь с удобными библиотеками.
Вы должны знать общие и полезные пакеты в npm js, который является репозиторием для всех библиотек, которые могут упростить ваш день, и вы перейдете с 🥴 на 😊 :)
Без тени сомнения, жизнь без библиотек иногда становится тяжелой.
Ой, я забыл дать вам ответ на первый вопрос:
a defined? false
b defined? true
Сделай это самостоятельно🤘