место в рейтинге
  • 6050
  • 21
  • 11
Нравится блог?
Подписывайтесь!

Golang

Немного предыстории.

Go был рожден из-за неудовлетворенности от существующих языков и сред системного программирования. Программирование стало слишком сложным, и нынешние языки в этом частично виноваты. Приходится выбирать между эффективной компиляцией, эффективным выполнением и легкостью программирования — все три качества недоступны в одном и том же мэйнстримовом языке. Программисты выбирали легкость программирования вместо безопасности и эффективности, переходя на динамически типизированные языки, такие как Python и JavaScript, вместо C++ или, в меньшей степени, Java.

Go — попытка соединить легкость программирования на интерпретируемом, динамически типизированном языке с эффективностью и безопасностью статически типизированного, компилируемого языка. Он так же стремится быть современным, поддерживая сетевые и многоядерные вычисления. Наконец, Go задумывался как быстрый язык: компиляция большого выполняемого файла должна занимать не более нескольких секунд. Чтобы реализовать эти цели, нужна выразительная, но легкая система типов, конкарентность и сборка мусора, твердая спецификация зависимостей и т.д. Эти вещи не могут быть хорошо реализованы в библиотеках, нужен был новый язык.

Какова цель проекта?

За последнее десятилетие не появилось ни одного значительного системного языка программирования, но за это время компьютерная сфера сильно изменилась. Несколько трендов:

  • Компьютеры стали намного быстрее, а разработка ПО быстрей не стала.
  • Управление зависимостями стало большой частью разработки программ, а традиционные Си-подобные "заголовочные файлы" несовместимы с чистым анализом зависимостей и быстрой компиляцией.
  • Начинается бунт против громоздких языков вроде Java и C++, из-за чего люди переходят на динамически типизированные языки типа Python и JavaScript.
  • Некоторые фундаментальные концепции, такие как сборка мусора и параллельное вычисление, плохо поддерживаются популярными системными языками программирования.
  • Появление многоядерных компьютеров вызвало беспокойство и замешательство.

Корпорация Google считает, что стоит попробовать сделать новый язык, конкарентный, со сборкой мусора и быстрой компиляцией. Насчет пунктов выше:

  • Большие программы Go компилирует за несколько секунда на одном компьютере (и это действительно так, 63 Мб исходного кода компилируются на домашнем компьютере ровно 7 секунд, причем одинаково компилируется как на Windows машине, так и на Linux и Mac).
  • Go предоставляет такую модель создания программ, при которой избегаются издержки Си-подобных заголовочных файлов и библиотек, делая анализ зависимостей простым.
  • Система типов Go не имеет иерархии, поэтому не тратится время на определение зависимостей между типами. Кроме того, хотя типизация в Go статическая, язык пытается сделать так, чтобы программисты не чувствовали их громоздкость, как в типичных объектно-ориентированных языках.
  • Go имеет полноценную сборку мусора, а так же предоставляет фундаментальную поддержку конкарентного выполнения и коммуникаций.
  • В язык заложен способ создания системного ПО для многоядерных компьютеров.

Насчёт простоты кода.

Абстрактный код в вакууме представляет собой реализацию протокола Qiwi для провайдера услуг. Читается вообще без каких либо проблем. После изучения Go буквально за 1-2 дня этот код написан за 2-3 часа после работы в пятницу(!).

Интересные материалы и видео

Go success stories from around the web

Введение в программирование на Go

HighLoad++ 2012. Язык программирования Go от Google

Интерактивное изучение Golang

Интервью: Брайан Керниган и Алан Донован

Русскоязычные подкасты на iTunes

Погружение в Google Go

Видеозапись докладов конференции Golang Moscow (Digital October) (докладчики из компаний Яндекс, Openstat (Spylog), sports.ru)

Доклад Антона Поварова "Go в Badoo" на Golang Meetup

Сайт о языке программировани Go

Роб Пайк подверг критике C++ и Java

Centrifuge + Go = Centrifugo – harder, better, faster, stronger

Why is Golang popular in China?

Hes
1 декабря 2015, 13:44
1043

Загрузка...
Loading...

Комментарии

Оставьте свой комментарий

Спасибо за открытие блога в Yvision.kz! Чтобы убедиться в отсутствии спама, все комментарии новых пользователей проходят премодерацию. Соблюдение правил нашей блог-платформы ускорит ваш переход в категорию надежных пользователей, не нуждающихся в премодерации. Обязательно прочтите наши правила по указанной ссылке: Правила

Также можно нажать Ctrl+Enter

Популярные посты

Мой дом – не гостиница. Я не останавливаюсь у своей родни, потому что знаю, что это такое

Мой дом – не гостиница. Я не останавливаюсь у своей родни, потому что знаю, что это такое

Наступил долгожданный момент и мы смогли заселиться в собственную квартиру. А потом началось... Все знакомые, родственники, даже коллеги и соседи родителей вспомнили о нашем существовании.
Idealovnet
14 окт. 2017 / 20:38
  • 8830
  • 82
Работа на EXPO. «Улыбайтесь, вы – лица Казахстана»

Работа на EXPO. «Улыбайтесь, вы – лица Казахстана»

Продление перерывов, втыки от менеджеров, борьба за стенды, кучкования, как мы друг-друга прикрывали, защищали от гостей. Все эти события доставляли радость, и каждый день на работу я приходила...
madiNAtty
14 окт. 2017 / 22:34
  • 6096
  • 23
О проститутках, ЗППП и других сексуальных страстях

О проститутках, ЗППП и других сексуальных страстях

У меня обширный сексуальный опыт, и я этим не хвастаюсь. Будь у меня возможность, променял бы это всё на одного партнёра. Но так как с личной жизнью не заладилось, а секс я очень люблю, то приходилось изворачиваться.
bez_prav
18 окт. 2017 / 18:01
Я четко помню тот день, когда мне позвонили друзья и сообщили: «Она выходит замуж»

Я четко помню тот день, когда мне позвонили друзья и сообщили: «Она выходит замуж»

У нас была особенная атмосфера, мы постоянно были вместе, читали треки, летом часто поднимались в горы. Гуляли пешком по ночному городу, иногда до утра. Снимали хату и представляли совместную жизнь...
Dominator-kz
14 окт. 2017 / 22:29
Отчего в Казахстане предвзятое отношение к отечественному продукту?

Отчего в Казахстане предвзятое отношение к отечественному продукту?

Вы когда-нибудь пользовались казахстанской косметикой? Я тоже нет, поэтому сразу же откликнулась на приглашение своего фейсбук-френда протестировать отечественные крема… из Степногорска.
Shimanskaya
16 окт. 2017 / 11:32
  • 2750
  • 30
Я помню тот день, когда мне позвонили друзья и сообщили: «Она выходит замуж». Часть 2

Я помню тот день, когда мне позвонили друзья и сообщили: «Она выходит замуж». Часть 2

Я знал дату свадьбы. За неделю до свадьбы в соцсети "Вконтакте" на все мои последние фото, был проставлен лайк с её профиля. Сердце забилось сильнее. В душе загорелась наивная, крошечная надежда.
Dominator-kz
17 окт. 2017 / 15:41
Мой парень – «тиран». Почему я вступила в такие отношения?

Мой парень – «тиран». Почему я вступила в такие отношения?

История из моей жизни. Я вспоминаю эти отношения и сама не могу понять - как так произошло? А дело в том, что вы и сами не заметите. Это наступает плавно и динамично.
Altynai_JA
18 окт. 2017 / 14:17
«Автобусная неделя». Выдержит ли аким Шымкента давку в общественном транспорте?

«Автобусная неделя». Выдержит ли аким Шымкента давку в общественном транспорте?

Аким Шымкента Габидулла Абдрахимов нашёл решение накопившихся проблем городского транспорта. Все ключевые работники акимата некоторое время будут сами ездить на автобусах.
openqazaqstan
18 окт. 2017 / 10:53
  • 1635
  • 30
Аркадий Волож привел в Казахстан «Яндекс.Лицей». Плакать или радоваться?

Аркадий Волож привел в Казахстан «Яндекс.Лицей». Плакать или радоваться?

"Яндекс.Лицей" зашел в казахстанские школы. План - учить бесплатно программированию, формировать себе кадры и выйти на мощность 10 тысяч школьников в год.
Zhumanova
18 окт. 2017 / 8:36
  • 1429
  • 10