HTML Diff
0 added 0 removed
Original 2026-01-01
Modified 2026-03-10
1 <ul><li><a>Тестирование в Go</a></li>
1 <ul><li><a>Тестирование в Go</a></li>
2 <li><a>Дженерики в Go</a></li>
2 <li><a>Дженерики в Go</a></li>
3 <li><a>Горутины и каналы</a></li>
3 <li><a>Горутины и каналы</a></li>
4 <li><a>Примитивы синхронизации</a></li>
4 <li><a>Примитивы синхронизации</a></li>
5 <li><a>Структуры языка Golang</a></li>
5 <li><a>Структуры языка Golang</a></li>
6 <li><a>Функции и методы в Golang</a></li>
6 <li><a>Функции и методы в Golang</a></li>
7 </ul><h2>Тестирование в Go</h2>
7 </ul><h2>Тестирование в Go</h2>
8 <p>На этом открытом уроке:</p>
8 <p>На этом открытом уроке:</p>
9 <ul><li>Рассмотрели тестирование программ на Go;</li>
9 <ul><li>Рассмотрели тестирование программ на Go;</li>
10 <li>Поговорили про понятие табличных тестов;</li>
10 <li>Поговорили про понятие табличных тестов;</li>
11 <li>Затронули тему пакета testing и библиотеки testify.</li>
11 <li>Затронули тему пакета testing и библиотеки testify.</li>
12 </ul><h2>Дженерики в Go</h2>
12 </ul><h2>Дженерики в Go</h2>
13 <p>Разобрали, что такое "дженерики", как они нам могут помочь в ежедневных задачах, а также как они влияют на производительность и чем они лучше/хуже обычных интерфейсов.</p>
13 <p>Разобрали, что такое "дженерики", как они нам могут помочь в ежедневных задачах, а также как они влияют на производительность и чем они лучше/хуже обычных интерфейсов.</p>
14 <h2>Горутины и каналы</h2>
14 <h2>Горутины и каналы</h2>
15 <p>На уроке начали работу с горутинами:</p>
15 <p>На уроке начали работу с горутинами:</p>
16 <ul><li>Узнали, что такое горутины и как их запускать;</li>
16 <ul><li>Узнали, что такое горутины и как их запускать;</li>
17 <li>Сравнили буферизированные и небуферизованные каналы;</li>
17 <li>Сравнили буферизированные и небуферизованные каналы;</li>
18 <li>Поговорили про использование каналов для передачи данных и синхронизации;</li>
18 <li>Поговорили про использование каналов для передачи данных и синхронизации;</li>
19 <li>А также затронули оператор select и таймеры в Go.</li>
19 <li>А также затронули оператор select и таймеры в Go.</li>
20 </ul><p>В итоге научились реализовывать передачу данных между горутинами с помощью канала.</p>
20 </ul><p>В итоге научились реализовывать передачу данных между горутинами с помощью канала.</p>
21 <h2>Примитивы синхронизации</h2>
21 <h2>Примитивы синхронизации</h2>
22 <p>На этом занятии:</p>
22 <p>На этом занятии:</p>
23 <ul><li>Поговорили про группу ожидания (sync.WaitGroup);</li>
23 <ul><li>Поговорили про группу ожидания (sync.WaitGroup);</li>
24 <li>Затронули гарантированно одноразовое выполнение (sync.Once);</li>
24 <li>Затронули гарантированно одноразовое выполнение (sync.Once);</li>
25 <li>Обсудили "простой" мьютекс (sync.Mutex) и детектор гонок (race detector).</li>
25 <li>Обсудили "простой" мьютекс (sync.Mutex) и детектор гонок (race detector).</li>
26 </ul><p>В результате занятия научились пользоваться частью механизмов синхронизации в Go и бороться с "гонками" в Go.</p>
26 </ul><p>В результате занятия научились пользоваться частью механизмов синхронизации в Go и бороться с "гонками" в Go.</p>
27 <p>Рассмотрели следующие понятия:</p>
27 <p>Рассмотрели следующие понятия:</p>
28 <ul><li>процесс определения структур;</li>
28 <ul><li>процесс определения структур;</li>
29 <li>инкапсуляция полей структуры;</li>
29 <li>инкапсуляция полей структуры;</li>
30 <li>определение методов структуры.</li>
30 <li>определение методов структуры.</li>
31 </ul><p>Поговорили про вложенные и анонимные структуры, а также про структурные тэги и их использование в контексте JSON, XML и СУБД. В итоге научились создавать пользовательские типы данных и комбинировать их между собой.</p>
31 </ul><p>Поговорили про вложенные и анонимные структуры, а также про структурные тэги и их использование в контексте JSON, XML и СУБД. В итоге научились создавать пользовательские типы данных и комбинировать их между собой.</p>
32 <h2>Функции и методы в Golang</h2>
32 <h2>Функции и методы в Golang</h2>
33 <p>Поговорили про области видимости. Рассмотрели различные функции: именованные, анонимные, с переменным числом аргументов и пр. А также попробовали затронуть понятие замыкания и методы.</p>
33 <p>Поговорили про области видимости. Рассмотрели различные функции: именованные, анонимные, с переменным числом аргументов и пр. А также попробовали затронуть понятие замыкания и методы.</p>
34  
34