Язык программирования Go (2022) — различия между версиями

Материал из Wiki - Факультет компьютерных наук
Перейти к: навигация, поиск
м (add Zoom link)
м (add mark formula)
Строка 1: Строка 1:
 
==О курсе==
 
==О курсе==
 +
Первый курс из блока дисциплин, обучающих построению высоконагруженных систем. В рамках курса вы изучите основы синтаксиса и приложения языка для написания сервисов машинного обучения.
  
Занятия проводятся в [[https://us06web.zoom.us/j/83085848121?pwd=NXFGL05vd0pFYXZHODNmcWVlNGhmZz09 Zoom]] '''по понедельникам в 19:00'''
+
Занятия проводятся в [https://us06web.zoom.us/j/83085848121?pwd=NXFGL05vd0pFYXZHODNmcWVlNGhmZz09 Zoom] '''по понедельникам в 19:00'''
  
 
==Контакты==
 
==Контакты==
Строка 64: Строка 65:
 
==Формула оценивания==
 
==Формула оценивания==
  
Оценка = ...<вес 1>...*О<sub>...<форма контроля 1>...</sub> + ...<вес 2>...*О<sub>...<форма контроля 2>...</sub> + ...<вес 3>...*О<sub>...<форма контроля 3>...</sub>
+
Оценка = МИН(ДЗ + бонус, 10), где ДЗ-средняя оценка за 8 домашних заданий
 
+
  
 
== Домашние задания ==
 
== Домашние задания ==
* Раз
+
#
* Два
+
#
*
+
#
* N
+
#
 +
#
 +
#
 +
#
 +
#
  
 
== Литература ==
 
== Литература ==
* Раз
+
* Nadareishvili, I., Mitra, R., McLarty, M., & Amundsen, M. (2016). Microservice Architecture : Aligning Principles, Practices, and Culture: Vol. First edition. O’Reilly Media.
* Два
+
* Основы многопоточного, параллельного и распределенного программирования, Эндрюс
*
+
* Джей Макгаврен. Head First. Изучаем Go
* M
+
* Марк Саммерфильд. Программирование на языке Go
 +
* Михалис Цукалос. Golang для профи

Версия 09:59, 4 ноября 2022

О курсе

Первый курс из блока дисциплин, обучающих построению высоконагруженных систем. В рамках курса вы изучите основы синтаксиса и приложения языка для написания сервисов машинного обучения.

Занятия проводятся в Zoom по понедельникам в 19:00

Контакты

Канал курса в TG: channel link

Чат курса в TG: chat link

Преподаватель: Горшков Сергей Сергеевич

Ассистент Контакты
Игорь Балюк @lodthe
Адиль @kussyadil

Материалы курса

Ссылка на плейлист курса на YouTube: YouTube playlist

Ссылка на GitHub с материалами курса: GitHub repository

Занятие Тема Дата Материалы для самоподготовки к семинарам Дополнительные материалы
1 Запись Установка языка. Основы синтаксиса, основные типы данных. Работа со стандартным I/O 07.11.22
2 Запись Функции. Указатели. Написание тестов 14.11.22
3 Запись Аналог ООП в Go. Структуры и методы, интерфейсы 21.11.22
4 Запись Горутины и каналы в Go. Экскурс в мультиплексирование и pipe в Linux 28.11.22
5 Запись Синхронизация, пул воркеров, состояние гонки. Экскурс в проблемы многопоточного программирования 05.12.22
6 Запись Примитивы синхронизации. Атомики и мьютексы в Go. Пакет context, таймеры и таймауты 12.12.22
7 Запись Работа с json и динамическими данными. Бенчмарки и тестирование
8 Запись Работа с сетью в Go. Профилирование веба
9 Запись REST API и написание бота
10 Запись Язык SQL. Различные виды баз данных. Работа с БД из Go
11 Запись Управление зависимостями в Go. Построение приложений
12 Запись Микросервисная и монолитная архитектуры. protobuf и gPRC
13 Запись Конфигурирование сервиса и мониторинги

Записи консультаций

Формула оценивания

Оценка = МИН(ДЗ + бонус, 10), где ДЗ-средняя оценка за 8 домашних заданий

Домашние задания

Литература

  • Nadareishvili, I., Mitra, R., McLarty, M., & Amundsen, M. (2016). Microservice Architecture : Aligning Principles, Practices, and Culture: Vol. First edition. O’Reilly Media.
  • Основы многопоточного, параллельного и распределенного программирования, Эндрюс
  • Джей Макгаврен. Head First. Изучаем Go
  • Марк Саммерфильд. Программирование на языке Go
  • Михалис Цукалос. Golang для профи