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

Формула программиста
основатель — Волосатов Евгений Витольдович
1-2-3 мая - Создай online игру!

Итератор

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

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


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

Хочу купить!

Цена: 100 p.


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

# Название видеоурока Решило Рейтинг Доступ
1 Итератор. Разложение числа на простые множители. 00:09:22 75 чел. ★ 4.9 Done
  На этом уроке мы создадим очевидный алгоритм,
который будет раскладывать число на просты множители.
Отчёт отправил: 8275. Tekashnik Выполнено за 27 мин. [Показать отчёт]
Научился: Как расскладывать число на простые числа 
Сложности: Придумать, что было самым сложным 
Комментарии: На вебинаре присутствовать не получилось, вот начинаю, просто смотреть) 
2 Итератор. Создание пустого итератора. 00:11:21 71 чел. ★ 4.9 Done
  На этом уроке мы подберём ключ к циклу foreach.
создадим класс, который позволит создать свой алгоритм
для перебора значений в обычном цикле foreach.

Нaпиши, что такое итератор, своими словами.
Отчёт отправил: 8275. Tekashnik Выполнено за 18 мин. [Показать отчёт]
Научился: Создвать, классы с наследованием 
Сложности: Ну сложно пока понять, что с этим всем делать 
Комментарии: Будем посмотреть, куда это всё в итоге применяется. 
3 Итератор. Перебор чисел в итераторе. 00:09:04 68 чел. ★ 4.9 Done
  На этом уроке мы добавим в созданный класс перебор чисел.
Начнём с двойки и будем его всё время увеличивать "до бесконечности".
В конце урока добавим ограничение, чтобы итератор останавливался.
Отчёт отправил: 8275. Tekashnik Выполнено за 31 мин. [Показать отчёт]
Научился: Добавлять методы в класс 
Сложности: Пока что то не понятно, для чего это всё в итоге, и почему нельзя просто обойтись методом 
Комментарии: Всё понятно, что и как действует, но не понятен пока великий смысл всего, и еще не понятны классы в которых, только интерфейсы((( да и с интерфейсами не очень понятно, что с ними делать и как применять 
4 Итератор. Перебор простых чисел. 00:10:28 68 чел. ★ 4.9 Done
  На этом уроке мы сдеаем так, чтобы наш класс возвращал в цикл
только простые числа, как и было задуманно изначально.
Отчёт отправил: 8275. Tekashnik Выполнено за 32 мин. [Показать отчёт]
Научился: Получать число, которое раскладывается на три простых пятизначных ;)))) 
Сложности: Придумать, что было самым сложным 
Комментарии: Вот и я думаю, какой краеугольный смысл этого, ведь всё можно заменить одним методом... 
5 Итератор. Зачем нужно два класса 00:16:21 63 чел. ★ 5 Done
  На этом уроке мы разберёмся, зачем всё-таки нужно два класса
один для создания итератора, второй для его использования.
Для демонстрации напишем программу, которая выведет
на экран таблицу умножения простых чисел.
Отчёт отправил: 8275. Tekashnik Выполнено за 43 мин. [Показать отчёт]
Научился: Получил понятие о том, в чём различия IEnumerable и IEnumerator. 
Сложности: Уже всё проще, главное начать 
Комментарии: Ну что ж ребятки, будем использовать, теперь данное чудо программного кода 
6 Итератор. Волшебное слово yield. 00:11:03 63 чел. ★ 5 Done
  На этом уроке мы узнаем, как упростить создание итератора.
Для этого достаточно просто написать нужный нам цикл,
внутри которого воспользоватся волшебным словом yield.

Отчёт отправил: 8275. Tekashnik Выполнено за 38 мин. [Показать отчёт]
Научился: Узнал что такое yield 
Сложности: Сложно представить к чему мы идём 
Комментарии: Всё запутанней и запутанней yield - это такая функция которая преобразует тип нашего искомого объекта в тип, который необходим для возврата, работает в IEnumerator'ах 
7 Итератор. Список простых чисел. 00:08:42 61 чел. ★ 5 Done
  На этом уроке мы перепишем алгоритм перебора простых чисел с использованием списка,
который будет постепенно, по мере необходимости, пополняться новыми простыми числами.

Отчёт отправил: 8275. Tekashnik Выполнено за 39 мин. [Показать отчёт]
Научился: Записывать в список простые числа 
Сложности: Придумать, что было самым сложным 
Комментарии: У меня всё же вопрос, как нам помог класс IEnumerable? 
8 Итератор. Один метод вместо классов. 00:06:19 61 чел. ★ 5 Done
  На этом уроке мы увидим, что класс, оказывается, создавать не обязательно.
Магия слова yield сделает всё за тебя, можно просто один раз организовать перебор нужных элементов,
и потом его можно использовать через обычный foreach в любом месте программы.
Вся прелесть в том, что перебор элементов происходит по мере необходимости.

Отчёт отправил: 8275. Tekashnik Выполнено за 37 мин. [Показать отчёт]
Научился: Научился использовать интерфейс IEnumerable 
Сложности: Сложно понять различия между IEnumerable и IEnumerator, хотя в последнем, империческим методом было выяснено, что нельзя использовать цикл foreach, 
Комментарии: Курс оказался интересным, немного непонятным, но при глубоком переосмыслении всё вроде раскладывается по полочкам. Но всё равно остаются вопросы, например: различия между IEnumerable и IEnumerator? почему не удобней использовать простой List? В общем и целом, полезно, теперь можно использовать перечисление своих объектов и yield выведет их и для понимания например кода других разработчиков, нужно ещё как нибудь начать использовать данный интерфейс самому, тогда наверное полное понимание придёт. Спасибо за курс! 
9 ФИНАЛЬНЫЙ УРОК 53 чел. ★ 5 Done
  Поздравляю с окончанием курса!
Оставь, пожалуйста, отзыв о курсе.

Какой курс ты будешь проходить следующим?
Отчёт отправил: 8275. Tekashnik Выполнено за 34 мин. [Показать отчёт]
Научился: Формулировать и писать мысли 
Сложности: Формулировать и писать мысли 
Комментарии: Спасибо большое за курс, создателю Евгению Витольдовичу. Данный курс открывает новые возможности работы с колекциями, которые созданы пользователем. Рекомендую курс, не всем, а только тем, кто уже себя уверенно чувствует в языке программирования C#. 
10 VIP. Оптимизация поиска простых чисел 01:19:28 23 чел. ★ 5 Done
  Пишем функцию для поиска простых чисел и
поэтапно оптимизируем её в двух направлениях.
Отчёт отправил: 8275. Tekashnik Выполнено за 49 мин. [Показать отчёт]
Научился: Находить простые числа всё более быстрыми алгоритмами 
Сложности: Вспомнить всё 
Комментарии: Делал уже когда то давно, теперь повторил)) 
  Итого:   10 видеоуроков общей продолжительностью 2 час. 42 мин. 23 чел. ★ 4.96  
  Финалисты:   Иван Воронин,   Елена,   Артём,   Новопашин Владимир,   Алексей В.,   Фомичева Наталья,   Rita,   Станислав,   Neverwinter 2,   Permitin Alexey,   aleksey-k,   Николай Денисов,   Денис,   Bazel,   kalobyte,   Yefim,   Tekashnik,   Алексей Малышев,   Sergio,   Роман,   konstantin,   Сергей Стефаненко,   chokayes .

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




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

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

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

Ты в любой момент сможешь отписаться от рассылки.
Научился: вспоминать как было интересно и здорово
Трудности: найти косяк в своей программе - в итоге нашел утром
Что сказать про данный курс.....Он не для новичков. Лучше посидеть с учебниками прежде чем пройти его, потому что опущены некоторые особенности тех или иных объектов ООП. Очень понравился принцип "не все сразу" - потихоньку на простых примерах въезжаем в сложную тему понятий: наследование и ИТЕРАТОР. Уроки по 10-15 минут для меня - то что надо! Жаль что Евгений Витольдович так и не ответил на мой вопрос про List.
Трудности: разобраться с yield
Было познавательно и интересно. итераторы пригодятся при написании программ