Давайте не будем тратить драгоценное время, поэтому я просто перечислю стек технологий, а затем приведу свои доводы в его пользу.
Стек технологий, который я предпочитаю для новичков:
- Javascript (фронтэнд и бэкенд)
- HTML/CSS (интерфейс)
- React.js (интерфейс)
- Редукс (интерфейс)
- Node.js (бэкенд)
- Express.js (бэкенд)
- MongoDB (бэкенд)
- AWS (Amazon Web Services — для облачной инфраструктуры)
Итак, я надеюсь, что вы проведете больше исследований по каждой из технологий в стеке. после того, как вы закончите читать эту статью.
Мои причины выбора этого стека технологий
Основная причина, по которой я выбрал технологии, которые я сделал, заключается в том, что это сэкономит много времени индивидуальному ученику.
Технологии, которые я упомянул в стеке технологий, очень хорошо дополняют друг друга и пользуются широкой поддержкой сообщества.
Почему Javascript?
Во-первых, я выбрал Javascript в качестве вашего первого языка программирования из-за того, что вы можете использовать его для создания внешних и внутренних приложений.
В зависимости от ваших интересов, вы можете начать сначала с изучения того, как создавать интерфейс или серверную часть. Я сам начинал с создания фронтенд-приложений на React.js.
Но я бы, наверное, начал сначала с бэкэнда, если бы мог сделать это снова и снова.
Создание серверных приложений действительно помогает понять многие фундаментальные концепции Javascript, поскольку вы создаете программное обеспечение с нуля без фреймворка.
Вы также можете получить более глубокие знания о том, как код, который вы пишете, взаимодействует с физической машиной, на которой он выполняется. Например, как читать и записывать файлы с помощью Node.js на компьютере с Linux.
Чаще всего мы начинаем этот путь кодирования самостоятельно, поэтому важно использовать время максимально эффективно. Этой цели соответствует возможность использовать один язык как для фронтенда, так и для бэкенда.
Почему HTML/CSS?
это позволит вам понять, почему веб-страницы в Интернете выглядят именно так.
Не говоря уже о том, что вы можете очень быстро раскрутить свой собственный веб-сайт с личным портфолио, который поможет вам найти свою первую работу разработчика программного обеспечения.
W3School — отличный ресурс для изучения этого как новичка.
Почему React.js?
Это должно помочь вам подготовиться к работе и предоставить вам как можно больше возможностей трудоустройства.
React.js — это интерфейсный фреймворк, используемый многими технологическими компаниями для создания своих интерфейсных приложений, поэтому хорошее владение им открывает перед вами как разработчиком программного обеспечения множество дверей.
В 2021 году это был самый популярный интерфейсный фреймворк.
Всегда полезно изучить вещи, которые вы могли бы использовать, чтобы найти работу в своем путешествии по программированию. Вы должны правильно питаться?
Почему Redux?
Redux и React.js хорошо сочетаются друг с другом, и существует множество библиотек, которые беспрепятственно поддерживают использование обеих этих технологий, например:
npm i --save react-redux
Всегда полезно использовать программные пакеты, такие как react-redux, при хорошей поддержке сообщества.
Только представьте, что если вы попытаетесь устранить ошибку в большом программном пакете самостоятельно, без помощи сообщества, вы будете биться головой несколько дней.
Вы можете получить более глубокие знания о Redux в серии наших блогов здесь.
Короче говоря, ключевые концепции Redux:
- Store (один объект, управляющий всем состоянием приложения)
- Редукторы (различные области состояний в вашем приложении, например, состояние аутентификации, состояние профиля и т. д.)
- Неизменяемость (мы не меняем состояние напрямую, вместо этого мы всегда сначала делаем копию объекта состояния, а затем объединяем с ним новые изменения)
- Действия (мы используем их для обработки)
- Промежуточное ПО (функция, которая перехватывает ваши редукс-действия до того, как они попадут в редукторы)
Почему Node.js?
Прежде всего, вы можете узнать, как установить Node.js на свой компьютер, посетив этот короткий урок здесь.
Основная причина — простота разработки. Вам не нужно тратить еще несколько месяцев на изучение нового языка.
Когда мы пишем программу, мы должны помнить о принципе, что программа должна делать только одну вещь и делать это хорошо. Если вы применяете тот же принцип к обучению, то мы должны сначала сосредоточиться на том, чтобы добиться исключительно хороших результатов в одном языке, прежде чем мы будем изучать какие-либо другие новые вещи.
Идея состоит в том, чтобы сначала сделать себя как можно более пригодным для работы в одном стеке технологий.
Но как только вы устроились — НЕ расслабляйтесь.
Чтобы преуспеть в технологической отрасли, вы должны постоянно развиваться, изучая новые навыки и технологии.
Вот некоторые практические преимущества использования Node.js:
- Он имеет обширную библиотеку пакетов с открытым исходным кодом, которые могут помочь вам решить множество задач, от определения языка, на котором написан фрагмент текста, до преобразования файлов JSON в файлы CSV. Все эти программные пакеты означают, что они сэкономят вам кучу времени, поскольку вам не нужно создавать программные инструменты с нуля.
https://www.npmjs.com/package/languagedetect
npm i --save languagedetect
npm i --save json2csv
- С помощью Node.js очень легко создавать API (интерфейс прикладных программ), особенно с помощью пакетов NPM, таких как Express.js.
npm i --save express
- Node.js обрабатывает запросы к серверу асинхронно, поэтому он очень быстрый и может обрабатывать значительное количество запросов. Если вы хотите узнать больше о Node.js, вы можете найти серию наших блогов о Node.js здесь.
- Обычно мы запускаем Javascript в браузере, но если вы хотите запускать Javascript вне браузера, лучше всего начать с Node.js.
- Хотя Node.js — отличное место для начала разработки бэкенд-кода с использованием Javascript, он ни в коем случае не единственный игрок в этом пространстве. Недавно появились два новых игрока:
Это официальная документация для Node.js:
Почему MongoDB?
MongoDB — это база данных NoSQL.
NoSQL отлично подходит для следующих вещей:
- Масштабирование распределенных данных
- Он не содержит схемы, поэтому ограничений меньше, чем при хранении данных в традиционной базе данных SQL. Это хорошо, когда вы заранее не знаете, как ваши данные будут структурированы и связаны друг с другом.
- Так что это хорошо для хранения неструктурированных данных
- Это также хорошо, когда формат ваших данных будет сильно меняться, например. как на ранних стадиях нового стартапа — данные часто меняются
Почему AWS (Amazon Web Services)?
Отличное место, чтобы начать свои эксперименты с облачными вычислениями.
Понимание того, как использовать облачные вычисления с любыми платформами, такими как Azure, Google или AWS, сделает вас еще более перспективным.
В AWS очень легко развернуть серверы, называемые экземплярами EC2, для создания серверной кодовой базы.
Дополнительную информацию об инстансах EC2 можно найти здесь:
Мы никоим образом не связаны с AWS, и любые рекомендации основаны на личных предпочтениях автора, который имеет непосредственный опыт использования платформ may.
Мы предлагаем следующие программы обучения один на один:
- Полная веб-разработка
- Подготовка к интервью
Если у вас есть какие-либо вопросы относительно наших услуг или публикаций, вы можете связаться с нами по адресу [email protected]
Мы регулярно публикуем короткие технические руководства, поэтому рассмотрите возможность подписки на наш блог Medium.
До следующего раза — продолжайте программировать, продвигаясь небольшими шагами вперед в этом своем приключении.
Но что еще более важно, оставайтесь сосредоточенными!