Язык программирования Golang - что на нем пишут, чем он хорош, зарплаты разработчиков
Vložit
- čas přidán 16. 05. 2024
- В этом видео поговорим про новый, модный и немножко на хайпе язык программирования GO
Курс о котором говорит Сергей: 🎓GOLANG - bit.ly/3O6iVWL
Оплата помесячно. Чем быстрее учитесь, тем быстрее закончите!
Есть вопросы по обучению в FoxmindEd? Пишите нам в телеграм - t.me/foxminded
Вы можете стать спонсором канала и получать плюшки - / @sergeynemchinskiy
❤ FoxmindEd в Instagram: / foxminded.ua
____________________________________________________
🔝Друзья, вы знаете, что FoxmindEd заботится об отличном качестве своих курсов👨💻
Чтобы продолжать держать его на соответствующем уровне, своевременно обновлять и записывать новые актуальные продукты, мы должны немного поднять цену на начинающие курсы с 20.05.2024:
🏆 Java Start, Python Start, Swift Start, C# Start, C++ Start, JavaScript Start = 3550 грн вместо 2450 грн
🏆 Java Tools, Алгоритмы и структуры данных = 3950 грн вместо 2950 грн
Торопитесь приобрести стартовый курс от FoxmindEd перед повышением цены 👉 go.foxminded.ua/3QLyruC
Курсы для новичков:
🎓JAVA - bit.ly/3zHvGmg
🎓JAVA Start - bit.ly/3NZiNbn
🎓PYTHON - bit.ly/3MTUzy4
🎓PYTHON Start - bit.ly/3O6iT15
🎓C#/.NET - bit.ly/3MXZrCj
🎓C# START - bit.ly/3OfXy4W
🎓Инструментарий JAVA - bit.ly/3O3pmtN
🎓Automation QA (Java) - bit.ly/39wpZgh
🎓ANDROID - bit.ly/3Hy9Ao9
🎓FRONT-END (ANGULAR) - bit.ly/3tGp5ET
🎓FRONT-END (REACT) - bit.ly/3xtDGEK
🎓SALESFORCE Developer - bit.ly/3tGPjXK
🎓UI/UX дизайн - bit.ly/3tDXCDW
🎓GAME DEVELOPMENT - bit.ly/3tBVv3p
🎓IOS разработка - bit.ly/3QrvrBN
🎓PHP - bit.ly/3tI5BQ6
🎓Обучение на проекте - bit.ly/3QnoK3P
🎓Unity - bit.ly/3tHwzHz
🎓NODE.JS - bit.ly/3QuN184
Продвинутые курсы для состоявшихся девелоперов:
🎓GRASP and GoF Design patterns - bit.ly/3OonoE7
🎓Алгоритмы и структуры данных - bit.ly/3xwufUZ
🔧 Пробное техническое собеседование со специалистом уровня Senior Developer/ Team Leader - bit.ly/3Hu8vh8
👔 Карьерная консультация с Сергеем Немчинским - bit.ly/3QlMvct
Сайт FoxmindEd: bit.ly/3xBWxNN
FoxmindEd в ФБ: / foxmindedco
FoxmindEd в Instagram: / foxminded.ua
Мой Telegram: t.me/nemchinskiyOnBusiness
Для деловых запросов: youtube@foxminded.ua
Тайминг:
00:00 - вступление
00:23 - история языка GO
02:03 - в чем суть языка GO?
02:58 - языки C и Rust
03:56 - для чего создали GO
05:04 - что пишут на GO
08:14 - спрос на разработчиков
08:47 - особенности языка
10:17 - кому подойдет этот язык?
11:12 - порог входа
14:38 - будущее этого языка
16:04 - зарплаты
17:05 - противоречивые примеры
9 инсайтов за десятки лет в айти: Почему я не спал 3 месяца, про раздолбаев и КАК Я К ЭТОМУ ПРИШЕЛ - czcams.com/video/u-MKqf4TIK4/video.html
Нам нужен goland разраб с опытом не менее 20 лет и не старше 25 лет
😅
Думаете ещё не родился такой индус?
Да, и именно Goland, Golang не предлагать!😁
@@ShuntySK , это опечатка)
Мож IDEшку разрабатывать? Но она на java
Звук в видео очень приятный)
Сергей, классное видео!
я дожил до этого, Сергей перечисляет плюсы Go. Осталось дожить до списка плюсов NodeJS :D
Просто у Foxminded появился курс по гошке, вот и нахваливает)
Будет курс по Коболу - и там найдёт плбсы6!)
Расскажите ему уже хоть кто-нибудь, что пхп и нода давно уже топ языки с дикой скоростью))
@@tomatguitar может, наоборот? Сначала оцениваешь язык, а потом готовишь по нему курс? Странно было бы делать курс по языку, который считаешь неудачным. Так себе бизнес-стратегия.
@@tomatguitar по NodeJS тоже есть курс)
Большое спасибо за видео!
Супер! Разложил все по полочкам!) Очень информативно)
Спасибо, наконец то дождался вашего экспертного мнения по Golang
2 года назад же было уже )
Наконец то я просветился про Go , благодарю )
Сергей, как всегда очень в тему, спасибо
Какая стабильность! Вы все еще Сергей Немчинский
Хах
Все ещё Сергей Немчинский. Все ещё каждый раз при случае рассказывает, как над ним надругался Google с GWT. Видимо, тут нужна какая-нибудь психотерапия или рехаб для enterprise-разработчиков.
Спасибо! Просто круто! Очень по-народному объяснили. Народ Вас не забудет. Like!
Сергей, спасибо!!!
Go Go Go
Я как DevOps использую Go для написания либо системных утилит и микросервисов, либо как язык для операторов куба кастомных, очень приятный язык, а пайтон живет как язык либо быстрых скриптов, либо для системных сервисов (требовалась платформа с кнопками для менеджеров, чтобы быстро чинить типовые поломки на ВМках)
Это типа «место на диске закончилось»?)
DevOps котрый пишет микросервисы это 💪
Сильно хочу посмотреть видео про rust, а особенно про объяснения того откуда в rust взялась ручная очистка памяти.
У rust автоматическая очистка памяти, основанная на правилах владения, взаимствования и времени жизни. На основе этих правил rust выполняет очистку памяти.
такая возможность есть, если были созданы циклические ссылки. Решение тут - week_ptr.
В интернете полно видео про rust, про то как фармить, лутать и строить жилище.
@@user-vg9dn2cc8x Да. Как у "плюсов"
@@madcalm2024 , нет. Не как у плюсов.
Like под видосик. Пошел дальше учить JS :)
xslt иканомит 99% js
🔥👍
Вау! Как по мне, Вы очень интересно, ярко и при этом очень содержательно рассказываете
Спасибо за видео) 👍
Как всегда толково )
Огромное спасибо за видео! Пишу на Го последние 3 года, очень нравится. Вопрос, часто противопоставляют с RUST, когда следует использовать RUST, а не GO?
Сергей, спасибо за видео) Ждем видео по RUST)
пошутил пошутил
Очень ждём!
Го следующий выпуск про rust
И Ruby plz
А чего не про pubg ?
@@qwagru Про pubg тоже нужно)))
Сереж, все по сути, люблю тебя. Как всегда. ❤
Благодарю. А есть расклад по Хаскель?
Классное видео
Спасибо за видео.
Я, как обычно, ничего не понял, но было очень интересно. Спасибо.
Интересно, надо посмотреть Go.
Спасибо! По поводу говнокода в примерах ГО в интернете - прям в точку. Я все на них смотрел и думал - может я что то пропустил и так писать стало норм? Значит все таки нет. Фух... 😂
Надо ваш код посмотреть )
Есть языки которые помогают в создании говнокода.
И есть языки которые формируют вокруг себя коммюнити которые его создают.
Go был создан для разработки серверного ПО. Это прям легко вычисляется, когда смотришь на то - какие именно архитектуры поддерживает его компилятор.
так он поддерживает большинство современных архитектур(???) или я неправильно понял суть коммента
@@waltherwhite6052 Правильно, при чем большинство из них - серверные, хотя для ПК и смартфонов тоже все архитектуры поддерживаются.
Сергей, было бы интересно, услышать, что Вы думаете про Clojure
вангую, ничего хорошего)))
Он уже упоминал его, он не понимать ад со скобочками. И скала ему тоже не нрава, он патриот Java
Очень круто рассказал, звук и картинка шикарны! Какой у вас микрофон?
Shure sm7 b
Видео мотивирует, пошёл учить Go.
Выучил?
@@maxpain177 почитал про проблемы с типизацией, которые возникают на больших проектах и решил, что нет перспектив :) Но язык несложный и все хвалят за быстрое написание сетевых сервисов.
Сергей, не хотите сделать обзор совершенно новорожденных языков программирования, и какие перспективы их ждут?
Спасибо большое за видео и привет из Казахстана. Вижу часто в вакансиях, что требуются блокчейн разработчики. Есть ли смысл учить, учитывая тот факт, что у них приличные зп
в блокчейне - душнятина, никакие бабки не покроют, быстро выгоришь
Даже если есть смысл учить, не осилишь. Для этого нужно разбираться о том как устроены блокчейны , смарт контракты , как высчитывается комиссия на уровне
"Есть только один способ что-то написать" -- это как раз из The Zen Of Python. "There should be one-- and preferably only one --obvious way to do it." Очень понравилось неискаженное произношение всех терминов. )
Мы тоже любим вас 🙂
❤
Здравствуйте. Хочется услышать про DELPHI.
Расскажи про rust. Какого твоё мнение про него ?
Сергей здравствуйте, можно в каком то ролике рассказать о спецификах работы андроид разработчика и особенностях обучения на эту профессию?
у него вроде уже есть такое видео
Дякую! А про Rust буде? Бачив досить багато вакансій у Європі пов'язаних з цією мовою програмування
После Python и Js этот язык просто на ура заходит. Даже не ожидал. Последний раз такой эффект наблюдался когда я после Python начал изучать JS.
Ну rust не нужен сборщик, там код не скомпилируется, если владение памятью выполнено некорректно, не считая unsafe. Он очень хорош и для микросервисов, и для многопоточных задач. Но, возможно, он сложнее по входу, тут хз
Чтобы ускорить PHP или Python, достаточно написать модуль для них на C++
Немченский же сказал, что это долго и дорого
Ждём видео про Kotlin
Только заметила установку на заднем плане, обычно слушаю видео фоном. Для себя чисто или группа, например?)
а вы можете такие плохие примеры кода на go в каком-то из видосиков осветить? 🙂
Ооо наконец-то про Golang, go для меня темная лошадка) непонятно где используют и как, понятно что основная ниша это backend, а в каких проектах используют кроме как микросервисов, многопотоков и стриминговых систем непонятно.
Везде где голенг везде эти 3 составляющие, никакого разнообразия как и с синтаксисом самого языка, дали цикл for расшибись но сделай все задачи именно через for 😂😂😂 но го мне нравится также как и пайтон, я бы сказал следующая ступень эволюции бекендера на питоне)
Дженерики завезли. Мап редьюс филтер и прочее доступно. Наслаждайся)
@@maksimbiriukov5483 вот эт хорошо
@@maksimbiriukov5483 дженерики фактически не завезли, у них куча ограничений, они РАНТАЙМ. В целом днежерики это провал го, тк его просили лет 5, а потом видимо будут столько же доделывать
Сергей, вроде как вы уже снимали ж видос про Go 😊
он был выпущен в 2009 а не в 2012, из тех видео что я смотрел по go никто не правильно назвал год его выпуска хахаах
Сергей, расскажи про Node js
Кстати, помимо горутин (а точнее их синхронизаций), сложность на начальном этапе для многих являются пойнтеры. И кстати, из за них часто проблемы со торможением сборщика мусора, если неправильно их использовать
Да, ппц в 2016 пытался учить го по книге как по сути первый язык - ничего не понял.
Сейчас взял после Python и двух лет преподавания информатики, уже другое дело)
Это потому что они не писали на си или си++. Лично у меня проблем с указателями вообще не возникло
@@vatakiller
Серьёзно что ли?
@@anti_middle_ages да, после Пайтона намного проще, попытка начать с него обучение программированию у меня полностью провалилась)
Когда видос по руби?
Не пытаюсь душить, НО просто интересно:
1. Когда это именно "размер" языка, влиял на тип проекта?
2. Что плохого в duck-typing и в чем такой большой минус отсутствия перегрузки функций?
Если сравнить Go с Ruby, то какой на Ваш взгляд является более востребованным/перспективным? И у какого из них более низкий порог входа? Понятно, что языки разные, один интерпретируемый, другой компилируемый, различная философия и т.д. но, как мне кажется, область применения у них схожа(быстрая разработка небольших сервисов). Хотелось бы понять, какой из этих языков более перспективный, в плане востребованности, чтобы не тратить время на изучение заведомо тупиковой/умирающей технологии.
Нет смысла учить Ruby с точки зрения перспектив он жив до сих пор из-за рельс и только то. Хотите востребованности - учите Java и/или C# эти языки с нами еще на долгие годы. Go еще молод да и далек от универсальности и очень хорош только в своей нише.
Дайте обзор про Руби ка, вроде набирает популярность, но я не понимаю почему.
Спасибо за айтиликбез. Мирного неба вам над головой
Возможно ли сообразитъ Калъкулятор счёта простых бесконечных последователъностей?!.
Серёга.
Кстати, на счёт rust, там не нужно самому управление памятью при том что нет сборщика мусора)
Связка пайтон + go это идеал?
А курс salesforce-администратор у вас есть?
Здравствуйте Сергей, как думайте rust - это будущее gamedev'a.
Это просто будущее всего хорошего в программной инженерии.
Ну вообще-то в Rust не надо следить за памятью, там система владения и компилятор сам добавляет удаление объектов и переменных в то место где они уже не могут быть доступны и это очень удобно, но надо привыкнуть)
Да ну всмысле в rust следить за памятью? Там же все сам компилятор чистит, он безопасен и без GC
мне кажется можно было бы чуток постебать гоху. например, на тему того, что многопоточность из коробки есть, но какая-то неуправляемая. Гоха не обеспечивает гарантию возврата управления из исполняемого кода, из-за чего неакуратно написанная может занимать процессорное время на то время, на которое захочет. Ну и вообще пройтись по ее особенностям, которые кажутся диковатыми человеку, писавшему код с применением ооп.
а можно про rust?
Ещё, кстати в Go очень интересно реализованы исключения. То есть по сути их там вообще нет. Для меня как PHP разработчика в первое время это было не понятно. Но исключения довольно сильно тормозят систему и разработку, поэтому ими пришлось так же пожертвовать в скорость языка и разработки. Так же довольно интересная работа с массивами, которые в Go называются срезы: к примеру нет встроенный функции удаления элемента из массива по его индексу, поэтому приходится делать костыль, если вдруг такая функция понадобилась, но это опять же жертва ради скорости
Уже есть встроенная функция, по удалению элемента с слайса)
Скажите с полного 0 стоит изучать?
Или этот язык нужен как дополнение к какому либо языку?
С 0 сложно будет на нормальном уровне освоить. Много функций очень сложно реализованы, которые в других языках более понятны и просты. Питон например можно выучить за месяц, а go до такого же уровня за 3
Да таких языков программирования просто огромная куча, и оплата разная за них
Ты лучше это, иди первый (к)анал посмотри
Скала, го и нода, больше не знаю, подскажешь?
@@loenishe3647 haskell, rust, ocaml, elixir и до бесконечности
Странно почему автор не упомянул что эфириум, докер, кубер, прометеус написаны на go
Когда про RUST заговоришь?)
Когда это NodeJs стал многопоточным?
Можно вместо go взять crystal. У него синтаксис из руби взят, так что кодить приятнее
Раз он такой маленький и компилируемый, то может и эмбедерам на него проще перейти будет? И может даже в embedded применять как гугл завещал? Что думаете, С-шникам зайдёт?
Года 3 назад была статья от Дискорда: они какой-то их сервис перенесли с го на раст, потому что сборщик мусора давал нехилую нагрузку на скорость работы.
А что же с жавкой?
Очень часто использую Go для мелких программ, где надо парсить данные. Четкая типизация json файлов + мои мелкие библиотеки для ускорения работы, но небольшого уменьшения производительности очень сильно помогают работать и делать это без ошибок
Например какие программы? Думаю потом ради интереса выучить его, глянуть что можно на нем написать
@@awenn2015 консольные приложения с веб-запросами, парсингом данных, генерации stl фигур для 3д обработки и т.д.
@@user-ft5nc4wm9f а понял, прикольная тема
Пишите софт на заказ ?
А мы до сих пор используем GWT и всё хорошо 🎉
Похожими характеристиками обладает язык Julia. Очень интересный, но также довольно молодой
Yeee!!! Super!!! 🎉🎉🎉
отлично!
В Rust не надо ничего убирать / прибирать. Там умный компилятор просто не даст скомпилировать программу, если в коде не соблюдены все правила владения. Это можно обойти для некоторых случаев и тогда уже придётся самому чистить память умными указателями. Но в целом, если не создавать кривую архитектуру, то можно обойтись одними принципами владения.
rust маленкий
Если не создавать кривую архитектуру, то и на С++ можно обойтись принципами владения. Хороший язык обязан считать, что программист - идиот и не знает что творит, и не давать ему делать непотребства.
@@user-kj9zl3hl2h если не создавать кривую архитектуру, то ты всё же можешь выстрелить себе в ногу. Это с++ и с ним ничего не поделать. А в Rust - это лишь циклическая зависимость. Больше ситуаций для утечки памяти в Rust нет. А такую ситуацию можно создать только в случае, если у тебя руки из задницы растут. Прям вот точно из неё.
rust не нужен, совсем, есть ansi c, и go
@@fudj8264 go вообще не нужен. Только для внутренних разработок Гугла.
Вроде как ещё в микроконтроллерах типо Ардуино можно писать на Го
Кто-нибудь переходил с джавы на голэнг? Расскажите про ваш опыт
Знакомый сеньор С# год назад перешёл. Просто балдеет с его слов.
хочешь гофером стать? Ну приветствую )
присмотрелся в свои годы к сейлсфорсу пару лет назад..посмотрел байки Сергея Немчинского, чз пару месяцев зашел в Сейлсфорс...
столкнулся пару месяцев назад к гоу, появилась опортьюнити на нем писать...посмотрел ТОЛЬКО ЧТО Сергея Немчинского....повангуем что дальше будет?)))
С go есть такая засада, что если берете какой-нибудь пакет с гитхаба, скорее всего придется самому его допиливать. Вот, например, хотим в Azure Cloud использовать брокер сообщений(Service Bus), который использует протокол amqp 1.0, берем соответствующий пакет и ничего практически не работает. Да, в итоге где-то в течении года мы совместными усилиями с Microsoft пофиксили всё, но имейте в виду - надо очень осторожно подходить к планированию проектов на go, закладывать время на то, что многие доступные библиотеки на других языках будут отсутствовать для go или их качество будет очень слабым.
Можно просто начать изучать язык GO? или до его изучения надо что еще изучать?
можно
Почему-то мало кто что рассказывает про Julia. На нее легко перейти питонистам и R'щикам, при этом там тоже есть многопоточность и есть компилляция
И можно писать почти как формулы! С латехом.
Войти в IT, войдя в Julia, хммм... а что, я согласен))) 😄
@@pavelgushchin2223 , сказал бы так: войдя в Julia, в IT не войдёшь, но приятно будет очень.
@@pavelgushchin2223 😅😅😅
в го есть ооп, отличное от джавы, но есть. И полиморфизм и инкапсуляция там работают. Так же в го есть нормальные функции, чего нету в джаве, так что я бы сказал что го в какой то мере более прокаченее джавы. А с выходом в релиз дженериков, то на Го даже можно теперь и писать. Спасибо, за видео )
Это шутка такая ?
@@VladVlad-qm3bl нет традиционного наследования, но это не значит, что вообще нет ооп
встраивание считается перспективной альтернативой наследованию, потому что отсекает часть возможностей для написания переусложненного кода
впрочем могу понять, что с непривычки сложно им пользоваться
@@VladVlad-qm3bl нормально там всё с ООП, если понимать что это вообще такое.
Вот что-то консольное на СИ проблем писать нету, читать из файла, писать в память какой-нибудь eeprom , а если захочется крОсивой графики.... И сделать окно с отображением директорий и файлов, возможность добавить по нажатию кнопки ярлык файла или каталога. Это больно без насирания туда КуТишками и Бустами.
А если получится, то вы будете рады что программа будет потреблять очень мало системных ресурсов.
Не девопсом единым. На Go сейчас переписывается куча старых утилей написанных на С и С++.
Память не течет, юникод из коробки, dependency hell отсутствует как класс.
Google закрыли GWT. Но он же был убогим. Ты и сам это упоминал в духе "Упоси господь". А вообще от заказчиков и сейчас поступают требования в виде "Хотим начать проект, нам нужен один разработчик, будем делать на Java+GWT"
Оо помню этот GWT 😆
При перечислении языков про обероны забыли.
Кстати, откуда и большая часть "корней" самогО go.
Какая прелесть, что большинство программистов, "отягощённые" "мейнстримом", думают, что "многопоточность - это ОЧЕНЬ сложно"! :)))))))))))))
Интересно, вы как то очень ловко обошли сравнение производительности Go и Java. Хотя момент очень даже интересующий. У меня в наличии несколько сервисов писанных на delphi. Коллекторы для сбора CDR телеком оборудования, декодеры в рамках системы роуминга, smpp-агрегатор... ну и прочее, что по понятным причинам приходится переписывать. Ну со старья на что переходить... не на старье же. Попробовал go, нарисовал asn1 коллектор. Простота языка, многопоточности и скорость обработки вроде пришлись по душе. Но в конторе явисты. Утверждают, что на Яве будет все так-же шустро летать, потому что её код тоже компилируется и если что никому не придётся разбираться с go. Так ли это? Интересует именно низкоуровневая, многопоточная работа с бинарными данными. Есть ли плюсу у go по сравнению с Java кроме необходимости тащить Ява машину.
Ну так напишите для пробы. Может и подойти. Странно, что вы не доверяете своим разработчикам, но доверяете мужику с интернета.
По поводу ноды и гоу , в плане "если вы переходите с языка со строгой типизацией то лучше выбрать go", ну тут спорно , все проекты современные на ноде уже с typescript пишутся , типизация очень хорошая. Но я так понимаю go побыстрее ноды
Сергей, хочу начать обучение программированию. Какой язык порекомендуете? Уровень ноль.
czcams.com/video/c2QqEH2evMY/video.html
@@SergeyNemchinskiy Спасибо.
А этот язык подойдёт для программирования программируемых логических контроллеров, промышленных роботов-манипуляторов, КИПиА, АСУ ТП и SCADA-систем?
Нет, вам к C/C++/C#
Сергей, в Rust разработчик не должен следить за памятью, так как программа, в которой переменные не удаляются из памяти просто не скомпилируется.
+
++ для поддержания канала
Может Вам президентом мира стать? Такой стабильности можно позавидовать, Вы всё ещё Сергей Немчинский
Ну сейчас никто не пишет на чистом js. Нормальные разработки ведутся с применением typescript, хотя это не решает все проблемы, но у опытных разрабов решает достаточной проблем
Го следующий язык F#🤣( было бы неплохо).