Переходим на Go с других языков: парадигмы, удобство и неудобства технологии
ฝัง
- เผยแพร่เมื่อ 1 มิ.ย. 2024
- Евгений Соколов раньше писал на C++ и Python, а в YADRO смог быстро перейти на Go. Он хорошо помнит боль такого перехода, но и радость от фишек вроде многопоточности. В докладе вас ждет верхнеуровневый разбор того, как работают горутины и синхронизация (и почему она такая классная!), а также множество примеров кода, который мы иногда будем ломать, а затем чинить.
00:00 - о докладчике и структуре доклада
01:35 - о фишках Go в одном слайде
02:45 - о специфичном ООП и назначении языка
04:45 - чего не ждать от Go
05:50 - почему многопоточность в Go такая классная (и как она работает)
09:30 - как работает планировщик в Go
12:20 - про каналы в горутинах (и как их сломать и починить)
15:00 - боли разработчика на Go
16:00 - комплектация языка: модули, gofmt и т.д.
19:15 - личный опыт перехода на Go c опытом в другом языке
21:25 - вопросы докладчику - วิทยาศาสตร์และเทคโนโลยี
блен, я в своем опыте переезда как-то столкнулся с дрочевом считывания из stdin значений. если там на питоне просто можно map(int,input().split()) то на го считать массив переменной длинны, это просто надо писать кучу лапши, что вообще убивает какое-то удовольсвтие от решения задачек в контестах
Я бы спросил от какого языка больше радости писать код? Go или c++
мем про с++ порадовал) особенно когда ты из будущего
как же на этом написали minio?
Спксибо, было интересно послушать. Просматриваю на Го как дополнение к старому верному Пыху
P.S. 'Скедулер' это, конечно, сильно 😂😂😂
25:00 слева Джим из сериала офис?
parkour!
1:35 Повсюду тиражируется это недопонимание: не "равноценная замена системных языков C/C++", а "замена языков, плохо подходящих для прикладных задач компании Google". Т.е. Go это скорее новая Java.
нет, он не похож на java совсем, go не подходит ни для мобильной разработки ни для сурового этерпрайза от слова совсем. Замена java это Kotlin и Scala, ну и C# если этерпрайз на windows. Вообще на Go занимается очень ограниченная ниша, это стартапы, хайповые микросервисы популярность которых начала резко падать, небольшие консольные утилиты, переписывание медленных участков интерпретируемых языков, например python
@@figaro2440 что такое суровый энтерпрайз понятия не имею. На го прекрасно пишется что-то более сложное хелловорд. Но и для мобильной разработки и для UI как такового - не всё так печально. Например, есть fyne.
Чем ограничена ниша для языка общего назначения - тоже вопрос.Через какое-то, не слишком продолжительное время, люди перейдут на Го с других языков. Уже это делают. Прежде всего с php и python-a. У Го есть все шансы прикончить их.
Проблема Го в тихой революции, которую никто пока толком не оценил.
@@figaro2440кто сказал что популярность микросервисов падает?
@@figaro2440 c# уже десять тысяч лет как кросплатформенный, а челы до сих пор асоциируют его с виндой, как же майкрософт жестко обосрались в свое время
@@kshetragiaникого он не похоронит, он занял свою нишу как инфраструктурный язык и переписывание участков с высокой нагрузкой и все, как правильно сказал товарищ выше никто не будет писать большой бэкенд со сложной бизнес логикой на Go, для этого были есть и будут, Java/Kotlin/Scala/C# и даже никто не будет на нем писать или полностью переписывать большой бэкенд по меркам php,python,ruby, просто потому что он для этого не предназначен от слова совсем
Не стоить верить сказкам всяких псевдо гигантов аля озон, что они все переписали на go, но как то странно при этом вся основная бизнес логика у них на python, а там у них где нужен реальная огромный перформанс используется C++))
Не надо быть гением чтоб понять что пиар го искусственный и то только на территории РФ
Самое начало видео, про замыкания, чел сказал что сум хранится в куче, замыкание, примитив, в куче? не обмолвился ли?
Все верно, sum будет на куче. Компилятор располагает в куче переменные на которые ссылаются не из контекста самой функции. Называется это escape-analysis. В данном случае уже после выполнения adder, c sum что-то делают.
можно сделать через стек, но для этого придется возвращать sum через аргументы функции как указатель.
С питоши будет легко перейти?
я вот щас перехожу, +- норм. Но коммунити у них так себе
После питоне мне он прям залетел, для своих задач реально песенка
@@sariya271 а что с ним? Сам щас к ГО присматриваюсь.
24:15 - "cgo не для производительностьи а для совместимости" - чуть ли не Рас Кокс (кто то из авторитетов).
замена си ага
ага. хорошая замена Си. Там где приемлемо наличие сборщика мусора и нет указательной арифметики.
PHP рулит
дак метод или интерфейс ? если метод то классы .. захрена тогда эта хрень под названием интерфейс котоырй называется методом ??
Классов в Го как таковых нет. Есть структура, которая может иметь свои методы. Она поддерживает инкапсуляцию и одноуровневое наследование через встраивание типов(а как мы знаем наследование больше одного уровня порождает больше проблем чем их решает). Можно называть это классом, но типа "класс" в Го нет, он избыточен.
Полиморфизм реализуется через интерфейсы.