Введение в язык программирования Go

Поділитися
Вставка
  • Опубліковано 22 лис 2024
  • compscicenter.ru/
    Открытая лекция CS центра
    Лектор: Марат Хабибуллин
    На сайте CS центра: compscicenter....
    Язык Go - минималистичный и сравнительно простой в освоении, хорошо приспособлен к разработке серьёзных -проектов. Во многом благодаря поддержке многопоточности по умолчанию и наличию инструментов для тестирования, профилирования кода и управления зависимостями. В лекции речь идёт о причинах появления и особенностях языка, о его основных возможностях.

КОМЕНТАРІ • 92

  • @lazylion8379
    @lazylion8379 3 роки тому +106

    Отличная лекция, вырубает на 5 минуте, смотрю каждый раз когда не могу уснуть, спасибо

    • @blazecole6376
      @blazecole6376 3 роки тому

      sorry to be offtopic but does anyone know a method to get back into an Instagram account..?
      I stupidly forgot the account password. I would appreciate any help you can give me.

    • @anderszion9389
      @anderszion9389 3 роки тому

      @Blaze Cole instablaster ;)

    • @akapaco
      @akapaco 2 роки тому +3

      Очень не благодарно, ай я яй

    • @gms3194
      @gms3194 2 роки тому

      🤣

    • @AndreiVvedenskii
      @AndreiVvedenskii 2 роки тому +5

      Слабак, я под эту лекцию бухаю))

  • @Cadovvl
    @Cadovvl 3 роки тому +54

    Отличный доклад. Не знаю, как новичкам программирования, но лично мне - идеально. Программировал на разных языках, на го - ни разу. Из доклада понял базовый синтаксис и особенности/фишки го, на которые стоит обратить внимание. Ровно этого и хотел в докладе "введение в язык". Слушать спикера приятно. Спасибо большое!

    • @shameoff16
      @shameoff16 2 роки тому +2

      Полностью поддерживаю. Смотреть что-то вроде "Go за 4 часа" конечно может и прикольно, но слишком много всего простого и мало чего-то сложного. Доклад шикарный. CSC как всегда на высоте

    • @bukanaka
      @bukanaka 2 роки тому

      @@shameoff16 +

  • @DohnSmith
    @DohnSmith 2 роки тому +7

    Конструктивный анализ синтаксиса языка с подробными примерами и описанием. Лектору огромное спасибо за возможность оценить все основные функциональные возможности языка. Сам программировал на Fortran, Matchad, и Python. Думаю что я с удовольствием изучу этот язык программирования.

  • @annj3150
    @annj3150 9 місяців тому

    Спасибо большое, отличная лекция. За такое короткое время столько ключевых моментов расмотрено

  • @vlasiliy
    @vlasiliy 5 років тому +32

    Марат отлично объясняет. Спасибо.

    • @maratkh572
      @maratkh572 5 років тому +15

      Спасибо, рад что вам понравилось, я старался)

  • @ИльяВишневский-к2л
    @ИльяВишневский-к2л 5 років тому +13

    Спасибо! Очень хорошее введение! Так спокойно и понятно, многие детали раскрыты в подробностях.

    • @maratkh572
      @maratkh572 5 років тому +4

      Рад что вам понравилось!

  • @marak5884
    @marak5884 Рік тому +1

    Огромное спасибо! Супер полезный контент для разработчиков, кто вкратце и даже больше хочет пощупать новый язык

  • @rubengirgidov2605
    @rubengirgidov2605 3 роки тому +1

    Я редко пишу хвалебные комментарии, но реально это отличный доклад по введению в язык.

  • @alexanderommm
    @alexanderommm 4 роки тому +7

    Спасибо за доклад, go учить go!

  • @fresonn
    @fresonn 5 років тому +11

    Очень хороший доклад!

  • @andrews2817
    @andrews2817 4 роки тому +12

    Доклад отличный, жаль только вопросов из аудитории не слышно.

  • @maximlyakhov967
    @maximlyakhov967 Рік тому

    доклад супер, спасибо!

  • @IvaNFallout
    @IvaNFallout 4 роки тому +6

    Спасибо, отличный доклад!

  •  4 роки тому +4

    Спасибо за хороший доклад!

  • @alexs7931
    @alexs7931 2 роки тому

    52:46 хорошо объяснил, а то некоторые не могут понять почему rust медленнее go и java.

  • @vladimirmakarov6344
    @vladimirmakarov6344 2 роки тому +1

    Спасибо за доклад!
    Было бы классно слышать вопросы из зала - как вариант, докладчик может в двух словах проговаривать вопрос в микрофон

  • @jeromewicks3896
    @jeromewicks3896 5 років тому +5

    прекрасный доклад

  • @nekosora6036
    @nekosora6036 6 років тому +7

    Супер! Как раз интересно было изучить Go

    • @ПапаТрёх
      @ПапаТрёх 6 років тому +1

      Ждите Go 2.0, потому как в первом уж больно хреново сделана обработка ошибок. Много писанины

    • @superdanya31
      @superdanya31 5 років тому

      @@ПапаТрёх И когда его ждать?

    • @lexkolbin7518
      @lexkolbin7518 5 років тому

      @@ПапаТрёх Тогда уж сразу Go 3.0

    • @temaz3334
      @temaz3334 5 років тому +1

      @@superdanya31 не слушай, чел не в своём уме, а Go прекрасен

    • @coreytodtaylor
      @coreytodtaylor 5 років тому

      @@temaz3334 мысли типичного гофера в вакууме)

  • @zeves_095
    @zeves_095 4 місяці тому

    Хотелось бы увидеть список кейсов когда Go лучше работает и когда лучше не использовать его (не общие слова а более конкретные кейсы). А также какие рантаймы используются на практике?

  • @ilyakrylov7943
    @ilyakrylov7943 4 роки тому +2

    Спасибо, очень интересно 👍

  • @TurboKot1k
    @TurboKot1k 9 днів тому

    после котлина конечно страшно смотреть на эти приседания с интерфейсами, для того чтобы просто сделать сортировку слайса со структурами

  • @zeves_095
    @zeves_095 4 місяці тому

    Горутины (aka Грин треды) управляются планировщиком го. Но они работают поверх ОС треда (которым заведует планировщик ОС). Тогда (вытесняющее) переключение ОС треда может застопорить целую цепочку горутин. И хотя все *тведенное время для цепочки используется по максимуму - но в целом время на каждую горутину будет значительно меньше либо будут двойные расходы на переключение контекста ос треда и контекста горутины.. на выходе получаем что либо очень мало времени на горутину отведено + смена контекста горутины либо двойная смена контекста. Вопрос - а за свет чего получаем прирост производительности?

    • @maksimus.ssirotkin1124
      @maksimus.ssirotkin1124 3 місяці тому

      Эта тема здесь вообще слабо объянена, может атор сам глубоко не знает, Условно в java все логично или фактически Это просто асинхронная обработка на одном ядре процессора, как многопоточка на процессоре с одним ядром или может все-таки быть на много ядер,ч что-то я не понял

  • @zeves_095
    @zeves_095 4 місяці тому

    Не очень понял семантику использования рун - что лежит под капотом: в частности этот тип имеет не фиксированную длину (как происходит алокейт? как происходит определение длинны? В идеале увидеть что из себя представляет слайс рун на *asm’е?

  • @tumenit
    @tumenit 3 роки тому +1

    Хочу еще докладов от Марата.

  • @vskovzgird
    @vskovzgird 2 роки тому

    Хороший доклад для введения. Но, про defer для закрытия файлов - а как же EIO ошибка при системном вызове close() в Linux?

  • @olegshevchenko2975
    @olegshevchenko2975 3 роки тому

    37:27 Типы: Объявление методов
    38:38 В Golang Нет Наследования, но есть Композиция "Встравивание"

  • @shuflyn
    @shuflyn 3 роки тому

    хороший интровью, отличные контексты: рекомендую пытливым ньюбам и миддлам.

  • @ivantarabukin1676
    @ivantarabukin1676 2 роки тому +1

    Похоже парень очень хорошо разбирается. Как его зовут? Есть у него личный канал?

  • @pavelerokhin1512
    @pavelerokhin1512 4 роки тому +1

    превосходно!

  • @zeves_095
    @zeves_095 4 місяці тому

    Можешь описать как именно «умирают» дочерние горутины если заканчивается основная горутина?

  • @Ivan-vb7ch
    @Ivan-vb7ch 2 роки тому

    Замечательно

  • @turalaliyev1764
    @turalaliyev1764 6 місяців тому

    Нет других частей ?

  • @СергійРимар-и5й
    @СергійРимар-и5й 4 роки тому +1

    Отличное введение!) Спасибо! А курс по го есть в csc? Видео записи?

  • @life_xypma
    @life_xypma 2 роки тому +2

    Мне кажется все очень просто с появлением GO. Официальный владелец Java, на которой там было много всего-всего, это Oracal. А они с Гуглом в полной зарубе с судами и тп. вот и придумали свой GO и Kotlin за компанию так как на андроид тоже писали на Jave. Правда все просто?)

    • @HardMix
      @HardMix Рік тому +1

      Всегда в материалистическом подходе ищется финансовая сторона вопроса. Особенно если вспомнить чехарду c лицензионной политической на распространение Java SE сборок. То платная подписка для коммерческих нужд, то Oracle NFTC (No-Fee Terms and Conditions).
      А кроссплатформенность, вау, вот удивили-так-удивили. Спойлер: нет. Даже С# на гну/линуху портирован.

    • @Fufyjd
      @Fufyjd 8 місяців тому

      Kotlin придумали в Jetbrains, а не в гугле. Кстати назвали этот язык программирования в честь острова в Лен.области.

    • @alexeymatveev9031
      @alexeymatveev9031 8 місяців тому

      замечательный Кронштадт

  • @ivan42832
    @ivan42832 4 роки тому +2

    По виду какая-то поделка студенческая этот го, наверное это цена высокой производительности

  • @voilin
    @voilin 4 роки тому

    Это серия лекций? Не могу найти следующие части

  • @voothi-it
    @voothi-it 5 років тому +4

    57:20 Нет ли оговорки в слове "синхронно"?

  • @vesh95
    @vesh95 2 роки тому

    Если посмотреть извне то вполне логично выглядит "sort.Interface". Это вам не php в котором это бы называлось SortInterface чтобы видно было из какого это пакета, причем в совершенно другом пакете в итоге оказывается SortInterface.

  • @ЮрійКіцера
    @ЮрійКіцера Рік тому

    так мало работы на ГО (

    • @MrBoBrilO
      @MrBoBrilO Рік тому

      дохрена и больше +девопсу всегда полезно

  • @Бойправ-ж8ы
    @Бойправ-ж8ы Рік тому

    Что вообще пишется на этом языке? Можно ли написать парсинг сайтов?

    • @vugpgu
      @vugpgu 7 місяців тому

      Нєєє, не для такого. Там ДжС рулит

  • @Ivan-vb7ch
    @Ivan-vb7ch 2 роки тому

    жалко нормальную обработку ошибок не завезли даже за 3 года

  • @ВладимирЗаграновский-в1д

    Не слышно вопросов из зала и эти моменты для online слушателей бесполезны более чем полностью

  • @МаксимВеснин-ш3р
    @МаксимВеснин-ш3р 4 роки тому

    гугл: хочет что бы их код работал быстро
    гугл: делает андроид

    • @robertm.4443
      @robertm.4443 2 роки тому

      Замена уже близко
      Тут масштабы слишком большие наверное, поэтому пока все тот же андроид

  • @ВДЕСЯТКУ-ф3ц
    @ВДЕСЯТКУ-ф3ц 3 роки тому +1

    Мне не понятно мнение людей которые пишут "что все понятно спасибо за доклад".
    Честно получилось бы лучше если докладчик был немой и глухой. Это что за преподаватель который рассказывает о введении в язык программирования словами: "Но тут все понятно, здесь тоже все все понимают, а тут немного не влезает ну короче тоже понятно". Позор такому преподавателю.

    • @Ivan-zc9ds
      @Ivan-zc9ds 3 роки тому +3

      если бы ты видел отборочные в cs, не написал бы такой коммент)

    • @HardMix
      @HardMix Рік тому

      @@Ivan-zc9ds Понятно, андеграундная публика ценителей, не будем Вам мешать. А по существу он прав, для доклада уже шарящим - это просто (даже излишне много воды), а как введение для изучения - вообще не подходит. Тем более, что на канале есть хорошие доклады про Rust.

  • @dvorkinnikrovddvorkinnikro1920
    @dvorkinnikrovddvorkinnikro1920 4 роки тому +2

    Просто убило по обработке ошибок. Мне очень грустно если такие люди пишут IDE.
    1. да исключение может прийти откуда угодно и это нормально. иногда программы генерируют ошибки в самом неожиданном месте и без исключений. это есть нормально. а то что язык позволяет отловить исключение так вообще переводит этот язык на уровень вверх сразу же. поимел бы он дело с ошибками вылетающими из скажем си аппликашке.
    2. ну как бы да можно нагородить эксепшенами аналог goto. так не городите. не мешайте продакшн код с обработкой шибок и будет вам счастье! флоу усложняется? так не надо писать это флоу так сложно. старайтесь разделять код который терпим к ошибкам, и тот который их обрабатывает. какие проблемы?
    3. мифическая производительность! сколько раз я это слышал, но ни разу не слышал вменяемого и логичного обоснования. о какой производительности можно вообще говорить если у тебя исключительная операция случилась?! вот именно в этом месте тебе нужно блок чейн перехешировать?! что за чушь! если у тебя уже произошел фейл, то всё сливай водую главная здесь задача аккуратно и неспеша слить в лог как можно больше информации. ВСЁ! никакой производительности не нужно!
    Честное слово, когда такое вижу понимаю что уровень человека в данной теме даже до джуна не дотягивает.

    • @James_Kirk
      @James_Kirk 4 роки тому +8

      2. Звучит как "не пишите плохой код, а пишите хороший". Очень удобный и очень бессмысленный совет, рекомендую познакомиться с тем, как проектируются системы (любые, не только языки программирования), а потом понять, что пользователи не виноваты в проколах дизайна.
      3. Производительность не мифическая, а вполне себе существенная. При генерации исключения происходит операция наполнения стек трейса, а это стоит весьма дорого. Если отвалилось что-то стороннее, но не критичное для работы всей системы, то 200-300 исключений в секунду могут отразиться на работе остальной системы.

    • @DKAS-g4h
      @DKAS-g4h 4 роки тому +18

      уровень синьйорности комментария зашкаливает

    • @alexgorodecky1661
      @alexgorodecky1661 4 роки тому

      Ярослав С. , а то, что у вас branch торчит практически после каждого вызова(if err != nil) это тоже норм? Платите каждый раз даже на happy path.

    • @alexgorodecky1661
      @alexgorodecky1661 4 роки тому

      igornem11 , C++ itanium ABI о чем-то вам говорит?

    • @alexgorodecky1661
      @alexgorodecky1661 4 роки тому

      igornem11, «и что», говорит, что вы «реальный пацан», вот что xD

  • @kotovalexarian
    @kotovalexarian 4 роки тому

    Очень плохой язык программирования. Не пишите на нём новое ПО.

    • @jeromewicks3896
      @jeromewicks3896 3 роки тому

      почему?

    • @andreevpix
      @andreevpix 3 роки тому +1

      Хайпанул

    • @victorklimov3175
      @victorklimov3175 2 роки тому

      Очень плохая музыка. Сколько раз сюда ходил...

  • @yuriytheone
    @yuriytheone Рік тому +1

    7:49 и ради этого создали жалкое подобие C? Боже мой это как человек не способный выучить C изобретает велосипед... 😂😂😂

    • @ГеоргийДмитриев-д3э
      @ГеоргийДмитриев-д3э 3 місяці тому

      Самое главное это безопасные указатели , и отсутствие препроцессора