Обучение по c#

Формула программиста
основатель — Волосатов Евгений Витольдович
Олимпиада по средам
Перейти к решению задачи
Open shop Итератор

Итератор

На этом курсе мы познакомимся с интерфейсами IEnumerable + IEnumerator.
На примере решения задачи разложения числа на простые множители
мы будем создавать итератор, который будет перебирать простые числа.

Содержание курса
+ создание класса по интерфейсу IEnumerable
+ создание класса по интерфейсу IEnumerator
+ подробное объяснение, зачем нужно два класса.
+ использование yield для удобной реализации итератора.
+ создание итератора через функцию, не создавая спец. класса.

9 миниуроков.
1 час 22 минут.
Доступ на 15 дней.


Список уроков | фото | видео

# Название видеоурока Решило Рейтинг Доступ
1 Итератор. Разложение числа на простые множители. 00:09:22 70 чел. ★ 4.8 Done
  Отчёт отправил: 9567. Максим Решено за 10 мин. [Показать отчёт]
Научился: ничему 
Сложности: ничего 
Комментарии: Понравился способ, с помощью которого выводились именно простые делители. Я бы просто после нахождения делителя сбросил j на 2 (первая мысль, которая в голову пришла). Понравилось то, что даже в такой просто программе уже есть чему поучиться =) 
2 Итератор. Создание пустого итератора. 00:11:21 67 чел. ★ 4.9 Done
  Отчёт отправил: 9567. Максим Решено за 11 мин. [Показать отчёт]
Научился: Реализовывать классы, наследуемые от IEnumerable и IEnumerator. Глубже понял принцип работы цикла foreach 
Сложности: В общем-то ничего, нужно было просто переписать 
Комментарии: Что такое интерфейс? Пару раз сталкивался с этим словом, но ничего о нём не знаю =) Что это? И как это, множественное наследование классов нельзя, а интерфейсов можно? В остальном всё замечательно =) 
3 Итератор. Перебор чисел в итераторе. 00:09:04 64 чел. ★ 4.9 Done
  Отчёт отправил: 9567. Максим Решено за 9 мин. [Показать отчёт]
Научился: Создавать параметры для объекта класса (или как это сказать? =)) 
Сложности: ничего 
Комментарии: становится всё интереснее и интереснее =) 
4 Итератор. Перебор простых чисел. 00:10:28 64 чел. ★ 5 Done
  Отчёт отправил: 9567. Максим Решено за 9 мин. [Показать отчёт]
Научился: Реализовывать функцию MoveNext() 
Сложности: В прошлом уроке установил максимум 1000 и благополучно забыл про это. А потом где-то минуту искал почему выводит не все делители =) 
Комментарии: Всё классно =) 
5 Итератор. Зачем нужно два класса 00:16:21 58 чел. ★ 5 Done
  Отчёт отправил: 9567. Максим Решено за 20 мин. [Показать отчёт]
Научился: Понял, зачем нужно было 2 класса 
Сложности: ничего 
Комментарии: Хм, никогда даже об этом не думал. Как же сложно было бы самому до этого дойти =) ПС: Не захотел откатывать программу, так что сделал обычную таблицу умножения 
6 Итератор. Волшебное слово yield. 00:11:03 59 чел. ★ 4.9 Done
  Отчёт отправил: 9567. Максим Решено за 11 мин. [Показать отчёт]
Научился: Использовать ключевое слово yield 
Сложности: Вникнуть в его принцип работы 
Комментарии: Ваааааааау, как же это круто. После первой минуты урока я перестал повторять и просто смотрел. Какой же C# всё-таки классный язык, и какой же вы классный учитель =) 
7 Итератор. Список простых чисел. 00:08:42 57 чел. ★ 5 Done
  Отчёт отправил: 9567. Максим Решено за 9 мин. [Показать отчёт]
Научился: Создал самый оптимальный алгоритм в моей жизни для поиска простых чисел 
Сложности: разобраться как он работает =) 
Комментарии: Что же дальше будет? =) 
8 Итератор. Один метод вместо классов. 00:06:19 56 чел. ★ 4.9 Done
  Отчёт отправил: 9567. Максим Решено за 7 мин. [Показать отчёт]
Научился: Функции могут возвращать IEnumerable и в таких функциях можно использовать yield 
Сложности: ничего 
Комментарии: Воу, функция, которая может приостанавливать своё выполнение в пользу подпрограммы, которая её вызвала. Это просто нечто!! =) Нужно это всё переварить. Спасибо за урок =) 
9 ФИНАЛЬНЫЙ УРОК 48 чел. ★ 5 Done
  Отчёт отправил: 9567. Максим Решено за 10 мин. [Показать отчёт]
Научился: Узнал, что такое итератор и как он реализуется в C#, лучше разобрался в работе foreach, как реализовать класс, наследуемый от IEnumerable и IEnumerator, а так же волшебное слово yield  
Сложности: Вникнуть, как работает yield 
Комментарии: Курс получился просто отличный! На нём в мою голову за пару десятиминутных уроков вбили то, во что сам бы я наверное месяц вникал =) И всё это в такой форме, что единственное желание после проработки очередного видео было как можно быстрее узнать что же дальше. Я его прошел за один вечер, а потом ещё пару дней это всё укладывалось у меня в голове. И в итоге, сейчас я понимаю, что такое IEnumerable, IEnumerator, что именно делает yield и как с этим всем работать =) 
10 VIP. Оптимизация поиска простых чисел 01:19:28 20 чел. ★ 5 Open
  Итого:   10 видеоуроков общей продолжительностью 2 час. 42 мин. 20 чел. ★ 4.94  
  Финалисты:   Иван Воронин,   Елена,   Артём,   Новопашин Владимир,   Алексей В.,   Фомичева Наталья,   Rita,   Станислав,   Neverwinter 2,   Permitin Alexey,   aleksey-k,   Николай Денисов,   Денис,   Bazel,   kalobyte,   Yefim,   Tekashnik,   Алексей Малышев,   Sergio,   Роман .

Начинаем практику по языку C#




Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

После заполнения формы ты будешь подписан на рассылку «C# Вебинары и Видеоуроки», у тебя появится доступ к видеоурокам и консольным задачам.

Несколько раз в неделю тебе будут приходить письма — приглашения на вебинары, информация об акциях и скидках, полезная информация по C#.

Ты в любой момент сможешь отписаться от рассылки.
Научился: Отличный курс! Для себя узнал много нового. Стал понимать, что такое IEnumerable и IEnumerator, что делает yield и как это все использовать.
Трудности: Уроки короткие, но насыщенные. Все разложено "по полочкам". С каждым разом объем кода уменьшался. Такое мог дать только профессионал, и как программист и как преподаватель.
Огромное спасибо, Евгений Витольдович, за прекрасный курс, за вложенный труд, время и частицу себя! И еще пожелание на будущее: раскрыть тему использования ИИ средствами С#. Впрочем, эта тема, скорее всего, очень велика.
Хороший курс. Дает понимания что такое итератор и с чем его едят. Очень подробно разбираются различные реализации. Было интересно. Следующий курс, который я хотел бы пройти, "Своя игра".