Автор: HelloGitHub — сушеная рыба и тушеные яйца
История начинается в 2007 году. Потому что Роб Пайк, главный инженер-программист Google, которому надоел C++, призвал двух великих людей, Роберта Гриземера и Кена Томпсона, и решил создать новый язык для замены C++, который является прародителем Go.
10 ноября 2009 года Google официально выпустила язык программирования Go. Go наследует многие идеи языка C, такие как синтаксис выражений, структуру потока управления, основные типы данных, передачу значений параметров вызова, указатели и т. д., а также эффективность работы скомпилированного машинного кода, которую язык C всегда ценил и существующая Бесшовная адаптация операционной системы.
Адрес проекта Голанг:github.com/golang/go
После более чем десяти лет разработки, по пекинскому времени: 17 ноября 2020 года, последняя версия Go достигла версии 1.15.5. В то же время иностранные компании, такие как Twitter, Google и Netflix, а также отечественные компании, такие как ByteDance, Tencent и Bilibili, используют Go для развития своего основного бизнеса.TiDB, основной продукт нового производителя баз данных NewSQL. например, PingCAP, использует Go. Разработал и стал известным проектом с открытым исходным кодом на языке Go на GitHub. Видно, что статус развития Go в интернет-компаниях становится все более и более важным, а также он очень активен в сообществе с открытым исходным кодом.
Не поздно ли новичку "садиться в автобус" в это время? Какие забавные проекты Go начального уровня есть на GitHub?
Вот серия HelloGitHub «Проекты с открытым исходным кодом для начинающих на GitHub», всего 5 статей:
- C++ статьи
- статьи о Python
- Перейти статьи
- Java-статьи
- JavaScript-статьи
Эта проблема - это статья. Проекты с открытым исходным кодом ниже выбраны из предыдущих ежемесячных вопросов Hellogithub. Как Роб Пике, отец идущего языка, сказал меньше, более или менее меньше, эта статья также основана на этом принципе: дорога проста. Каждый из следующих языковых проектов с открытым исходным кодом может стоять самостоятельно, стать изучать проекты для новичков, а вместе они могут предоставить вам более всеобъемлющее понимание - 1 + 1> 2.
Говорить дешево, поехали 🚗
Часть первая: Мастер открывает дверь
1.1 Настоящее руководство по началу работы: the-way-to-go_RU_CN
Адрес GitHub→GitHub.com/UN, может быть, я/он и…
Книга с открытым исходным кодом «Go Beginner's Guide» — это иностранная книга «The Way to Go», которую проповедник из Голанга (неизвестно) страдал от отсутствия хороших книг по языку го в Китае в то время. Эта книга объединяет эти разрозненные знания в систему посредством сбора и организации официальных онлайн-документов, блогов знаменитостей, книг, связанных статей и выступлений в сочетании с моим собственным опытом преподавания в области разработки программного обеспечения, языков программирования и разработки баз данных. объясняются технические классификации трансформации.
Книга начнется с самых основных понятий, а также обсудит, например, сколько различных шаблонов существует при применении горутин и каналов, как использовать Google API в Go, как манипулировать памятью и как программировать в Go. использовать шаблоны для разработки веб-приложений, эти передовые концепции и методы.
Читать адрес →GitHub.com/UN, может быть, я/он и…
1.2 Изучите веб-программирование Go с нуля: build-web-application-with-golang
Адрес GitHub→GitHub.com/A сказал, что написал/нет, я…
Книга с открытым исходным кодом «Go Web Programming» научит вас установке и настройке среды Go, базовому синтаксису и всем аспектам разработки Go Web с нуля. Можно сказать, что книга в руках, а «Мир» (Go Web) может делать все, что я хочу. Конечно, как бы хорошо это ни было написано, это все равно «Хозяин ведет дверь, а совершенствование зависит от человека!»
Читать адрес →GitHub.com/A сказал, что написал/нет, я…
Часть вторая: выход на новый уровень
2.1 Серия семи дней с нуля с Go: 7days-golang
Адрес GitHub→GitHub.com/geek-tutu/7…
Напишите на Go: практические руководства по веб-фреймворку, распределенному кешу, фреймворку ORM и фреймворку RPC. Если вы что-то понимаете, возможно, вы не сможете это использовать, а если знаете, то, возможно, не сможете сами в этом разобраться. Поэтому напишите фреймворк с нуля и разберитесь в деталях, чтобы действительно понять его.
Читать онлайн →geek tutu.com/post/gee Контракты…
2.2 Путь обучения: golang-developer-roadmap
Адрес GitHub→GitHub.com/ALLeave HLL/Иди сюда…
Дорожная карта разработчика Go — это путь обучения, чтобы стать разработчиком Go. Лучше одной картинки, чем тысячи слов.Этот проект выбран для того, чтобы каждый мог быстро понять те знания и направления, которые необходимо изучить в Go.
2.3 Advanced Go Programming: книга по продвинутому программированию
«Расширенное программирование на языке Go» — это продвинутая книга для определенной основы Go, охватывающая темы высокого уровня, такие как параллелизм, программирование GOC, язык ассемблера Go, реализация RPC, реализация веб-фреймворка и распределенные системы. Приложение к книге также является изюминкой, включая интересные фрагменты кода Go и общие ямки Go. Если вы хотите играть на Голанге, вам придется потрудиться над продвинутым программированием на Go [ручная собачья голова].
Адрес GitHub→GitHub.com/demolition2010/объявление…
Читать онлайн →Разрушение 2010. Талант/продвинутый…
Часть третья: время показать настоящую технологию
3.1 Звездная карта: звездные карты
Адрес GitHub→GitHub.com/CAA RL OS0/тело…
Этот проект должен визуально отображать кривую роста звезды на GitHub, то есть для генерации «звездной карты». Этот проект рекомендуется в основном для простых и интуитивно понятных визуализации данных, и вы можете быстро почувствовать удобство, принесенное проектом Po Go Project. Когда я впервые сыграл этот проект, я не знал языка Go, но я написал Python версию звезды карты со ссылкой на этот проект, поэтому я думаю, что все, кто уже начал, может понять это.
Некоторые друзья могут сказать, что у меня нет проектов с открытым исходным кодом, и ни один из моих проектов не имеет звезд, что изучать этот проект бесполезно, после раздумий мне действительно не хватает какой-то мотивации. Если отложить в сторону звездный элемент GitHub, есть также проект визуализации данных Go для большего количества сценариев:go-echarts. Давай, почувствуй ритм данных.
Адрес GitHub→GitHub.com/go-E диаграммы/…
3.2 Приходите в чат: gochat
Адрес GitHub→GitHub.com/lock git/go cart…
Gochat - это легкая система обмена мгновенными сообщениями, реализованная в чистом виде. Технически каждый слой связывается через RPC, используя Redis в качестве носителя хранения и доставки сообщения, которая удобнее и быстрее работать, чем кафка. Основываясь на обнаружении службы ETCD между слоями, он будет гораздо более удобным при расширении и развертывании. Структура архитектуры и каталога ясна, и документация подробно. Он также предоставляет Docker One-Щелкнуть сборку, которая очень удобна для установки и запуска.
3.3 Дай! Использование: Энни
Адрес GitHub→GitHub.com/IA для IA002/Пресс…
Быстрый, простой в использовании программный загрузчик видео, написанный на Go. Поддержите Bilibili, YouTube и другие видеосайты. Можно использовать как альтернативу недавно забаненному: youtube-dl (теперь снова на прилавках), это действительно мощно! Сначала почувствуйте удобство, которое приносит annie, и вам может быть интересно изучить его исходный код.
$ annie -c cookies.txt https://www.bilibili.com/video/av20203945/
Site: 哔哩哔哩 bilibili.com
Title: 【2018拜年祭单品】相遇day by day
Type: video
Stream:
[default] -------------------
Quality: 高清 1080P60
Size: 220.65 MiB (231363071 Bytes)
# download with: annie -f default "URL"
16.03 MiB / 220.65 MiB [==>----------------------------] 7.26% 9.65 MiB/s 19s
Наконец
Порекомендуйте несколько больших парней на GitHub:
- astaxie: Се большой
- unknwon: неизвестный
- polaris1119:polarisxu,Перейти на китайский языквеб-мастер
- appleboy,chai2010
Почему вы не написали введение персонажа? Я просто мелкий последователь, знаю только проекты на их GitHub, а остальное только слышу и не могу написать. Конечно, есть много больших парней, которые много сделали для GitHub, не бейте меня, если вы этого не написали! Это не потому, что вы, ребята, не заходите на HelloGitHub, чтобы рекомендовать проекты? 😢