php и теперь уже golang • делал всякое - от системы синтаксического анализа русского языка до BPM для рынка недвижимости и автоматизации работы КЦ • несмотря на тему доклада, по своему люблю golang Обо мне
я часто слышал и собирал. Доклад про то, с чем вы обязательно столкнетесь при переходе, но про что обычно не говорят. О чем доклад? 1 2 Я бы сам хотел посмотреть такой доклад 5 лет назад, когда только начал погружаться в golang
в определенных случаях” и имеет дополнительный контекст. 2. Постарайтесь разобраться - почему. Чаще всего каждому “так принято” есть логичное объяснение. 3. С отдельной осторожностью лучше относиться к тому, что “так принято” потому что “такое есть в ядре” В Go “так принято”
int) { s = w * h return } Уже не очень func (r Repo) Save(item Item) (Item, error) { /* подготавливается запрос */ if i, err := /* выполняется запрос, возвращается ошибка */; err != nil { if c, ok := toUniqueViolationErr(err); ok { f := m[c] // <- ?? return Item{}, newErrConflict(f) } return Item{}, err } return i, nil }
Он не простой, но имеет простой синтаксис, например: • Один тип цикла вместо 4-х саму логику не упрощает • Простое распараллеливание никак не упрощает соответствующие проблемы и с ними нужно работать отдельно • При простом синтаксисе выстраивание системы классификации и обработки ошибок - это отдельный квест Специфичность языка и маркетинг
многое принято делать руками: • DI-контейнеры и autowiring не популярны • Большие высокоуровневые библиотеки для работы с БД тоже • Вообще любые библиотеки уровня бизнес-логики Специфичность языка и маркетинг
Многие вещи, которые кажутся странными, сделаны так не просто так и лучше погуглить причину - в отличие от php она чаще всего есть и описана Go-сообщество крайне лояльное к языку, это надо учитывать. Мне в Golang это нравится! Это PHP, дружище!
более низкоуровневый, чем php, поначалу он кажется страшным всегда и рефлексы на запах кода перестают работать. 2. Попытки превратить go в свой любимый php обычно не кончаются ничем хорошим. 3. Сообщество с его “тут так принято” иногда легализует плохие практики. 4. Надо за собой внимательно следить и понимать, что первое время чуйке и рефлексам верить нельзя, а надо себя перепроверять.
враг, который только и ждет, чтобы вы расслабились Язык действительно специфичен, то, что сначала он не заходит - это нормально Не верьте про “так принято”, попытайтесь разобраться 1 2 3 Резюме
Язык не особо безопасен, в некоторых местах он скорее подлый враг, который только и ждет, чтобы вы расслабились Язык действительно специфичен, то, что сначала он не заходит - это нормально Не верьте про “так принято”, попытайтесь разобраться 1 2 3 4 Резюме
Язык не особо безопасен, в некоторых местах он скорее подлый враг, который только и ждет, чтобы вы расслабились Язык действительно специфичен, то, что сначала он не заходит - это нормально Не верьте про “так принято”, попытайтесь разобраться Качество кода после перехода у большинства сильно проседает - первое время придется за собой сильно следить, так как опыт и рефлексы перестают работать 1 2 3 4 5 Резюме