Переходим на Go с других языков: парадигмы, удобство и неудобства технологии

  Переглядів 16,245

Истовый Инженер

Истовый Инженер

День тому

Евгений Соколов раньше писал на 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 - вопросы докладчику

КОМЕНТАРІ: 26
@user-wz3yt9li2s
@user-wz3yt9li2s 6 місяців тому
мем про с++ порадовал) особенно когда ты из будущего
@serufim
@serufim 7 днів тому
блен, я в своем опыте переезда как-то столкнулся с дрочевом считывания из stdin значений. если там на питоне просто можно map(int,input().split()) то на го считать массив переменной длинны, это просто надо писать кучу лапши, что вообще убивает какое-то удовольсвтие от решения задачек в контестах
@littleceaser
@littleceaser 5 днів тому
25:00 слева Джим из сериала офис?
@chasubavil
@chasubavil 7 місяців тому
1:35 Повсюду тиражируется это недопонимание: не "равноценная замена системных языков C/C++", а "замена языков, плохо подходящих для прикладных задач компании Google". Т.е. Go это скорее новая Java.
@figaro2440
@figaro2440 4 місяці тому
нет, он не похож на java совсем, go не подходит ни для мобильной разработки ни для сурового этерпрайза от слова совсем. Замена java это Kotlin и Scala, ну и C# если этерпрайз на windows. Вообще на Go занимается очень ограниченная ниша, это стартапы, хайповые микросервисы популярность которых начала резко падать, небольшие консольные утилиты, переписывание медленных участков интерпретируемых языков, например python
@kshetragia
@kshetragia 2 місяці тому
@@figaro2440 что такое суровый энтерпрайз понятия не имею. На го прекрасно пишется что-то более сложное хелловорд. Но и для мобильной разработки и для UI как такового - не всё так печально. Например, есть fyne. Чем ограничена ниша для языка общего назначения - тоже вопрос.Через какое-то, не слишком продолжительное время, люди перейдут на Го с других языков. Уже это делают. Прежде всего с php и python-a. У Го есть все шансы прикончить их. Проблема Го в тихой революции, которую никто пока толком не оценил.
@newgrafon5185
@newgrafon5185 27 днів тому
​@@figaro2440кто сказал что популярность микросервисов падает?
@validationerror3830
@validationerror3830 25 днів тому
@@figaro2440 c# уже десять тысяч лет как кросплатформенный, а челы до сих пор асоциируют его с виндой, как же майкрософт жестко обосрались в свое время
@hanmajack935
@hanmajack935 8 днів тому
​@@kshetragiaникого он не похоронит, он занял свою нишу как инфраструктурный язык и переписывание участков с высокой нагрузкой и все, как правильно сказал товарищ выше никто не будет писать большой бэкенд со сложной бизнес логикой на Go, для этого были есть и будут, Java/Kotlin/Scala/C# и даже никто не будет на нем писать или полностью переписывать большой бэкенд по меркам php,python,ruby, просто потому что он для этого не предназначен от слова совсем Не стоить верить сказкам всяких псевдо гигантов аля озон, что они все переписали на go, но как то странно при этом вся основная бизнес логика у них на python, а там у них где нужен реальная огромный перформанс используется C++)) Не надо быть гением чтоб понять что пиар го искусственный и то только на территории РФ
@oleinikv89
@oleinikv89 5 місяців тому
Спксибо, было интересно послушать. Просматриваю на Го как дополнение к старому верному Пыху P.S. 'Скедулер' это, конечно, сильно 😂😂😂
@romanbush5164
@romanbush5164 19 днів тому
как же на этом написали minio?
@PatsevAnton
@PatsevAnton Місяць тому
Я бы спросил от какого языка больше радости писать код? Go или c++
@idrayv
@idrayv 5 місяців тому
Самое начало видео, про замыкания, чел сказал что сум хранится в куче, замыкание, примитив, в куче? не обмолвился ли?
@sokol94ins
@sokol94ins 5 місяців тому
Все верно, sum будет на куче. Компилятор располагает в куче переменные на которые ссылаются не из контекста самой функции. Называется это escape-analysis. В данном случае уже после выполнения adder, c sum что-то делают.
@kshetragia
@kshetragia 2 місяці тому
можно сделать через стек, но для этого придется возвращать sum через аргументы функции как указатель.
@ypohut1673
@ypohut1673 2 місяці тому
С питоши будет легко перейти?
@sariya271
@sariya271 Місяць тому
я вот щас перехожу, +- норм. Но коммунити у них так себе
@revoluxe
@revoluxe 18 днів тому
После питоне мне он прям залетел, для своих задач реально песенка
@petrkassadinovich2705
@petrkassadinovich2705 8 днів тому
@@sariya271 а что с ним? Сам щас к ГО присматриваюсь.
@pavel_trpn
@pavel_trpn 10 місяців тому
24:15 - "cgo не для производительностьи а для совместимости" - чуть ли не Рас Кокс (кто то из авторитетов).
@user-fw3on5ih3q
@user-fw3on5ih3q 7 місяців тому
замена си ага
@kshetragia
@kshetragia 2 місяці тому
ага. хорошая замена Си. Там где приемлемо наличие сборщика мусора и нет указательной арифметики.
@pika8484
@pika8484 4 місяці тому
PHP рулит
@boobubuo
@boobubuo 5 місяців тому
дак метод или интерфейс ? если метод то классы .. захрена тогда эта хрень под названием интерфейс котоырй называется методом ??
@kshetragia
@kshetragia 2 місяці тому
Классов в Го как таковых нет. Есть структура, которая может иметь свои методы. Она поддерживает инкапсуляцию и одноуровневое наследование через встраивание типов(а как мы знаем наследование больше одного уровня порождает больше проблем чем их решает). Можно называть это классом, но типа "класс" в Го нет, он избыточен. Полиморфизм реализуется через интерфейсы.
Ах Ты Ж Су... Не Провоцируй Меня! @NutshellAnimations
00:15
Глеб Рандалайнен
Переглядів 1,6 млн
когда одна дома // EVA mash
00:51
EVA mash
Переглядів 9 млн
Антон Сергеев, «Go под капотом»
36:37
Kolesa Group
Переглядів 86 тис.
Разбираем основы Kafka и RabbitMQ
26:54
Digital train | Alex Babin
Переглядів 8 тис.
Что такое gRPC и Protobuf?
8:37
Merion Academy
Переглядів 34 тис.
Java vs Go. Что выбрать?
14:17
Sergey Nemchinskiy
Переглядів 53 тис.
C++ Разработчик учит Python
28:01
Winderton
Переглядів 465 тис.
iPhone - телефон для нищебродов?!
0:53
ÉЖИ АКСЁНОВ
Переглядів 3,8 млн
Рекламная уловка Apple 😏
0:59
Яблык
Переглядів 731 тис.
I wish I knew this When Istarted Programming #school #software  #codingtips
0:34
Claude Ams - Programming Guru 💻
Переглядів 14 млн