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

  Рет қаралды 17,939

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

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

Күн бұрын

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

Пікірлер: 28
@user-wz3yt9li2s
@user-wz3yt9li2s 7 ай бұрын
мем про с++ порадовал) особенно когда ты из будущего
@PatsevAnton
@PatsevAnton 2 ай бұрын
Я бы спросил от какого языка больше радости писать код? Go или c++
@serufim
@serufim Ай бұрын
блен, я в своем опыте переезда как-то столкнулся с дрочевом считывания из stdin значений. если там на питоне просто можно map(int,input().split()) то на го считать массив переменной длинны, это просто надо писать кучу лапши, что вообще убивает какое-то удовольсвтие от решения задачек в контестах
@phonkabuser3985
@phonkabuser3985 4 күн бұрын
а зачем на го контесты решать, когда есть плюсы. Нам не же даже структур нет, только мапа
@romanbush5164
@romanbush5164 Ай бұрын
как же на этом написали minio?
@oleinikv89
@oleinikv89 6 ай бұрын
Спксибо, было интересно послушать. Просматриваю на Го как дополнение к старому верному Пыху P.S. 'Скедулер' это, конечно, сильно 😂😂😂
@chasubavil
@chasubavil 8 ай бұрын
1:35 Повсюду тиражируется это недопонимание: не "равноценная замена системных языков C/C++", а "замена языков, плохо подходящих для прикладных задач компании Google". Т.е. Go это скорее новая Java.
@figaro2440
@figaro2440 5 ай бұрын
нет, он не похож на java совсем, go не подходит ни для мобильной разработки ни для сурового этерпрайза от слова совсем. Замена java это Kotlin и Scala, ну и C# если этерпрайз на windows. Вообще на Go занимается очень ограниченная ниша, это стартапы, хайповые микросервисы популярность которых начала резко падать, небольшие консольные утилиты, переписывание медленных участков интерпретируемых языков, например python
@kshetragia
@kshetragia 3 ай бұрын
@@figaro2440 что такое суровый энтерпрайз понятия не имею. На го прекрасно пишется что-то более сложное хелловорд. Но и для мобильной разработки и для UI как такового - не всё так печально. Например, есть fyne. Чем ограничена ниша для языка общего назначения - тоже вопрос.Через какое-то, не слишком продолжительное время, люди перейдут на Го с других языков. Уже это делают. Прежде всего с php и python-a. У Го есть все шансы прикончить их. Проблема Го в тихой революции, которую никто пока толком не оценил.
@newgrafon5185
@newgrafon5185 Ай бұрын
​@@figaro2440кто сказал что популярность микросервисов падает?
@validationerror3830
@validationerror3830 Ай бұрын
@@figaro2440 c# уже десять тысяч лет как кросплатформенный, а челы до сих пор асоциируют его с виндой, как же майкрософт жестко обосрались в свое время
@hanmajack935
@hanmajack935 Ай бұрын
​@@kshetragiaникого он не похоронит, он занял свою нишу как инфраструктурный язык и переписывание участков с высокой нагрузкой и все, как правильно сказал товарищ выше никто не будет писать большой бэкенд со сложной бизнес логикой на Go, для этого были есть и будут, Java/Kotlin/Scala/C# и даже никто не будет на нем писать или полностью переписывать большой бэкенд по меркам php,python,ruby, просто потому что он для этого не предназначен от слова совсем Не стоить верить сказкам всяких псевдо гигантов аля озон, что они все переписали на go, но как то странно при этом вся основная бизнес логика у них на python, а там у них где нужен реальная огромный перформанс используется C++)) Не надо быть гением чтоб понять что пиар го искусственный и то только на территории РФ
@ypohut1673
@ypohut1673 3 ай бұрын
С питоши будет легко перейти?
@sariya271
@sariya271 2 ай бұрын
я вот щас перехожу, +- норм. Но коммунити у них так себе
@revoluxe
@revoluxe Ай бұрын
После питоне мне он прям залетел, для своих задач реально песенка
@petrkassadinovich2705
@petrkassadinovich2705 Ай бұрын
@@sariya271 а что с ним? Сам щас к ГО присматриваюсь.
@idrayv
@idrayv 6 ай бұрын
Самое начало видео, про замыкания, чел сказал что сум хранится в куче, замыкание, примитив, в куче? не обмолвился ли?
@sokol94ins
@sokol94ins 6 ай бұрын
Все верно, sum будет на куче. Компилятор располагает в куче переменные на которые ссылаются не из контекста самой функции. Называется это escape-analysis. В данном случае уже после выполнения adder, c sum что-то делают.
@kshetragia
@kshetragia 3 ай бұрын
можно сделать через стек, но для этого придется возвращать sum через аргументы функции как указатель.
@pavel_trpn
@pavel_trpn 11 ай бұрын
24:15 - "cgo не для производительностьи а для совместимости" - чуть ли не Рас Кокс (кто то из авторитетов).
@littleceaser
@littleceaser Ай бұрын
25:00 слева Джим из сериала офис?
@RadikKarimov-vs8ye
@RadikKarimov-vs8ye 9 күн бұрын
parkour!
@user-fw3on5ih3q
@user-fw3on5ih3q 8 ай бұрын
замена си ага
@kshetragia
@kshetragia 3 ай бұрын
ага. хорошая замена Си. Там где приемлемо наличие сборщика мусора и нет указательной арифметики.
@pika8484
@pika8484 5 ай бұрын
PHP рулит
@boobubuo
@boobubuo 7 ай бұрын
дак метод или интерфейс ? если метод то классы .. захрена тогда эта хрень под названием интерфейс котоырй называется методом ??
@kshetragia
@kshetragia 3 ай бұрын
Классов в Го как таковых нет. Есть структура, которая может иметь свои методы. Она поддерживает инкапсуляцию и одноуровневое наследование через встраивание типов(а как мы знаем наследование больше одного уровня порождает больше проблем чем их решает). Можно называть это классом, но типа "класс" в Го нет, он избыточен. Полиморфизм реализуется через интерфейсы.
Заметили?
00:11
Double Bubble
Рет қаралды 3,5 МЛН
когда достали одноклассники!
00:49
БРУНО
Рет қаралды 4,2 МЛН
КАРМАНЧИК 2 СЕЗОН 6 СЕРИЯ
21:57
Inter Production
Рет қаралды 518 М.
Антон Сергеев, «Go под капотом»
36:37
Kolesa Group
Рет қаралды 89 М.
FPGA - это не только FPGA
48:54
Yuri Panchul
Рет қаралды 1,2 М.
Что такое gRPC и Protobuf?
8:37
Merion Academy
Рет қаралды 39 М.
Back. Go vs Python
1:03:40
ProIT Fest
Рет қаралды 4,2 М.
GoLang Slice в деталях, простым языком
32:09
Николай Тузов — Golang
Рет қаралды 72 М.
С ноутбуком придется попрощаться
0:18
Up Your Brains
Рет қаралды 385 М.
Задача APPLE сделать iPHONE НЕРЕМОНТОПРИГОДНЫМ
0:57
Дени против умной колонки😁
0:40
Deni & Mani
Рет қаралды 11 МЛН
ВСЕ МОИ ТЕЛЕФОНЫ
14:31
DimaViper Live
Рет қаралды 31 М.