Все хейтят PHP за то что у него куча функций, в которых порядок параметров то так, то сяк. Но у PHP хорошая документация, и ничего не мешает зайти и посмотреть, да даже среда разработки подсвечивает и показывает что в каком порядке надо делать. Но в Go ситуация намного, намного хуже.
Простой последний пример: нужно использовать Redis, ну разумеется идем в google, вбиваем и видим библиотеку на github’е. Идем туда, скачиваем библиотеку.
go get github.com/redis/go-redis/v9
А дальше?
![](https://rudinandrey.ru/wp-content/uploads/2024/07/image.png)
а какой у переменной может быть тип? я же в реальном приложении не буду в одной функции main его использовать, и что делать? Идти самому в функцию NewClient смотреть что она возвращает.
С подобным я столкнулся в библиотеке по Radius серверу, как вернуть клиенту дополнительные параметры? вообще не понятно. Но тут я попросил ChatGPT мне это сделать и увидел как это делается, хоть какая то польза от GPT есть.
А работа со строками? как найти что в строке есть подстрока?
strings.Contains(source, search)
максимально понятно 🙂
а не source.Contains(search)
в общем тоже такое себе. Хотя ничего идеального в этом мире нет, я это понимаю. Просто хотел это подсветить.