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

Формула программиста
основатель — Волосатов Евгений Витольдович
1-2-3 мая - Создай online игру!
Вебинар «Карточки памяти на Android» начнётся через 14 час. 44 мин.

Итератор

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

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


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

Хочу купить!

Цена: 100 p.


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

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

Нaпиши, что такое итератор, своими словами.
Отчёт отправил: 6925. Артём Выполнено за 15 мин. [Показать отчёт]
Научился: познакомился с итераторами.  
Сложности: понять итераторы.  
Комментарии: Итератор — интерфейс, благодаря которому можно получить элементы коллекций (списка, массива) 
3 Итератор. Перебор чисел в итераторе. 00:09:04 68 чел. ★ 4.9 Done
  На этом уроке мы добавим в созданный класс перебор чисел.
Начнём с двойки и будем его всё время увеличивать "до бесконечности".
В конце урока добавим ограничение, чтобы итератор останавливался.
Отчёт отправил: 6925. Артём Выполнено за 20 мин. [Показать отчёт]
Научился: Повторил перебор чисел.  
Сложности: null  
Комментарии: Замечаний нет 
4 Итератор. Перебор простых чисел. 00:10:28 68 чел. ★ 4.9 Done
  На этом уроке мы сдеаем так, чтобы наш класс возвращал в цикл
только простые числа, как и было задуманно изначально.
Отчёт отправил: 6925. Артём Выполнено за 20 мин. [Показать отчёт]
Научился: Вспомнил алгоритм поиска простых чисел.  
Сложности: Думать :)  
Комментарии: Идём дальше 
5 Итератор. Зачем нужно два класса 00:16:21 63 чел. ★ 5 Done
  На этом уроке мы разберёмся, зачем всё-таки нужно два класса
один для создания итератора, второй для его использования.
Для демонстрации напишем программу, которая выведет
на экран таблицу умножения простых чисел.
Отчёт отправил: 6925. Артём Выполнено за 45 мин. [Показать отчёт]
Научился: Получше понял разделение кода на два класса.  
Сложности: Я так и не понял, почему primeMax с -1 начинается? 
Комментарии: Я вас уважаю, но моя таблица мне нравится больше:) Но всё же вопрос: как можно выровнять её? А то неохота пробелы рисовать:( 
6 Итератор. Волшебное слово yield. 00:11:03 63 чел. ★ 5 Done
  На этом уроке мы узнаем, как упростить создание итератора.
Для этого достаточно просто написать нужный нам цикл,
внутри которого воспользоватся волшебным словом yield.

Отчёт отправил: 6925. Артём Выполнено за 45 мин. [Показать отчёт]
Научился: Узнал о ключевом слове yield, а также его применении.  
Сложности: Определение.  
Комментарии: Yield означает, что метод, оператор или метод доступа get в котором оно встречается, является итератором. 
7 Итератор. Список простых чисел. 00:08:42 61 чел. ★ 5 Done
  На этом уроке мы перепишем алгоритм перебора простых чисел с использованием списка,
который будет постепенно, по мере необходимости, пополняться новыми простыми числами.

Отчёт отправил: 6925. Артём Выполнено за 20 мин. [Показать отчёт]
Научился: Повторил алгоритм поиска простых чисел и списки.  
Сложности: Разобраться с yield 
Комментарии: А заодно вспомнил матрёшки:) Ещё бы вспомнить выравнивание... 
8 Итератор. Один метод вместо классов. 00:06:19 61 чел. ★ 5 Done
  На этом уроке мы увидим, что класс, оказывается, создавать не обязательно.
Магия слова yield сделает всё за тебя, можно просто один раз организовать перебор нужных элементов,
и потом его можно использовать через обычный foreach в любом месте программы.
Вся прелесть в том, что перебор элементов происходит по мере необходимости.

Отчёт отправил: 6925. Артём Выполнено за 10 мин. [Показать отчёт]
Научился: Повторил навыки упрощения кода.  
Сложности: Ничего) 
Комментарии: Курс как всегда замечательный, но довольно трудноват, ибо пока не поймешь суть итераторов и смысл, то делать нечего. Я его ещё раз пройду посмотрю. А так идея хорошая, очень нравятся такие профи вебинары, ибо для своей цели надо знать больше, чем много:) 
9 ФИНАЛЬНЫЙ УРОК 53 чел. ★ 5 Done
  Поздравляю с окончанием курса!
Оставь, пожалуйста, отзыв о курсе.

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

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




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

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

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

Ты в любой момент сможешь отписаться от рассылки.
Об итераторах я не знал ничего, лишь производное слово "итерация" во время работы с циклами. Этот курс мне запомнился тем, что поначалу всё очень НЕТРУДНЫм было, а потом всё ТРУДНЕЕ и труднее вникать в код. И с каждым уроком я понимаю, КАК МНОГО я не знаю в программировании и как много придётся пахать, чтобы стать действительно ПРОФЕССИОНАЛОМ, а не просто посредственным программистом. Этот курс хорош ещё тем, что после удачных своих программ я не поймаю звезду: я снова убедился, что я дерьмо как прогер, однако это лишь стимул работать дальше и не опускать руки. Ведь дорогу осилит идущий :) В любом случае, этот курс программно-психологический, как и всё Професишарпы, так что огромное спасибо, работаем дальше!
Научился: Научился разным реализациям работы с перечислениями, лучшему пониманию механики итераторов и работы с коллекциями. Все это помогло на практике с движком Unity
Трудности: сложностей не было
Очень понравилось , что задача решена различными методами, даже в книгах редко встречается такой всесторонний подход. Есть над чем поразмыслить и попрактиковаться. Возможно следующий курс ООП, игры или упорядочивание основ с#.