Skip to content

Latest commit

 

History

History
186 lines (141 loc) · 9.51 KB

ReadMe-ru-RU.md

File metadata and controls

186 lines (141 loc) · 9.51 KB

Roadmap Go-разработчика

Roadmap Go-разработчика в 2021 году:

Ниже вы можете увидеть диаграмму, демонстрирующую пути и библиотеки, которые вы можете выбрать, чтобы стать разработчиком Go. Я создал эту карту в качестве подсказки для всех тех, кто спрашивает меня: «Что я должен изучать дальше как Go-разработчик?»

English 简体中文版 繁體中文版 日本語版 Versão em Português do Brasil 한국어 Українська فارسی

Дисклеймер

Цель этого Roadmap'a - дать вам представление о мире Go. Он поможет вам, если вы не знаете что изучить дальше, но не будет побуждать вас к выбору того, что находится в тренде или является модным. Вы должны понимать, почему один инструмент подходит для некоторых случаев лучше, чем другой. А также понимать, что если инструмент находится в тренде, то это не всегда означает, что он лучше всего подходит для работы.

Поставьте звёздочку! ⭐

Если вам нравится этот проект или вы используете его для изучения, а также для построения своего решения, поставьте ему звезду. Спасибо!

Roadmap

Roadmap

Ресурсы

  1. Подготовка

  2. Общие навыки разработчика

    • Изучите Git, создайте несколько репозиториев на GitHub, поделитесь своим кодом с другими людьми
    • Изучите HTTP(S)-протокол и методы запросов (GET, POST, PUT, PATCH, DELETE, OPTIONS)
    • Не бойтесь использовать Google (посмотрите курс Power Searching with Google)
    • Прочитайте несколько книг об алгоритмах и структурах данных
    • Узнайте о реализации базовой аутентификации
    • Изучите принципы SOLID, архитектурные паттерны и паттерны проектирования, и т.д.
    • Изучите основы тестирования ПО (Unit, Integration, E2E)
  3. CLI-инструменты

    1. cobra
    2. urfave/cli
  4. Web-фреймворки + роутеры

    1. Beego
    2. Chi
    3. Echo
    4. Fiber
    5. Gin
    6. Revel
  5. Базы данных

    1. Реляционные БД
      1. SQL Server
      2. PostgreSQL
      3. MariaDB
      4. MySQL
      5. CockroachDB
    2. Облачные БД
    3. Поисковые системы
    4. NoSQL
  6. ORM'ы

    1. Gorm
    2. Xorm
  7. Кэширование

    1. GCache
    2. Распределённое кэширование
      1. Go-Redis
      2. GoMemcached
  8. Логирование

    1. Лог-фреймворки
    2. Системы упраления логами
    3. Распределенная трассировка
  9. Коммуникация в реальном времени

    1. Socket.IO
  10. API-клиенты

    1. REST
    2. GraphQL
  11. Полезно знать

  12. Тестирование

    1. Unit-, Behavior-, Integration-тестирование
      1. GoMock
      2. Testify
      3. GinkGo
      4. GoMega
      5. GoCheck
      6. GoDog
      7. GoConvey
      8. Dockertest
    2. E2E-тестирование
  13. Планировка заданий

  14. Микросервисы

    1. Брокер сообщений
    2. Разработка message-driven приложений
    3. Фреймворки
    4. RPC
  15. Go-Patterns

Напоследок

Если вы считаете, что дорожную карту можно улучшить, пожалуйста откройте PR с любыми дополнениями или сообщениями об ошибках. Кроме того, я продолжаю улучшать это, так что вы, возможно, захотите отметить ⭐ этот репозиторий, чтобы зайти сюда потом.

Идея Roadmap'a взята у: ASP.NET Core Developer Roadmap

Внести вклад

Эта карта построена с использованием Draw.io. Файл проекта называется golang-developer-roadmap-ru-RU.xml. Чтобы изменить его, откройте draw.io, нажмите Open Existing Diagram и выберите xml файл с проектом. Это откроет Roadmap у вас. Измените его, загрузите и обновите изображение в Readme (экспортируйте PNG с 400% увеличением, а также уменьшите его с помощью Compressor.io).

  • Откройте Pull Request c улучшениями
  • Обсудите идею в Issues
  • Расскажите всем

Лицензия

License: CC BY-NC-SA 4.0