C# обучение сайт

Формула программиста

основатель — Волосатов Евгений Витольдович

Клуб формулистов - Ежемесячная подписка

Вступление в Клуб Формулистов на выгодных условиях для НОВЫХ участников.

После взноса  999  499 руб. вы получите подписку
в Клуб Формулистов на 30 дней и 256 байт для быстрого старта.
Байты используются для открытия более одного урока в день, по 50 байт за урок.

Стоимость 1 дня за первый месяц: всего 16 рублей.

Первый взнос - 499 руб./30 дней.

Через 30 дней будет списано 3,000 2,400 руб.
за продление подписки в Клуб на 30 дней + подарок 512 байт.

Так будет продолжаться каждые 30 дней, пока вы не отмените подписку.
Средства будет автоматически считываться с вашей карты.
Вы в любой момент сможете отказаться от продления Клуба.

Только ДО КОНЦА НЕДЕЛИ -
-50% скидка на первый взнос, всего 499 (вместо 999) рублей!
-20% скидка на ЕЖЕМЕСЯЧНЫЙ платёж!
Всего 2400 руб/месяц (вместо 3000 руб/месяц), или 80 руб./день - цена чашки кофе.


Стоимость 1 дня: 80 руб.

Хочу вступить!

Также есть другие варианты оплаты участия в КФ:

Билет в клуб формулистов на ...
30+ дней | 60 дней | 150 дней | 380 дней | 1000 дней

Внимание!
Стоимость участия в Клубе формулистов увеличивается 1 числа каждого месяца на 100 рублей.
При оформления подписки стоимость остаётся постоянной, пока подписка не будет отменена.







Первый взнос - 499 руб./30 дней + 500 байт.
Последующие взносы - 3,000 2400 руб./месяц + 512 байт.



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

# Название видеоурока Видео / Тесты Решило Рейтинг Доступ
1 FREE Iterator - Numbers - Introduction 00:05:39
1 тест
24 чел. ★ 4.8 Done
  Мы начинаем знакомство с самым популярным, используемым
и самым востребованным шаблоном проектирования: "Итератор".
Так же мы создадим базовый интерфейс, который является
основой для последовательного перебора любых объектов.
Отчёт отправил: 17947. Dmitry Sinitsin Выполнено за 1 час. 0 мин. [Показать отчёт]
Научился: итерация == вызов и обработка однотипных предметов в рамках поставленной задачи, к примеру пересчета boolean hasNext (); - правда или ложь, что есть следующий объект для обработки - такова задача этого метода Object next (); - метод обработки имеющегося в наличии и проверенного вышеуказанным методом объекта, возвращается этим методом ОБЪЕКТ  
2 Iterator - Numbers - 12345 00:04:27
1 тест
22 чел. ★ 5 Done
  Мы продолжаем знакомство с самым популярным
и востребованным шаблоном проектирования: "Итератор".
На этом уроке мы создадим класс NumbersIterator()
реализовав интерфейс Iterator для перебора целых чисел.
Отчёт отправил: 17947. Dmitry Sinitsin Выполнено за 13 мин. [Показать отчёт]
Научился: краткие уроки более удобоваримые юниты для постижения Создали класс для игр с пересчетом до пяти, имплементировали им интерфейс Итератор ручной сборки (не джавовский из библиотеки, а свой, собственноручно сваянный ) 
3 Iterator - Numbers - Iterable 00:04:44
1 тест
22 чел. ★ 5 Done
  Мы продолжаем знакомство с самым популярным
и востребованным шаблоном проектирования: "Итератор".
На этом уроке мы создадим класс Program() в котором продемонстрируем
как работать с созданным ранее итератором NumbersIterator().
Отчёт отправил: 17947. Dmitry Sinitsin Выполнено за 18 мин. [Показать отчёт]
Научился: при переборе в цикле вайл numbers возвращаются объекты, поэтому, если нужно выполнять над возвращаемыми объектами математические действия, эти возвращаемые объекты надо приводить к типу Integer , это делается указанием интеджера в скобках перед объектом Интерфейс Итерабл требуется для организации общего доступа к его функционалу из любого места программы, как я понял 
4 Iterator - Numbers - Running 00:05:12
1 тест
22 чел. ★ 5 Done
  Мы продолжаем знакомство с самым популярным
и востребованным шаблоном проектирования: "Итератор".
На этом уроке мы реализуем класс Numbers() implements Iterable.
Отчёт отправил: 17947. Dmitry Sinitsin Выполнено за 20 мин. [Показать отчёт]
Научился: создали класс Numbers, который имплементирует (реализует) интерфейс Iterable  и применили его при пересчете до пяти Класс Iterator экземпляр под именем numbers = присвоить новый экземпляр new  класса Numbers(). и применить в нём метод iterator (); А метод итератор имеет одну строку с оператором return new NumbersIterator (); А уже в намберситераторе расписана все правила счета от единицы до пяти с проверкой наличия следующего для счета элемента и с инкрементом для перехода далее  
5 Iterator - Numbers - Inner class 00:02:25
1 тест
22 чел. ★ 5 Done
  Мы продолжаем знакомство с самым популярным
и востребованным шаблоном проектирования: "Итератор".
На этом уроке мы объединим два класса в один.
Отчёт отправил: 17947. Dmitry Sinitsin Выполнено за 12 мин. [Показать отчёт]
Научился: при перемещении класса из отдельного файла внутрь другого класса не забывай удалить  из сигнатуры перемещаемого класса модификатор доступа паблик - внутри класса он уже не нужен Класс с модификатором доступа паблик в отдельном файле и класс внутри класса использующего это класс эквивалентны по доступности 
Сложности: Видеть снег и слякоть за окном наступающих сумерек в без малого четыре часа дня... 
6 Iterator - Numbers - System 00:05:13
1 тест
22 чел. ★ 4.9 Done
  Мы продолжаем знакомство с самым популярным
и востребованным шаблоном проектирования: "Итератор".
На этом уроке мы удалим созданные ранее интерфейсы Iterable и Iterator.
После чего воспользуемся встроенным java.util.Iterator.
Отчёт отправил: 17947. Dmitry Sinitsin Выполнено за 1 час. 36 мин. [Показать отчёт]
Научился: перебор элементов с целью их анализа или обработки - фундаментальный шаблон проектирования дающий ключи к широкому спектру успешно решенных задач Можно наваять самостоятельно интерфейс итератора - требуется проверка на наличие очередного элемента ряда и требуется метод обработки с инкрементированием - переходом к следующему элементу, наличие которого проверяется предыдущим методом Итератора Удалив самостоятельно написанные интерфейсы мы использовали системные библиотеки Джавы - функционал был сохранён 
7 Iterator - Random 00:07:48
1 тест
22 чел. ★ 5 Done
  Мы продолжаем эксперименты с самым популярным
и востребованным шаблоном проектирования: "Итератор".
На этом уроке мы попрактикуемся в использовании итератора и
создадим очередную программу для генерации случайных чисел.
Отчёт отправил: 17947. Dmitry Sinitsin Выполнено за 1 час. 47 мин. [Показать отчёт]
Научился: поля родительского класса видны из дочернего класса без каких-либо дополнительных ухищрений - область видимости класса-родителя включает и область видимости дочернего класса Вариант остановки работы программы - если возвращено совпадение с округленным числом Пи 
8 Iterator - Digits 00:07:54
1 тест
22 чел. ★ 5 Done
  Мы продолжаем эксперименты с самым популярным
и востребованным шаблоном проектирования: "Итератор".
На этом уроке мы напишем ещё один Итератор, который
будет перебирать цифры числа.
Отчёт отправил: 17947. Dmitry Sinitsin Выполнено за 4 час. 13 мин. [Показать отчёт]
Научился: суть итератора остаётся неизменной при всех ухищрениях наследования, перегрузки и удочерения классами классов - проверь наличие следующего элемента для обработки и вторым методом обработай его как требуется не забыв тут же инкрементировать, что бы перейти к следующему элементу Набросали три класса, один из которых пээсвээм, оставшиеся - находятся в родственной связи (один в другом) Пр0грам запускает цикл для перебора последовательности и возвращает на экран результат работы Родственники заняты иным Диджитс имплементит Итерабл и присваивает намберу значение аргумента на входе в конструкторе Дочерний ДиджитсИтератор имплементит уже Итератор и содержит базовые методы проверки следующего элемента и второй метод, занятый возвращением остатка от деления на 10 и целочисленным делением для «откусывания» хвоста числа с целью перехода к следующей цифре слева направо 
9 Iterator - BlackJack - Introduction 00:05:13
1 тест
22 чел. ★ 5 Done
  Мы продолжаем эксперименты с самым популярным
и востребованным шаблоном проектирования: "Итератор".
На этом уроке мы распишем план игры BlackJack,
которую реализуем в течении следующих уроков.
Отчёт отправил: 17947. Dmitry Sinitsin Выполнено за 3 час. 39 мин. [Показать отчёт]
Научился: познакомлюсь на на пятом десятке с карточной игрой, не всё порхать в неведении, хоть знать буду правила для начала Если у игрока после взятия новой карты сумма очков превысит 21, то такая ситуация называется «перебор» Дилер произносит «много» и снимает ставку игрока в пользу казино Если у дилера в первых двух картах набирается 21 очко (BlackJack), то все игроки (кроме тех, у кого тоже BlackJack), проигрывают Помимо PSVM в классе Program, будут в нашей игре ещё пара классов, класс Кард с перечислением карт и перечислением мастей, с методом подсчета «веса» карт. Класс КардЗззз будет имплементировать (реализовывать) интерфейс Итерабл, а дочерний ему класс КардззззИтератор будет реализовывать интерфейс Итератор с классическими методами проверки следующего члена ряда и обработки текущего с переходом далее 
10 Iterator - BlackJack - Card 00:09:22
1 тест
22 чел. ★ 5 Done
  Мы продолжаем эксперименты с самым популярным
и востребованным шаблоном проектирования: "Итератор".
На этом уроке мы начинаем создание игры BlackJack,
а конкретно создадим вначале проект IteratorBlackJack и
создадим класс Card(), который продемонстрирует возможность
использования итератора для перечисления не только чисел.
Отчёт отправил: 17947. Dmitry Sinitsin Выполнено за 41 мин. [Показать отчёт]
Научился: узнал названия мастей на английской мове Spades, //пики Diamonds, // буби Hearts, // черви Clubs // трефы Метод ordinal() возвращает порядковый номер элемента перечисления enum 
Сложности: Дождаться, когда девять из илевена будет поправлено в найн ))) 
11 Iterator - BlackJack - Deck of Cards 00:06:44
1 тест
21 чел. ★ 5 Done
  Мы продолжаем эксперименты с самым популярным
и востребованным шаблоном проектирования: "Итератор".
На этом уроке мы создадим класс Cards() implements Iterable,
который будет перебирать все возможные комбинации карт.
Отчёт отправил: 17947. Dmitry Sinitsin Выполнено за 23 мин. [Показать отчёт]
Научился: массив карт одномерный каждая карта будет иметь свой номер хранимый в переменной каунт заполнение массива карт - через вложенные циклы проверка хезнекста - пока счетчик больше нуля после заполнения массива карт до 51 (52 - 1) Итератор работает декрементом и выводом элемента массива карт 
12 Iterator - BlackJack - Random 00:06:59
1 тест
21 чел. ★ 5 Done
  Мы продолжаем эксперименты с самым популярным
и востребованным шаблоном проектирования: "Итератор".
На этом уроке мы реализуем алгоритм перемешивания колоды.
Для этого мы воспользуемся нестандартным способом,
который напоминает игру: "Что? Где? Когда?".
Отчёт отправил: 17947. Dmitry Sinitsin Выполнено за 1 час. 7 мин. [Показать отчёт]
Научился: вариант тасовки карт такой придумал я) Выполнять проверку на соседство номеров карт и если они отличаются не более, чем на 1, то менять их местами Для этого придется использовать промежуточные переменные, но в итоге сам массив будет уже содержать тасованные карты 
13 Iterator - BlackJack - Stages 00:09:06
1 тест
21 чел. ★ 5 Done
  Мы продолжаем эксперименты с самым популярным
и востребованным шаблоном проектирования: "Итератор".
На этом уроке мы реализуем базовый алгоритм Дилера,
чтобы он раздавал карты играющим.
Отчёт отправил: 17947. Dmitry Sinitsin Выполнено за 2 час. 25 мин. [Показать отчёт]
Научился: свич-кейс приходит на помощь, когда не хватает ифэлза Игра в черного Джека состоит из трех стадий, не считая победы Дилера или Игрока 1) У Дилера видна карта 2) Игрок набирает себе сколько ему вздумается 3) Дилер набирает себе 4 - Победа того или другого Свич сделали на эти стадии, остался последний урок с деталями раздачи Интрига! 
14 Iterator - BlackJack - Play game 00:16:58
1 тест
20 чел. ★ 5 Done
  Мы продолжаем эксперименты с самым популярным
и востребованным шаблоном проектирования: "Итератор".
На этом уроке мы доделаем игру BlackJack, после чего
можно будет играть с Дилером один на один.
Отчёт отправил: 17947. Dmitry Sinitsin Выполнено за 4 час. 58 мин. [Показать отчёт]
Научился: выиграть у Дилера, как оказалось, несложно ))) Но это без ставок. С оными, картина мира меняется и люди готовы снять последнюю сами-знаете-что )) Разделяй и властвуй - хороший принцип алгоритмизации жизни, применённый в разработке игры, помог разделить игру на три этапа, в коде это был просто свич-кейс, в каждой из Сцен (STAGE) применили свои наборы правил и проверку условий. Обошлись ифэлзами, присвоением, суммированием, оператором НЕ (!), и оператором БОЛЬШЕ (>) С этим небогатым инструментарием игра взлетела и играет как надо Можно завтра делать видео по курсу Код несложный, думаю рассказать и показать не составит труда 
Сложности: Осознать, что подсветка клавиатуры в тёмном салоне машины уже не так актуальна ибо смотрю на экран, а не на клавиатуру. Спасибо Евгению Витольдовичу за прошлогодний марафон по СОЛО! 
15 ФИНАЛЬНЫЙ УРОК без видео
5 тестов
10 чел. ★ 5 Done
  Поздpaвляю!
Твoя зaдaча - прoверить cебя и пpойти тест, см. вкладку "Тест".

Напиши отзыв или видеообзор по этому видеокурсу.
Отчёт отправил: 17947. Dmitry Sinitsin Выполнено за 38 мин. [Показать отчёт]
Научился: вот и новый курс за плечами, количество говорят должно перерасти в качество, жаль небыстрый это процесс Итератор несложен и для новичка удобен к пониманию и осмыслению Два принципа в основе - проверить наличие следующего элемента для обработки И обработать как требуется Это база - булевский метод hasNext проверит есть ли куда двигаться, а метод next, возвращающий обрабатываемый элемент занимается его изменением как того требует ТЗ Всё остальное - уже надстройка В нашей игре итератор реализован в Cards.java 
Видеообзор: ljaCgvXmR8Q
  Итого:   15 видеоуроков 1 час. 37 мин.
19 тестов
10 чел. ★ 4.98  
  Финалисты:   Иван Воронин,   Сергей Соколов,   Новопашин Владимир,   Виктор,   Tekashnik,   Александр,   Dmitry Sinitsin,   Anatoli,   Yefim,   Tom .

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





Если вы пришли без приглашения -
введите тысяча двадцать четыре (цифрами).
Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

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

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

Ты в любой момент сможешь отписаться от рассылки.


Научился: Итератор это мощная вещь перебора коллекций)) Очень хорошо разобран класс итератора и механизм его работы. Очень полезный шаблон в жизни каждого программиста. Данный курс вскрывает внутренности данного шаблона. Рекомендован к прохождению.
Трудности: Вспомнить что было в курсе



Научился: вот и новый курс за плечами, количество говорят должно перерасти в качество, жаль небыстрый это процесс Итератор несложен и для новичка удобен к пониманию и осмыслению Два принципа в основе - проверить наличие следующего элемента для обработки И обработать как требуется Это база - булевский метод hasNext проверит есть ли куда двигаться, а метод next, возвращающий обрабатываемый элемент занимается его изменением как того требует ТЗ Всё остальное - уже надстройка В нашей игре итератор реализован в Cards.java