Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Go: начало

Go: начало

Доклад на конфереции DevConf

Alexey Palazhchenko

June 17, 2017
Tweet

More Decks by Alexey Palazhchenko

Other Decks in Programming

Transcript

  1. (IMHO) • Этот доклад отражает моё личное мнение • Иногда

    оно совпадает с консенсусом сообщества • Иногда нет
  2. Go • Начался в сентябре 2007 года, открыт в ноябре

    2009 • Компилируемый, статически типизированный, со статической линковкой, со сборщиком мусора, с CSP конкурентностью • Для написания больших систем • Очень простой: просто писать, просто читать
  3. Для чего • Сервисы, микро-сервисы, мини-сервисы, макро- сервисы и мега-сервисы

    • Инфраструктурные инструменты • CLI • Можно пойти и дальше: веб-сайты, ML, …
  4. 3 не • Не боритесь с языком • Не делайте

    исключения из panic/recover • Не обходите систему типов при помощи interface{}
  5. 3 не • Не боритесь с языком • Не делайте

    исключения из panic/recover • Не обходите систему типов при помощи interface{} • Не боритесь с тулингом • GOPATH • Import paths
  6. 3 не • Не боритесь с языком • Не делайте

    исключения из panic/recover • Не обходите систему типов при помощи interface{} • Не боритесь с тулингом • GOPATH • Import paths • Не используйте слишком много конкурентности
  7. Первые шаги • tour.golang.org • How to Write Go Code

    • Effective Go • FAQ • Language Specification
  8. Управление зависимостями • import "github.com/gorilla/mux" • С версионированием всё плохо

    :( • Не делайте свой велосипед • vendor/ • Используйте dep и не молчите
  9. Веб-фреймворки • Они есть • Они не очень популярны •

    Из больших: возможно, только gobuffalo.io
  10. Веб-фреймворки • Они есть • Они не очень популярны •

    Из больших: возможно, только gobuffalo.io • Из небольших: echo, chi
  11. Где спросить? • golang-ru @ Google Groups • 4gophers.ru/slack •

    Подкаст GolangShow • meetup.com/Golang-Moscow