Сейчас буду набрасывать, я предупредил.
Все обсуждают статью "Go развивается в неверном направлении".
TLDR: дженерики усложнили код, но никто ими не пользуется, итераторы, которые ввели в 1.23 усложнили код, но это просто сахар для того, чтобы чуть по-другому перебирать коллекции.
Короче, я ваще не согласен )
Дженерики уже давно с нами, но никому не мешают. Никто ими не пользуется, да, но никто не пользуется в продуктовом коде. Но зато, например, стандартная библиотека наконец-то получила универсальные функции типа "поискать элемент в слайсе", и на мой взгляд это биг факин дил.
Всякие там sql.Null[T] в 3d-party библиотеках тоже облегчают жизнь. Т.е. реальных проблем от дженериков на практике я не вижу, а реальная польза есть 100%.
А итераторы - это не просто синтаксический сахар, блин. Это же команда yield, временно прерывающая исполнение, и всё такое. Другой флоу вообще.
Я уверен, что будет куча мест, где можно будет заменить елдой каналы, и код станет намного проще и быстрее (потому что не надо дёргать планировщик).
Ну да, где-то появится два способа обхода коллекций - старый и новый. Ну и что, мозг уже не способен это переварить или что? Имхо это вообще не проблема.
Единственное, что плохо - это то, что надо изучить что-то новое. Ну т.е. Go хорош тем, что один раз выучил за условные выходные и потом ничего делать не надо 20 лет, не меняется ничего. Можно до пенсии спокойно писать свои микросервисы.
Короч, теперь это не так, теперь надо напрячься и раз в 5 лет изучить что-то типа дженериков или итераторов. Ну капец прям. Go всё равно в 5 раз быстрее учится, чем современный PHP, например.
Наброс закончен 🙂
Post #331
2.59K
- 👍 34
- 🔥 4
- 🥴 4
- ❤ 2
- 💯 1
- 🤷 1