Online обучение c#

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

основатель — Волосатов Евгений Витольдович
Поздравляю с 1 сентября! Система начисления Байтов работает.

Статистика по видеоурокам

  • Всего просмотрено уроков: 209
  • Всего выполнено уроков: 197

Отчёты по видеоурокам

Дата Видеоурок Результат
2020-07-22 23:23 Демо софт Вам телеграмма! + 7 21 мин.
Устанавливать телеграмм и подключаться к чату
ничего
2020-07-22 00:17 Демо софт Квадратный калейдоскоп + 5 12 час. 25 мин.
Красивый результат, отличный урок ! Научился работать с элементом Panel , рандомной генерацией разных фигур и заданию их свойств (цвета заливки, ширины линии, координат отображения). 
Понять правила зеркального отображения фигур .
2020-07-18 22:59 Демо софт Текстовый процессор + 7 1 час. 44 мин.
Работать с OpenFileDilog и SaveFileDialog компонентами, считывать весь текст из файла, выполнять поиск и замену необходимых строк.
Ничего.
2020-06-12 00:33 Демо софт Менеджер паролей + 8 48 мин.
Оформлению формы с применением TableLayoutPanel , LinkLabel, TextBox и Button. Создавать функции по работе с буфером обмена и переходу по веб-ссылке.
Добавил от себя немного: отдельная форма по вводу пароля . Но пока не смог добиться сохранения новых данных после завершения работы программы.
2020-05-04 00:08 Дневник успеха 2020-05-03 : Мало хотеть, надо уметь. + 6 2 час. 6 мин.
 

2020-05-03 17:21 Демо софт Английские карточки + 4 5 час. 6 мин.
Работать с медиа контентом, классом Dictionary и компонентом Media Player .
Добавить последовательное озвучивание значения картинки сначала на русском, а потом на английском языках при одном клике на PictureBox . В итоге удалось привязать данную функцию к каждому нажатию  лев. кнопки мыши.
2020-04-26 18:03 Дневник успеха 2020-04-26 : Всякая работа мастера хвалит. + 7 2 мин.
На следующей неделе планирую пройти курс DemoSoft, плюс ежедневный набор текста и решение консольных задач. .

2020-04-26 17:46 Нанософт VIP урок. Работа с WinAPI + 7 1 час. 48 мин.
Работать с WinApi на примере закрытия окон, обнаруженных по имени основного окна. Применять таймер для постоянного опроса системы.
Особых сложностей не было
2020-04-26 13:28 Нанософт ФИНАЛЬНЫЙ УРОК + 9 2 час. 17 мин.
Компоновке видео. Следующим планирую прохождение видеокурса DemoSoft.
Видео записать корректно.
2020-04-19 21:54 Нанософт Средняя оценка + 9 1 день 58 мин.
Созданию минималистичной программы по подсчету среднего арифметического выставленных оценок (на примере оценок в учительском журнале), применению делегатов для отображения текущих результатов кол-ва оценок и среднего их значения.
Сложностей не было.
2020-02-25 01:37 Нанософт Делегаты на кубиках + 9 2 дня 7 час. 33 мин.
Инициализации, передаче делегатов в класс. Открыл для себя возможность накопления функций в делегате.
Всё очень доходчиво, спасибо !
2020-02-01 19:44 Нанософт Скорость на клавиатуре + 9 1 час. 19 мин.
Работать с элементами интерфейса, таймером, чтением из файла, сверкой набираемого текста с исходным шаблоном. Добавил отображение лучшего результата и выбор определённого текста. 
Разобраться с проверкой набираемого текста и добавление функции выбора текстов .
2019-12-15 21:01 Нанософт Расписание уроков + 14 6 час. 20 мин.
Работать с компонентом DataGridView, добавлять столбцы, редактировать его настройки .
Всё было понятно.
2019-12-10 23:45 Нанософт Прохождение теста + 12 12 час. 19 мин.
Создавать программу-опросник , парсить данные из текстового файла, компоновать форму, перемешивать варианты ответов.  Спасибо большое за интересную программу !
Разобраться с логикой перемешивания вариантов ответов
2019-11-17 21:46 Нанософт Баскетбольное табло + 9 3 час. 7 мин.
Оформлению форм с применением TableLayOut . Передачи данных из одной формы в другую благодаря атрибуту public . 
Ничего.  Довольно последовательно всё было разложено на уроке . Спасибо !
2019-11-03 23:22 Нанософт Шахматные часы + 9 53 мин.
Создавать класс по работе с тиками и корректному подсчёту времени. Переключение часов выбрал стандартное, - по наведению указателя мышки .
Разобраться в общей схеме работы программы
2019-08-22 12:12 Демо софт Двенадцать месяцев + 8 2 дня 5 час. 19 мин.
Работать с MonthCalendar и PictureBox . Привязать смену месяца в календаре к выбору необходимой картинки + обработка исключения в случае отсутствия нужного файла + скрывать MonthCalendar по клику на  PictureBox.
Ничего. Спасибо большое за урок !
2019-08-10 20:53 Нанософт Твоё портфолио + 6 1 час. 4 мин.
Научился компоновать коды других проектов в одном. Спасибо за интересную идею реализации портфолио.
настроить ресурсы других проектов для последующего запуска
2019-04-19 23:42 Простой WPF WPF. Простая змейка. VIP урок. Поймай хвост! + 7 54 мин.
Применять хакерский Tag для доступа ко всем координатам частей змейки и реализации проверки на пересечение со своим хвостом. Добавил вывод информации о набранных очках и текущей длине змейки . 
Поймать свой хвост при 4х-кратной скорости движения змейки .
2019-04-07 13:44 Простой WPF WPF. Финальный урок + 8 1 мин.
Вспомнил как компоновать видеоотчёт + повторно пробежался по нюансам составления 2х программ, конвертера валют и змейки.
Скомпоновать видео
2019-03-24 21:24 Простой WPF WPF. Простая змейка. VIP урок. Длина тела. + 11 13 мин.
Действительно, - самое скоростное удлинение змейки ) . Решение  - отличное !
Всё понятно .
2019-03-24 18:30 Простой WPF WPF. Простая змейка. Победа и поражение. + 10 20 час. 41 мин.
Добавлены методы по отработке окончания игры : набрали 5 очков либо вышли за пределы поля. При этом контролируется выход змейки за пределы поля. Доп-но реализовал удаление последнего пойманного щарика с поля (в методе Timer_Tick) , случайную смену цветов CanvasMap.Background и постепенное увеличение скорости движения змейки при наборе point-ов,  Интересно было повозиться, спасибо за урок !
Разобраться с приемлемым диапазоном изменения значений timer_interval-a, т.к скорость движения змейки в 100 000 оказалось равной при 10 000 тиков .
2019-03-22 00:46 Простой WPF WPF. Простая змейка. Управление движением. + 11 41 мин.
Размещать на Canvas-e другой объект, - "Змейка".  Добавили управление змейкой курсорными клавишами, изменяя координаты в ту или иную сторону..
ничего
2019-03-20 23:53 Простой WPF WPF. Простая змейка. Таймер для еды. + 13 39 мин.
Применять таймер для заполнения фигурами всей площади Canvas-a , при этом удаляя предыдущую созданную фигуру.  Применять рефакторинг кода .
Всё понятно
2019-03-20 00:59 Простой WPF WPF. Простая змейка. Эллипс на канвасе + 17 3 дня 9 час. 21 мин.
Работать с Canvas-объектом, располагать на нём фигуру эллипс с заданием координат и цвета заливки . 
всё понятно
2019-03-12 23:16 Простой WPF WPF. Конвертер валюты. Ньютон против Паскаля. + 13 2 дня 48 мин.
Подключать модуль Newtonsoft, распарсивать набор данных json в отдельный класс . Планирую добавить обратную конвертацию валют.
Разобраться с отработкой десериализатора
2019-03-06 00:58 Простой WPF WPF. Конвертер валюты. Курс валют в JSON. + 15 27 мин.
Интересный урок , так как впервые применяю json + парсер под него . Узнал о способе загрузки информации с внешнего ресурса по url .
всё понятно
2019-03-02 19:29 Простой WPF WPF. Конвертер валюты. Класс конвертации. + 10 40 мин.
Применять созданный класс по конвертации валют. При этом работают два одноимённых метода с различными типами параметров.
ничего
2019-02-27 01:13 Простой WPF WPF. Конвертер валюты. Макет программы + 14 1 час. 1 мин.
Настраивать форму с применением 2х Label-ов и TextBox-ов.
Ничего
2019-02-22 14:08 Entity Framework Добавление - Извлечение + 11 1 час. 8 мин.
Работать с моделью данных, добавляя и считывая необходимую информацию.  Увидел на практике имя сформированного так называемого объекта-заглушки для тех таблиц, к которым пока нет обращений. Лишний раз выполнил команды по миграции изменений модели базы данных. Результатом доволен. Автору большая благодарность за проделанную работу ! 
Разобраться в нюансах подключения к базе SQLEXPRESS
2019-02-18 23:47 Entity Framework Один за всех и Все за одного + 17 35 мин.
На примере локальной базы SQL EXPRESS реализовывать к ней подключение через "Connection String" в App.config , познакомился с различными типами связей между таблицами User, UserDetails, Departments, Roles:  1 : 1, 1 : N, N : M . Оценил эффективность технологии Entity_FW при создании базы данных, в частности автоматизации при создании промежуточных таблиц . Выполнили миграцию простых изменений модели данных .
Разобраться с нюансами подключения программы к SQL EXPRESS 
2019-02-03 13:58 Entity Framework Миграция Базы + 9 20 час. 16 мин.
Включать в проект миграцию БД на момент её обновления (метод UP) и возврата к предыдущей версии (метод Down) . Узнал о Package Manager-e и командах по применению миграции Enable-Migrations/Add-Migration name/Update-Database .  Спасибо за интересный урок !
Много времени ушло на установку и настройку MySQL Server-a для полноценного запуска приложения через VS2015
2019-01-30 01:09 Entity Framework Использование MySQL + 17 29 мин.
Создав очередной проект, установили пакет EF, MySQLData.Entity, указали строку подключения в App.config, добавили класс контекста. При запуске возникает Exception , с которым планирую разобраться по итогу прохождения следующего урока.
попытка подключения MySQL через DataConnection
2019-01-28 00:44 Entity Framework Основные приемы работы с БД через EF + 15 1 час. 40 мин.
Формировать запрос к БД с помощью LINQ , асинхронно получать список юзеров из БД при аутентификации текущего пользователя, узнал о некоторых атрибутах валидации модели : Required, ErrorMessage, MinLength, MaxLength. 
Не смог добиться применения атрибутов валидации Required, ErrorMessage, MinLength, MaxLength при вводе логина и пароля .
2019-01-27 16:13 Entity Framework Подключение БД по методу CodeFirst + 10 1 час. 1 мин.
Установив пакет EF в проекте, добавили Entity Data Model, создали класс модели для юзера и класс инициализатор с добавлением юзера-админа при каждом создании БД . исходя из соглашений по именованию в EF узнал о необходимом формировании первичного ключа с именем Id либо [имя_класса+Id] либо применять спец. параметр [Key] из пространства DataAnnotations .
всё понятно
2019-01-26 18:00 Entity Framework Создание приложения + 15 40 мин.
Провели подготовительные работы по созданию двух форм, основной и авторизации .
Ничего
2019-01-26 17:14 Entity Framework Введение в EF + 13 33 мин.
Узнал об Entity Framework (концептуальная схема, маппинг, схема данных) и возможных 4х подходах разработки : DataBase First, Model First, Code First, Code from DataBase First. В качестве альтернативной ORM можно применять NHibernate .
всё понятно, идём дальше
2019-01-23 23:28 Функционал ФП - ФИНАЛЬНЫЙ УРОК + 18 15 мин.
Отличный получился видеокурс, - короткие но содержательные по контенту занятия . За 4 интересных урока удалось познакомиться с функциональным делегатом Func<> , лямбда - методом , - выражением и  оператором. Узнал о специфике применения Linq метода OrderBy , возможности переопределения функции ToString() с помощью лямбда выражения. Реализовали свой метод Where с отложенным запуском. Вишенкой на торте стало ознакомление с одной из парадигм функционального программирования "Замыканием" - красивое решение, нечего добавить . Спасибо Константину за подачу материала и возможность проверить на практике лямбда-выражения и элементы функционального программирования . Следующим планирую прохождение курса по Entity Framework
Разбираться в нюансах вызова методов Func<Func<>>, определения зон видимости переменных.
2019-01-20 22:45 Функционал ФП - Короткое замыкание + 17 1 час. 36 мин.
Узнал немного о функциональном программировании . Удалось проверить в действии одну из парадигм ФП, "Замыкание" . Эффект от применения впечатляет, несмотря на то, что кода написано было немного . Интерес к дальнейшему изучению ФП появился, -  спасибо большое Константину за подробные объяснения .
Было и пока есть : чётко осознать все нюансы применения лямбда-выражений .
2019-01-17 01:48 Функционал ФП - Свой метод Where + 16 29 мин.
Магия во всей красе : увидел пример формирования универсального метода IEnumerable<T> с отложенным запуском и возможностью задания любого условия обработки. Красивое решение ! 
полностью разобраться в принципе составления такого рода методов с применением лямбда-выражений
2019-01-16 00:36 Функционал ФП - Сортировка списка + 16 37 мин.
Узнал о специфике применения Linq метода OrderBy к списку пользователей users ,  а также возможности переопределения функции ToString() с помощью лямбда выражения . Получился короткий и при этом содержательный код .
разобраться с новой тематикой
2019-01-12 23:20 Функционал ФП - Калькулятор + 10 47 мин.
Познакомился с функциональным делегатом Func<> , создали лямбда - метод , - выражение, - оператор , узнал в чём их отличие .
всё понятно, благодаря автору
2019-01-07 23:38 Секундомер ФИНАЛЬНЫЙ УРОК + 16 6 час. 55 мин.
Научился на время набирать текст программы "Секундомер" с учётом всех предыдущих наработок. Итоговое время набора порядка 14:40 сек. С учётом 30 мин. , потраченных при 1м наборе всего кода, результат был улучшен в 2 раза. Я доволен ).  Следующим планирую проходить курс "Сокобан"
Не упустить важной детали при наборе, иначе код мог не стартануть.
2019-01-06 13:43 Секундомер 5 часть. Видеофиксация + 9 23 мин.
Запись видео пятой части проекта с первой попытки далась за 05:34 сек. Считаю хорошим для себя результатом
ничего
2019-01-05 15:40 Секундомер 5 часть. Пункты 240 – 273 + 10 2 час. 43 мин.
Лучший результат по пятому подходу 05:16 сек. Добился относительно быстрого набора кода 2х методов AddNoteToGrid() и SaveNoteToFile()
идём дальше
2019-01-02 23:58 Секундомер 4 часть. Видеофиксация + 20 35 мин.
На 4ю часть, более ёмкую по сравнению с предыдущими, потребовалось 4 мин. 15 сек. Есть куда стремиться .
Безошибочно и быстро набирать код
2019-01-01 23:54 Секундомер 4 часть. Пункты 200 – 239 + 22 1 час. 53 мин.
Очередная часть программы заняла больше времени. чем предыдущие : 04:58 лучший результат из 10ти попыток . "Набил" руку при написании функций Start/StopTimer() .
Многократно улучшать свои результаты по времени, не допуская ошибок.
2019-01-01 21:20 Секундомер 3 часть. Видеофиксация + 14 23 мин.
На 3ю часть программы потребовалась 1мин 40 сек.
не допускать ошибок при 1й записи
2018-12-31 21:23 Секундомер 3 часть. Пункты 150 – 172 + 17 47 мин.
Отличный получился урок. Первый набор действий был под "диктовку", остальные уже по памяти набирал. Научился быстро настраивать опр-ые параметры DataGridView . Результаты тому подтверждение. Считаю данного рода уроки полезными, так как позволяют за счёт многократного повтора выработать привычку быстрого оформления программы .
ничего
2018-12-27 01:49 Секундомер 2 часть. Видеофиксация + 14 26 мин.
При записи видео понадобилось 02:40 сек. на выполнение всех шагов . Первая попытка под запись - для начала неплохо .
Последовательно пройти все этапы и ничего не пропустить .
2018-12-26 00:29 Секундомер 2 часть. Пункты 120 – 145 + 15 1 час. 27 мин.
На данном уроке смог наработать скорость (лучший результат 02:02) при последовательном оформлении десяти одинаковых программных "заготовок" . Проще стало работать с настройкой объектов Label / Textbox / Button 
Не забыть о каком-либо из настраиваемых параметров 3х объектов (Label / Textbox / Button)
2018-12-21 00:01 Секундомер 1 часть. Видеофиксация + 13 53 мин.
Записывать видео процесса создания программы за 01:42 . Хороший , наглядный урок.
Ничего
2018-12-15 12:26 Секундомер 1 часть. Пункты 100 – 113 + 13 45 мин.
После 12 повторных наборов кода смог добиться результата в 54 сек. Отработал скоростное указание иконки для проекта по двойному нажатию на свойства проекта Properties . Урок понравился, - появился своего рода азарт набирать быстрее . 
не делать лишних движение и нажатий мышкой
2018-12-14 00:20 Секундомер Написание кода + 15 1 час. 1 мин.
Работе с обработчиком таймера, закрытия формы,  написаны методы StartTimer(), StopTimer(), SaveNoteToFile(), AddNoteToGrid() . Урок получился довольно интересным и последовательным .
идём дальше
2018-12-13 00:21 Секундомер Настройка формы + 18 48 мин.
Работе с формой, элементами Label, TextBox, Button, DataGridView и Timer . Подача материала понравилась, всё чётко и по существу ) .
Ничего
2018-12-11 22:28 Секундомер Моральная подготовка + 16 14 мин.
Думаю полсотни программ наберётся , последняя - финальная часть RunGame ("Теория ООП") за 30 мин. , программирую для саморазвития и последующего стабильного заработка, занять себя чем-то полезным и интересным в свободное время ) .  Мешает лень, недостаточный уровень знаний , отсутствие чёткого плана действий , постоянной мотивации . Для решения проблемы надо докопаться до своей сути и ответить на вопрос, "Зачем мне нужно программирование ?!?"

2018-12-10 01:37 Теория ООП Интерфейс. VIP. Тяжёлая дружба кругов и квадратов. + 17 23 мин.
За счёт нового класса Crosser удалось зафиксировать пересечения объектов от разных классов. Пример показателен тем, что реализация возможна, но в данном случае не оправдана .
Не смог добиться стабильности работы кода при обработке пересечений фигур с объектами Box .
2018-12-07 23:18 Теория ООП Интерфейс. VIP. Пересечение прямоугольников. + 15 34 мин.

Метод Box.Поймал оставил без изменений, добавили метод Arena.Show (Игрок obj) и совместное отображение двух классов фигур на арене : Circle и Box .
всё понятно
2018-12-07 00:18 Теория ООП Интерфейс. VIP. Квадратики тоже хотят играть. + 15 3 час. 25 мин.
Добавили класс для новых фигур-игроков , реализующих интерфейс "Игрок" со всеми его методами .  Метод "Поймал" для Box-a содержит анализ взаимного расположения соответствующих координат левого верхнего ( lt ) и правого нижнего ( rt ) углов двух прямоугольников . В итоге мы понимаем, есть ли взаимопересечение между фигурами либо же нет . 
Реализовать метод "Поймал" для Box-a
2018-12-06 01:10 Теория ООП Интерфейс. ФИНАЛЬНЫЙ УРОК. + 16 36 мин.
Реализовали метод по нахождению FindNewVirus() нового вирусного объекта с добавлением в список virused и сбросе SetNewVirus(Игрок) "настроек" игры, т.е. обнуление списка virused для продолжения работы алгоритма GameVirus() . Итоговая картинка застывшей композиции вирусных фигур, а также завораживающее, бесконечное распространение вируса произвело яркое впечатление . Могу сказать, что кульминация превзошла мои ожидания, - игры получились яркими и незабываемыми . Также впечатлила лёгкость и скорость добавления новой игры на базе общего интерфейса поведения игроков . Здорово !!!  Следующим планирую прохождение курса "Секундомер" .   
Был лишь восторг )
2018-12-06 00:02 Теория ООП Интерфейс. Создаём новую игру. + 16 2 час. 13 мин.
Добавили класс арбитра новой игры GameVirus : реализовали его конструктор , методы AddGAmer(), Step(), RunAll() . SetNewVirus(Игрок) обнуляет список virused , проходит по всему списку игроков и назначает их НеГоля, а одного gamer-a выбирает Голей и добавляет в список virused. FindNewVirus () через два вложенных цикла перебирает из списка virused пересечения фигур со элементами списка gamers . Если таковые есть, то gamer-a назначаем Голей и заносим в virused 
Описать метод FindNewVirus()
2018-12-05 21:49 Теория ООП Интерфейс. Изменяем правила игры. + 11 25 мин.
Добавили задержку по времени после передачи эстафеты лидером и протестировали игру по новым правилам. С учётом описанных в интерфейсе действий игроков на ум приходит игра змейка, в которой есть лидер, ведущий за собой остальных : т.е. лидер при столкновении с опр. объектом увеличивает свою длину, добавляя за собой очередную фигуру. Двигаясь в границах арены и увеличиваясь в длине нельзя пересекаться со своим хвостом, - в этом случае игра будет окончена.
всё ясно
2018-12-04 23:58 Теория ООП Интерфейс. Кружочки гоняются друг за другом. + 16 1 час. 38 мин.
На данном уроке, добавив в форму класс game (на базе GameCatch() ), таймер для реализации перемещения фигур по арене - смогли увидеть сам игровой процесс, с учётом заданных правил для Игрока. В процессе отладки исправили ошибку в методе Arena.FindNewLeader() .  Недочёт с переголением думаю разрешить с помощью фиксирования Игрока, который был только что Голей и передавать эстафету отличному от бывшего Голи игроку.
Найти вариант исправления недочёта с переголением
2018-12-03 22:47 Теория ООП Интерфейс. Кружок готов к игре! + 17 1 час. 27 мин.
Реализовали методы Беги() и Поймал() с учётом расстояния между центрами окружностей (метод Cross() и Distance()) . Для запуска игры надо задать определённое кол-во игроков, назначить одного из них Голей (красным цветом, остальных синим ), потом рандомно менять смещение sx, sy  по каждой фигуре приводя их в движение по арене . Во время движения фигур находим те, которые были пойманы Голей и меняем их цвет на красный .
Разобраться с реализацией указанных выше методов
2018-12-02 21:33 Теория ООП Интерфейс. Кружок хочет играть. + 13 49 мин.
Наследовали класс игрока Circle от интерфейса "Игрок" через реализацию методов интерфейса : "Голя", "НеГоля", "Поймал" и "Беги" . Метод  "Беги" подразумевает перемещение игрока по арене, поэтому логично изменять координаты центра Circle посредством sx и sy . Метод  "Поймал" должен фиксировать момент "ловли" между Голей и НеГолей, т.е.  если расстояние между центрами фигур данных игроков будет равно диаметру Circle. 
Продумать вариант реализации метода "Поймал".
2018-12-01 18:17 Теория ООП Интерфейс. Запускаем кружки на площадку! + 13 28 мин.
Навели марафет формы, добавили PictureBox для отображения арены, кнопку buttonAddGamer для добавления нового игрока . В основной форме производим вызов методов Арены. 
всё понятно
2018-12-01 17:31 Теория ООП Интерфейс. Кружок на площадке. + 12 37 мин.
Создали оставшиеся методы Show(Circle) - отображение круга,  Refresh() - обновление арены.
всё ясно
2018-12-01 00:27 Теория ООП Интерфейс. Площадка для игры. + 16 45 мин.
Создавать поле для отрисовки будущих фигур, узнал об особенностях доступа к статичным полям.
ничего
2018-11-30 01:08 Теория ООП Интерфейс. Создаём кружок. + 17 1 час. 17 мин.
Создали класс Circle с конструктором, принимающем координаты центра и радиус.  Для отображения данного объекта на форме надо задействовать элемент PictureBox, инициализировать графику Graphics в классе Circle, применить DrawEllipse(pen, center.X, center.Y, width, height) . Проинициализировав в форме объекты Bitmap и Graphics , можно вызвать класс Circle с указанием координат центра и радиуса, задействовать Circle.Setgraphics + Circle.Draw и вывести фигуру через PictureBox.Image (). 
всё понятно
2018-11-28 23:17 Теория ООП Интерфейс. Алгоритм игры. + 15 22 мин.
Находить нового лидера в игре через методы FindNewLeader ( ) / SetNewLeader ( ) . Для начала игры необходимо реализовать методы поведения игрока интерфейса "Игрок" в наследуемых классах игроков. 
всё понятно
2018-11-27 23:51 Теория ООП Интерфейс. Правила игры. + 16 1 час. 10 мин.
Расширяем функционал программы за счёт класса-поведения самого игрока : добавление нового игрока, выявлению нового лидера, запуск игры .  SetNewLeader(gamer) содержит вызов метода Игрок.Голя(), чтобы явно назначить нового лидера.  В FindNewLeader() в двойном цикле определяем кого же поймали и в случае его нахождения вызываем SetNewLeader(gamer)
понадобилось время для составления алгоритма поиска нового лидера
2018-11-26 23:21 Теория ООП Интерфейс. Зачем он нужен. + 15 24 мин.
Определение интерфейса на примере обычной игры "Салки" - своего рода свод правил поведения (игры) . 
всё понятно
2018-11-26 22:57 Теория ООП ПОЛУФИНАЛЬНЫЙ УРОК. + 15 22 мин.
1я часть курса получилась довольно насыщенной и интересной. За это время узнал более подробно о 3х принципах ООП ("инкапсуляция", "наследование", "полиморфизм"), методах прорисовки линий с помощью Bitmap, Graphics и Pen , окружности и прямоугольника с помощью DrawEllipse() и Box(), работе со структурой и цветом, формировании и отображении группы фигур ("спрайтов"), работе с абстрактным и виртуальным методами . На протяжении всех уроков программный код постоянно сокращался, но при этом лишь добавлялась его универсальность и функциональность.  Калязин Денис .
Реализовать метод перемещения всего спрайта
2018-11-25 19:25 Теория ООП Перемещение Снеговиков + 8 1 час. 38 мин.
Переназначать виртуальную функцию : в прошлом уроке как раз этой возможности не хватало .  Вернули отображение и выполнили смещение группы фигур, - снеговиков.
всё понятно
2018-11-25 17:46 Теория ООП Перемещение других фигур + 12 3 час. 0 мин.
Продолжаем оптимизацию кода : дополнен метод отрисовки фигур Draw() с привязкой к смещению по координатам (x, y) . Для перемещения всего спрайта по кнопке необходимо в [Sprite] проинициализировать значение [position] в каждом [Shape]-e и уже потом вызывать метод Draw() 
реализовать метод перемещения всего [Sprite]-a
2018-11-24 12:47 Теория ООП Перемещение круга + 12 33 мин.
Изменять положение фигуры относительно определённой точки на экране , при этом разделяя общее начало координат (0, 0) и координаты точки, относительно которой выполняется отрисовка фигуры. 
всё понятно
2018-11-23 00:58 Теория ООП Спрайт для Снеговика + 19 46 мин.
Создавать класс, содержащий список рисуемых фигур (коллекция List<>) и перегруженный метод по их отрисовке Draw() . После данных изменений значительно сократился код в основном классе отображаемой формы.
Ничего
2018-11-21 23:35 Теория ООП Мощь полиморфизма + 16 29 мин.
Применять механизм полиморфизма override для метода рисования Draw() каждой фигуры. В итоге удалось существенно сократить код и пошагово проконтролировать механизм полиморфизма.  Довольно интересный получился урок, спасибо !
Охватить полученные изменения в коде
2018-11-21 01:44 Теория ООП Переезд graph в базовый класс + 18 52 мин.
Выполнили дальнейшее упрощение кода и перенесли некоторые функции в абстрактный класс Shape. Переделали вызовы методов  SetGraphics() и SetPen(), поместив в цикл. Для цветных фигур задействовали базовые классы Line, Circle, Box с добавлением инициализации карандаша в соответствующих конструкторах данных классов + Shape.
По итогу урока охватить все выполненные в коде изменения
2018-11-20 01:18 Теория ООП Переезд метода Draw + 16 32 мин.
Продолжаем оптимизировать код . Перенесли метод Draw() по рисованию окружности непосредственно в класс Circle.
всё понятно
2018-11-18 22:24 Теория ООП Приведение с мотором + 13 26 мин.
Реализации методов Draw (Shape shape) - прорисовка отдельных фигур, Draw (Shape[] shapes) - прорисовка массива фигур (спрайтов). Считаю, что "position" будет играть роль начала координат для отрисовки фигур, относительно которого будет проще изменять их расположение  и размеры.
всё понятно
2018-11-18 01:16 Теория ООП Фигуральный базовый класс + 18 1 час. 11 мин.
Компоновать разные сущности, в данном случае фигуры,  в один массив абстрактных классов. При этом сократился метод Draw() для рисования фигур. Реализовал функцию Draw (Shape shape) через switch-case и приведение типов.   
Реализовать Draw (Shape shape)
2018-11-17 17:34 Теория ООП Богатое наследство + 11 1 день 18 час. 10 мин.
Применять наследование классов на практике, при этом минимизируя кол-во повторяющегося кода. Наследование само по себе уже подразумевает передачу характерных свойств родительской сущности к дочерней. В данном случае мы получаем доступ к функционалу родительского класса со стороны наследуемого .
всё предельно ясно
2018-11-14 23:23 Теория ООП Второй Снеговик + 13 45 мин.
Создавать разноцветную копию сложной фигуры, "снеговика". Для перемещения/поворота/изменения размеров "снеговика" необходимо координаты точек, по которым строились фигуры, привязать к переменным . И в зависимости от требуемого действия, менять их пропорционально .
ответ на вопрос
2018-11-13 23:53 Теория ООП Рисуем Снеговика + 15 45 мин.
Создавать сложную фигуру на базе простых по координатам контрольных точек .
Ничего
2018-11-12 23:36 Теория ООП Цветные карандаши + 14 51 мин.
Создавать цветные фигуры за счёт соответствующих классов . Увидел на примере ситуацию, при которой программу тяжело масштабировать дальше.
всё понятно
2018-11-11 23:34 Теория ООП Расстояние между пикселями + 13 1 час. 30 мин.
Рисовать окружность по заданным координатам её центра и любой точки прохождения, создав необходимый метод в структуре . Красивое решение . Особенно впечатлило уменьшение строк кода в конструкторе Circle после создания метода в структуре .
Всё понятно
2018-11-11 12:08 Демо софт VIP. Бесплатная консультация + 15 8 мин.
Первоначально не планировал проходить консультацию, так как были и есть претензии к себе в плане управления свободным временем, мотивацией . НО, благодаря инициативе Евгения Витольдовича, после консультирования были выбраны оптимальные видеокурсы и оговорен дедлайн, к которому необходимо дойти ) . Поэтому господа, всячески рекомендую воспользоваться возможностью пообщаться с Игромистром, получить действенный совет или "волшебный пендаль" - и в добрый путь, прокачивать навыки программирования ) !       

2018-11-10 23:59 Теория ООП Пиксели для классов + 13 2 час. 15 мин.
Применять объявление структуры в классе каждой фигуры и исключать повторяемый код в конструкторах классов . Красивое решение и код стал намного компактнее .
Охватить все изменения по классам фигур с учётом применения структуры Pixel
2018-11-10 21:43 Теория ООП Структура vs Класс + 11 21 час. 54 мин.
Отличный урок, на практике демонстрирующий отличие структуры от класса. Понял как работать со "значимым" типом данных (value type) при передачи значения переменной в явном виде либо через ссылку (ref). Узнал о модификаторе вывода "out", о том, что структуры не наследуются (кроме интерфейсов), соответственно нельзя определить виртуальные члены, дефолтный конструктор и деструктор. Память для структуры выделяется в стеке, а не на куче . 
Сложностей не было , спасибо за подробное объяснение
2018-11-08 23:32 Теория ООП Структура пикселя + 14 37 мин.
Работать со структурой, дополнительными конструкторами классов.
всё довольно понятно
2018-11-07 23:02 Теория ООП Круглый класс + 14 24 мин.
Повторно создали класс фигуры, а именно окружности с указанием координат левого верхнего угла, ширины и длины. 
Не было
2018-11-06 23:48 Теория ООП Второй класс + 15 34 мин.
Отличный урок, на практике было показано в каких случаях применяется наследование. 
идём дальше
2018-11-05 23:56 Теория ООП Первый класс + 13 22 мин.
Созданию отдельного класса с конструктором и функции Init, для удобства рисования линий по заданным координатам.
Всё понятно, идём дальше.
2018-11-04 00:25 Теория ООП Урок рисования + 17 23 мин.
Настройке компонента формы PictureBox , прорисовке линий с помощью Bitmap, Graphics и Pen.
идём дальше
2018-11-03 00:05 Теория ООП Инкапсуляция мечты + 18 30 мин.
Узнал более подробно об одном из принципов ООП, "инкапсуляции" - своего рода "чёрный ящик", в котором неразличима реализация, но известен его функционал. К примеру управление автомобилем : поворачивая руль мы направляем авто в нужном направлении, не задумываясь о том, как это реализовано под капотом. 
Всё только начинается
2018-10-28 23:37 Демо игры VIP. Бесплатная консультация + 12 4 мин.
Здорово, что есть возможность проконсультироваться как таковая. На данный момент решил этого не делать, - потому как больше вопросов к себе, чем к Игромистру  ) . 

2018-10-27 18:59 Демо игры VIP. Устный счёт + 14 9 дней 19 час. 44 мин.
Работе с настройками различных элементов формы , составлению алгоритма работы программы при различных арифметических операциях
Ничего . Добавил операцию нахождения квадратного корня, таймер при выполнении счёта (мах = 59:59), вывод текстового сообщения при неудачной попытке.
2018-10-16 23:30 Демо игры ФИНАЛЬНЫЙ УРОК + 15 19 мин.
Калязин Денис . Пройдя 7 уроков по "Демо играм" получил представление о работе с настройками рабочей формы, её медиаконтента, обработке событий (нажатий кнопок мышки и клавиатуры ). Каждая из игр запомнилась своим оформлением, несложным как оказалось алгоритмом, возможностью различных доработок . Довольно интересная и познавательная получилась подборка игровых программ, - за что отдельное спасибо автору ! Следующим планирую пройти курс по написанию игрового комплекса "Сокобан" . 
При написании "Бот для Быстрощёлка"  долго не мог разобраться с отсутствием события нажатия мышки ( метод DoMouseClick() ) под Windows 10 . Как оказалось, сам автокликер необходимо запускать с правами администратора . 
2018-10-15 22:58 Демо игры Камень ножницы бумага + 14 15 дней 2 час. 27 мин.
Составлению алгоритма игры "Камень-Ножницы-Бумага" с разбивкой на отдельные методы , применению таймера и работе с элементами оформления.
Сложностей не было .
2018-09-29 19:09 Соло на клавиатуре 40 уроков + 18 4 мин.
По мере прохождения уроков сложность постепенно возрастает, и время их прохождения возросло соответственно . В любом случае продолжаю двигаться дальше, - интересно сколько пройду до конца Марафона  . 
сохранять спокойствие и самообладание, не переживать при "очепятках" .
2018-09-29 19:04 Соло на клавиатуре Мы начинаем СОЛО Марафон + 18 9 мин.
Успешно зарегистрировался на сайте СОЛО и начал прохождение Английского курса . До этого (давно это было),  проходил Русский курс , но не довёл до  победного . Данный Марафон уже интересен тем, что есть спортивный интерес + достижение навыка слепого набора .
ничего
2018-09-24 23:38 Демо игры Бот для Быстрощёлка + 16 14 дней 5 мин.
Написанию бота по нажатию мышки в определённом месте экрана и при заданных условиях . В очередной раз вспомнил как применяется таймер и оформляется интерфейс рабочего окна. Интересный бот получился , тем более что вариантов его применения довольно много .     
Долгое время не мог разобраться с отсутствием события нажатия мышки ( метод DoMouseClick() ) под Windows 10 . Как оказалось, сам автокликер необходимо запускать с правами администратора .
2018-09-23 22:34 Дневник успеха 2018-09-23 : Много спать – дело не знать. + 13 2 мин.
 

2018-09-07 23:59 Демо игры Игра Быстрощёлк + 19 1 день 3 час. 44 мин.
Обработке событий Click и Mouse Down по нажатию кнопки мыши, работе с Label-ами и пунктом меню . Причём одновременная обработка событий мышки даёт более ощутимые результаты по скорости нажатий в секунду . Программка оставила приятное впечатление .
ничего
2018-09-05 23:58 Бинарная жизнь VIP урок. Игра Жизнь + 18 6 дней 8 час. 13 мин.
Узнал о существовании замечательной игры, познакомился с методикой динамического программирования. По итогу написания алгоритма долго наблюдал за всевозможными комбинациями развития виртуальной жизни на поле - завораживающее зрелище .
Осознать методику подсчёта существ вокруг заданной клетки (around2), разобраться в общей последовательности отработки методов программы . 
2018-08-29 00:21 Бинарная жизнь Максималка + 20 22 мин.
Механическому набору числа int . Подходов надцать было . В итоге часто ловил себя на том, что цифры набираются автоматом ), - незабываемое ощущение. Из-за монотонности и постоянного напряжения очень тяжело без ошибок завершать набор. В итоге нашёл свою золотую середину по более-менее стабильному безошибочному набору. Кто читает и  ещё в процессе прохождения Максималки 2 - УДАЧИ , ибо попотеть придётся! :) 
Совладать с терпением и усталостью пальцев.
2018-08-15 00:14 Демо игры Лабиринт 2D - игра + 15 3 дня 8 час. 23 мин.
Создавать отдельные формы-уровни игры, последовательный алгоритм перехода на следующие уровни .
Разобраться, почему курсор не отображался в нужном месте при первом вызове level_3 )
2018-08-12 22:43 Дневник успеха 2018-08-12 Отчёт за неделю + 16 31 мин.
1. Решал ежедневно по одной консольной задаче . Не все самостоятельно , приходилось обращаться за помощью ) . Понравились задачки с отрывным календарём, временами годами на немецком, определения високосного года.
2. 4 раза проходил "Максималку 2" (число int 500 раз) - при 1й попытке было 18 ошибок, потом 5, 4 и 3 (155 сим./мин) . Так что продолжаю мучать клаву, так как ранее запланировал пройти "Бинарную жизнь".
3. По видеоурокам не густо, всего 2 за выходные . Пока такой темп, - в будущем планирую нарастить.
4. Потихоньку привыкаю к слепому набору : на данный момент где-то 50 сим./мин
5. Исходя из предыдущих планов : 1. Завершить видеокурс "Наноигр" 2. Завершить видеокурс "Бинарная жизнь" 3. Больше практиковаться , полноценно ничего не выполнил. До "Наноигр" не дошёл, т.к. зациклился на "Максималке 2" и в итоге набрал по ней 70% . По поводу практики - одна консольная задача в день , тоже маловато .
6. Поэтому на след. неделе планирую добить "Максималку2" , выполнить больше 2х видеоуроков и таки добраться до финиша "Наноигр". 
 
Максималка 2 - ещё то испытание. Тяжело под конец набора сохранять самообладание и внимание , так как банально пальцы устают и терпение от однообразного набора лопается !
2018-08-05 17:56 Дневник успеха 2018-08-05 Отчёт за неделю + 18 20 мин.
1. Познакомился с обязанностями и правами формулистов на данном проекте.
2. Решил несколько консольных задач. Понравилась функция по работе со строками Split и регулярные выражения Regex .
3. Дошёл до финального урока "Наноигр"
Сравнивать факты пока не с чем, так как это моя 1я неделя в клубе. 


Планирую :
1. Завершить видеокурс "Наноигр"
2. Завершить видеокурс "Бинарная жизнь"
3. Больше практиковаться
2018-08-05 16:57 Бинарная жизнь ФИНАЛЬНЫЙ УРОК + 19 23 мин.
Благодаря этому курсу лишний раз задумался о главном, - смысле нашей жизни .  Понял, что повышая уровень нашего мировоззрения и осознанности можно прийти к пониманию и принятию себя в этом огромном мире с дальнейшим осознанным изменением наших привычек к лучшему или худшему :) - бинарная жизнь это ярко продемонстрировала . Лишний раз убедился, - что жизнь прекрасна во всех своих проявлениях !  Всем - достижения умиротворения и полного счастья ) !

По поводу следующего курса ещё не определился, надо по-хорошему закрыть хвосты по незавершённым  .
-=-
2018-08-04 21:21 Нано-игры Бот для Цифр + 19 1 день 21 час. 58 мин.
Создавать универсальный автокликер, работающий по заданным координатам . Довольно удобная функция в случае повторяющихся ежедневных действий юзера : автологина в системе, иммитация присутствия на рабочем месте ) .
Пока ничего .
2018-08-01 00:02 Демо игры Лабиринт 2D - меню + 16 1 час. 0 мин.
Настройке формы, работе с медиафайлами и рисунками в качестве ресурсов, управлению звуком в качестве созданного программного переключателя..
Ничего
2018-07-31 21:03 Демо игры C# чего начать программировать + 17 24 мин.
Мотивированно прокачивать навыки программирования, для начала С# . Получить больше практики и соответственно необходимого опыта для дальнейшего роста. Писать качественный код . 

2018-07-26 23:28 Нано-игры Игра Цифры + 19 2 час. 35 мин.
Создавать меню на форме и настраивать его пункты, работать с различными свойствами кнопок , функцией Random ().
Не было сложностей
2018-04-19 00:09 Шпионский бот Процессуальный кодекс + 22 1 день 53 мин.
Отличный урок . Узнал о функциях по работе с процессами : получения списка активных процессов, принудительное завершение процесса и запуск приложения. Спасибо большое за урок !
Ничего
2018-04-14 00:12 Шпионский бот Летучая фотография + 21 1 час. 10 мин.
Применять универсальную процедуру для отправки скриншота экрана, сжимать фото, изменять размеры фото по заданным значениям либо кратно коэффициенту . 
Ничего
2018-04-08 11:53 Шпионский бот Фото в студию + 20 3 дня 11 час. 20 мин.
Создавать метод формирования POST-запроса по отправке jpg-файла с компьютера на определённый URL. Интересный урок, - много новой информации для изучения .
Разобраться с алгоритмом формирования POST-запроса.
2018-04-03 23:44 Шпионский бот Посмотри что я натворил + 20 1 час. 25 мин.
Построчно считывать данные из файла с последующей их обработкой. Защищать данные Бота посредством "инъекций". Выводить последние 10 строк лога .
Ничего
2018-04-02 23:43 Шпионский бот Логировали, логировали да не вылогировали + 18 1 день 7 час. 54 мин.
Логировать входящие сообщения в форму и в файл. Аналогичным образом можно логировать ответы бота .
Ничего
2018-04-01 15:47 Шпионский бот Ну что сказать Вам, Господа... + 21 1 день 16 час. 6 мин.
Привязывать таймер к алгоритму работы бота, разделять функционал программы на универсальные методы, парсить сообщение от пользователя к боту. Для защиты от нежелательных пользователей предлагаю фильтровать сообщения по user_id + username, либо организовать "секретный" чат. 
Ничего
2018-03-31 21:37 Шпионский бот Телеграммировать + 20 1 день 20 час. 46 мин.
Конвертации Unix даты и отработке методов через адресную строку и программно (отправка сообщения от бота).
Ничего
2018-03-30 00:51 Шпионский бот Вам телеграмма! + 19 2 час. 1 мин.
"Парсить" Json структуру с помощью специализированных сайтов, отправлять сообщение от имени Бота.
Ничего
2018-03-29 00:14 Шпионский бот Авторазбор в действии + 17 1 час. 40 мин.
JSON - универсальные структуры данных, на базе JavaScript, для обмена информацией.  Научился подключать библиотеку Json в проект, получать в виде класса входящее для тестового бота сообщение, добавлять описание для формируемых полей Json .
Ничего
2018-03-28 22:27 Шпионский бот Хочу новости + 18 1 день 20 мин.
Программно обращаться к боту : getMe, getUpdates, getLastUpdate .
Определение последнего update_id
2018-03-27 22:06 Шпионский бот Кто я? + 21 14 час. 28 мин.
Выбирать и настраивать бота через функционал Telegram-a (description, about, avatar, deletebot).
Ничего
2018-03-27 00:05 Шпионский бот Здесь Ботов раздают? + 18 1 час. 14 мин.
Регистрации в сети Telegram + создание нового бота . Сферы применения ботов различны : выборка из новостных лент и уведомления, интеграция чата с другими сервисами, приём оплаты от других пользователей Telegram, виртуальный магазин, создание специализированных сервисов (напоминалки, прогноз погоды, курсы валют, переводчики и т.п. ), одно- и многопользовательские игры, организация соц. сервисов .
Ничего
2017-09-09 20:43 Yii2 Model - Модели на подиуме + 16 30 мин.
Узнал о предварительном составлении схемы будущих моделей, существовании паттерна "Active Record", двух видах применяемых моделей в Yii .
ничего
идём дальше
2017-09-09 14:10 Yii2 Panel - Красивые анкеты + 16 30 мин.
Начальнному оформлению страниц
Ничего
Идём дальше
2017-09-07 23:11 Yii2 User - Помещение регистратуры + 16 30 мин.
Создавать в первую очередь тесты , а потом уже на базе результатов тестирования соответствующий код (в данном случае контроллер).
ничего
идём дальше
2017-09-07 00:05 Yii2 Debug - Следы на песке + 16 40 мин.
Подключать подробнейшую систему трассировки с отображением ошибок, предупреждений и информативных сообщений.
Ничего
Модуль трассировки впечатлил . Учитывая, что это лишь небольшая часть возможностей фреймворка Yii, интересно что будет дальше .
2017-08-23 23:59 Yii2 Join/login - Полёт Навигатора + 16 30 мин.
Корректировать отображение адресной строки, добавлять параметры для apache и очередные представления .
ничего
идём дальше
2017-08-23 23:26 Yii2 Menu - Богатый выбор + 16 20 мин.
Добавлять новые пункты меню.
работа с синтаксисом php
идём дальше
2017-08-21 23:47 Yii2 Bootstrap - Пусть будет красиво! + 16 1 час. 00 мин.
Подключать и применять bootstrap в проекте, решать вопрос несоответствия директории "vendor/bower", работать с div-ом.
Ничего
Спасибо за подробные разъяснения.
2017-08-20 16:28 Yii2 Codeception - Пошаговое тестирование + 16 1 час. 00 мин.
Устанавливать пакет по формированию различных тестов (в данном случае применяем acceptance). Формировать и применять тесты для проверки корректности кода
При первом запуске не отрабатывали тесты. Как выяснилось, надо было изменить путь в ...\school\tests\acceptance.suite.yml на url: http://localhost (без /myapp).
пока всё предельно ясно
2017-08-20 11:31 Yii2 Views - Представления начинаются + 16 30 мин.
Ознакомился со схемой построения и дальнейшего веб-отображения представлений (views), системой отображения ошибок (debuging)
ничего
идём дальше
2017-08-19 22:20 Yii2 Controller - Точка входа программиста + 16 40 мин.
Создавать простой контроллер на базе веб-контроллера, просматривать git log изменений проекта. Ознакомился с общей схемой жизненного цикла веб-приложения.
Ничего
идём дальше
2017-08-15 23:59 Yii2 Composer - Установка пустоты + 16 30 мин.
Устанавливать нужные пакеты в консоли , получать токены через GitHub, создавать index.php
ничего
идём дальше
2017-08-15 01:01 Yii2 Git - Все ходы записываются + 16 20 мин.
Настраивать проект в PhpStorm, выполнять коммиты определённых файлов .
ничего
идём дальше
2017-08-15 00:13 Yii2 Web - Первый кирпич сайта + 16 15 мин.
Выполнять предварительную настройку OpenServer-a,  запускать php-сервер в консоли с указанием номера порта и рабочего каталога
ничего
идём дальше
2017-08-14 23:40 Yii2 Soft - Вступление и подготовка + 16 30 мин.
Установке необходимых для создания проекта программ.
ничего
идём дальше
2017-05-08 18:48 Нано-игры Скорость реакции. Алгоритм и рекорд + 16 1 час. 30 мин.
Работе с таймером, применять одно и то же событие для нескольких элементов формы сразу, некоторым аспектам WinForm и WPF .
ничего
Интересный урок. Решил реализовать данный проект под WPF, с учётом его возможностей по оформлению . Что интересно, среднее время реагирования под WPF-интерфейсом оказалось больше, чем под WinForms. 
2017-04-25 15:58 Нано-игры Скорость реакции. Три картинки по таймеру + 1 30 мин.
Оформлению интерфейса будущей программы + задействованию таймера.
Ничего
Спасибо за урок , идём дальше .
2017-04-24 22:59 Нано-игры Скорость реакции. Блок-схема + 16 30 мин.
Составлять блок-схему будущего алгоритма, выделять основные элементы программы и очерёдность их взаимодействия.
Ничего
Отличный урок .
2017-04-17 22:58 Нано-игры Арканоид - Шарик и кирпичики + 1 1 час. 30 мин.
Алгоритмам перемещения и отскока шарика от ракетки, алгоритму выбивания кирпичика. В плане доработки интерфейса - решил реализовать его с помощью WPF : на втором рисунке видны его возможности в плане оформления по сравнению с Windows Form. Однако не всё так просто в плане отслеживания координат перемещаемых объектов в окне : занимаюсь изучением данного вопроса.
Ничего
Хороший урок, - интуитивно понятный и есть где разбежаться в плане доработок.
2017-03-31 23:55 Нано-игры Арканоид - Уровень и ракетка + 17 1 час. 00 мин.
Создавать заглавную форму. Применять кнопки и лейблы для оформления формы будущей игры. Реализовывать алгоритм перемещения ракетки относительно координат боковых стенок.
ничего
идём дальше
2016-11-15 09:08 Коллекция графов ФИНАЛЬНЫЙ УРОК + 20 30 мин.
Познакомился с применением на практике различных коллекций (ArrayList, List, ListDictionary, Hashtable и HybridDictionary), а также их встроенных методов . Выяснил, что по скорости обработки различных комбинаций большого кол-ва эл-ов ListDictionary на порядок уступил по времени отработки двум другим классам : Hashtable и HybridDictionary, которые показали практически одинаковые результаты . Применять битовый массив BitArray, а также некоторые его методы на практике . Получил представление о графе и его разновидностях, методах представления,  применять русские названия методов , перечисление , узнал об итераторах (yield return). Формировать граф в виде шахматной доски либо опр-ой формы и выводить его на экран с последующим поиском пути Вширь и Вглубь . При этом узнал о специфике применения foreach() и HashTable().
При выполнении самостоятельных заданий определиться с вариантом хранения графа { цвета вершин, смежные вершины }, найти причину возникновения Exception-a при отработке foreach() и HashTable(), разобраться с общей логикой работы программы.
Хочу от всей души поблагодарить за коллекционный курс графопостроения ) ! Материала для применения и размышлений - более чем ! После данного курса планирую закончить "Бинарная жизнь" и переключиться на курсы "Игра Сокобан", "Графоциклы",  "Итератор" . Конечно же в планах пройти все предложенные курсы на данный момент - главное двигаться дальше .
2016-11-15 08:26 Коллекция графов Глубокий алгоритм + 20 20 мин.
Применять алгоритм поиска пути вглубь . Узнал для каких целей его применяют.
Ничего
Спасибо большое за урок .
2016-11-13 22:38 Коллекция графов Глубокий поиск + 21 1 час. 30 мин.
Проработке алгоритма поиска вглубь на примере различных графов.
Ничего .
Спасибо за задание - пришлось немного пофантазировать .
2016-11-12 23:32 Коллекция графов Визуализация процесса + 20 30 мин.
Применять делегат для окрашивания вершин графа .
Ничего
Предлагаю заменить panel1.Refresh() + ConnectLabels() на list[nr].Refresh() - то же самое но без морганий ) .
2016-11-12 11:30 Коллекция графов Широкий пошаговый ход + 20 1 час. 00 мин.
Пошаговой проработке алгоритма поиска вширь, окрашиванию меток (Label) - они же вершины графа : для этого передаю список вершин list<Label> в конструктор класса ПоискВШирь(Граф граф, List<Label> list) и применяю свойство "Backcolor" списка меток "list", создав отдельно функцию Окрашивание(int номер_вершины, Color цвет_вершины) 
Разобраться в алгоритме окрашивания вершин графа.
Здорово было вникать в суть окрашивания, используя уже подготовленную базу .
2016-11-06 02:28 Коллекция графов Широкий алгоритм + 20 1 час. 00 мин.
Реализации алгоритма поиска вширь на уровне кода, поиску причин возникновения Exception-a "Collection was modified; enumeration operation may not execute".
Особых сложностей не было . Понадобилось время для пошаговой проверки алгоритма.
Урок понравился тем, что пришлось разбираться в причинах возникшей ошибки. Выяснил, что при исп-ии foreach (int nr in ВсеВершины()) в методе УстановитьЦвет(Цвет цвет), Hashtable вершины вернул при 1м проходе номер 12й вершины, т.е. эл-ты расположились в обратном порядке (по убыванию). Заменив строку foreach (int nr in ВсеВершины()) на for (int nr = 0; nr < вершины.Count; nr++) алгоритм последовательно прошёл все вершины (от 0 до 12й) и уже без exception-a. Второй момент, в классе ПоискВШирь исправил строку граф.УстановитьЦвет(Граф.Цвет.чёрный) на граф.УстановитьЦвет(a, Граф.Цвет.чёрный) - иначе все вершины графа будут окрашиваться чёрным при извлечении 1го эл-та из очереди.  Если не прав - жду ваших замечаний .
2016-11-03 23:05 Коллекция графов Широкий поиск + 20 35 мин.
Проработке графа с помощью алгоритма поиска в ширину.
Сложностей не было.
Начало как говорится интригующее - жду продолжения ) .
2016-09-06 00:46 Коллекция графов Шахматная доска + 20 1 час. 30 мин.
Формировать граф в виде шахматной доски и выводить его на экран .
Особых сложностей не было .
Хороший урок, идём дальше ) . 
2016-08-30 01:21 Коллекция графов Отображение + 1 30 мин.
Выводить на экран заданную структуру графа .
После формирования нужных нам методов оценить логику работы алгоритма вцелом .
Всё понравилось - идём дальше .
2016-08-29 00:27 Коллекция графов Инициация + 20 1 час. 30 мин.
Применять Label для вывода псевдографики на форму при заданных координатах лев. верхнего угла метки.
Ничего . Понадобилось время для подбора нужных координат , дабы картинка соответствовала графу .
Жду продолжения ) .
2016-08-28 12:07 Коллекция графов Рёбра + 20 1 час. 30 мин.
Дополнили  класс Граф новыми методами (некоторые с исп-ем yield return). В итоге получили завершённую структуру по формированию заданного графа.
Сложностей не было.
Спасибо за урок - всё понравилось.
2016-08-27 22:16 Коллекция графов Вершины + 20 1 час. 00 мин.
Применять русские названия методов ), перечисление Цвет,  узнал об итераторах (yield return), создали часть класса Граф по формированию вершин .
Разобраться с назначением yield return . В качестве варианта формирования рёбер остановился на HybridDictionary(); учитывая что их кол-во будет больше 20ти . В качестве параметров можно передавать номера смежных вершин.
Хороший урок - довольно много вопросов вызвал ) .
2016-08-24 01:02 Коллекция графов Граф + 20 2 час. 00 мин.
Получил представление о графе и его разновидностях, методах представления.
Определиться с вариантом хранения графа { цвета вершин, смежные вершины } . В конечном итоге остановился на варианте списка классов, в которых и хранятся цвета вершин со списком смежности . Насколько верно понял задание - покажут ваши отзывы ) .
Интересно продолжение .
2016-08-19 01:11 Коллекция графов BitArray + 20 1 час. 00 мин.
Применять битовый массив BitArray, а также некоторые его методы  на практике .
Сложностей не было . Интересно было поэкспериментировать с методами OR, Set, SetALL, And .
Всё отлично, идём дальше .
2016-06-14 00:43 Коллекция графов Hashtable + 20 2 час. 00 мин.
Создавать набор элементов на базе ListDictionary, Hashtable и HybridDictionary . Удалось сравнить время отработки  каждого из классов при формировании различных комбинаций большого кол-ва эл-ов : ListDictionary на порядок уступил по времени отработки двум другим классам (Hashtable и HybridDictionary), которые показали практически одинаковые результаты .
Особых сложностей не было. Наоборот - интересно .
Урок понравился. Осталось понимание базового применения вышеуказанных классов.
2016-06-07 00:21 Коллекция графов ListDictionary + 20 1 час. 00 мин.
Ознакомился с классом ListDictionary, отсутствием его привязки к типам хранимых эл-ов, поэкспериментировал с различными его методами.
Сложностей не было.
Получился довольно лёгкий и интересный урок.
2016-05-30 22:17 Коллекция графов Array vs List + 20 1 час. 30 мин.
Познакомился с типизированной коллекцией List<>, классом ArrayList с динамически изменяемым размером. Сравнил эффективность использования вышеуказанных типов с разным количеством и типом аргументов. 
Заняло время добавление своих операций. В итоге ограничился добавлением строкового и булевого типов данных с фиксированием времени их обработки.
Урок понравился. Как всегда интересно и познавательно .
2016-05-06 22:58 Комбинаторика VIP. Простые числа. Оптимизация алгоритма + 21 3 час. 00 мин.
Ознакомился с различными алгоритмами поиска простых чисел , сравнением их скорости отработки в ед. времени , составлением функций по проверке отработки данных алгоритмов .     
Самостоятельно реализовать алгоритм Эратосфена.
Довольно объёмный урок в плане представленных алгоритмов - отличная возможность прокачивать свои навыки . В общем и в целом курс Комбинаторики запомнился своей многогранностью, интересными задачами и методами их решения . Здорово , нечего добавить !
2016-05-01 01:13 Комбинаторика ФИНАЛЬНЫЙ УРОК + 1 1 час. 00 мин.
Формировать видеообзор своей программы и выкладывать его на YouTube .
Сохранять спокойствие при записи ролика ).
Спасибо за шаблон подготовки видеороликов - пригодиться однозначно !
2016-04-26 11:29 Комбинаторика Динамика. Выход из Лабиринта + 21 3 час. 00 мин.
С помощью динамического программирования находить кратчайший путь в графе, применению очереди Queue() на практике.
Много времени ушло на переход от очереди к массиву. В итоге смог реализовать алгоритм поиска пути через массив с последующим выводом в другом цвете предварительно сохранённых структур . Однако кратчайший путь  в графе окрасить пока не удалось (окрашиваются все элементы) - нужна реализация алгоритма поиска данного пути (на примере урока "Волны в шариках" с которым я пока не знаком).
Впечатления урок оставил яркие. Многократно прогонял пошагово некоторые части кода - помогло прояснить работу алгоритма.
2016-04-24 19:28 Комбинаторика Динамика. Счастливые билеты 20 + 20 3 час. 00 мин.
Очередному , тоже эффектному плюс и быстрому варианту решения комбинаторных задач.
Реализовать в коде домашнее задание динамическим методом - алгоритм на бумаге составлен .с реализацией пока туго. В итоге  воспользовался итерациями .
Благодарю за урок - впечатление оставил довольно яркое. Долгое время носился с возможной реализацией домашнего задания с последовательностью "59" . Свою задумку пока реализовать не получилось, поэтому воспользовался итерациями.
2016-04-20 00:50 Комбинаторика Динамика. Поле дураков + 20 1 час. 00 мин.
Познакомился с динамическим программированием, нюансами его применения : по аналогии с рекурсией, начинали алгоритм с "конца" и далее итерациями достигли желаемого результата. 
Особых сложностей не было.
Уроком доволен . Всё прошло в лёгкой, ненавязчивой форме.
2016-04-18 21:55 Коллекция графов List + 20 30 мин.
Использовать типизированные коллекции, не позволяющие вносить данные разных типов. Узнал, что типизированные коллекции хранят данные, согласно их значению. Применению Enumerator-а для прохождения по всем элементам списка. Экспериментам со встроенными методами типизированных коллекций : Sort() - сортировка элементов в порядке возрастания , Sum() - общая сумма элементов , ForEach() - выполнение заданной операции для каждого элемента списка, Max/Min - нахождение соответственно максимального и минимального значений в списке.
Ничего.
Урок понравился. Идём дальше ) .
2016-04-18 19:16 Коллекция графов ArrayList + 20 30 мин.
Формировать коллекции, применять различные встроенные методы по ним. Узнал, что по-умолчанию коллекция рассчитана на 4 элемента . 
Вникать в нюансы применения строенных методов ArrayList .
Поигрался с методами Insert - добавление элемента в заданную позицию,  Clone - копирование эл-ов одной коллекции в другую, Capacity - отображение текущей ёмкости коллекции и TrimToSize - "обрезание" текущей ёмкости до общего кол-ва добавленных эл-ов .
2016-04-17 21:05 Комбинаторика Полуфинальный урок. Ответы на вопросы + 20 30 мин.
На данном этапе смог на практике прочувствовать "божественность" рекурсии, в каких случаях можно и даже нужно её применять, с чего начинать формирование рекурсивной функции . Особенно впечатлили уроки "Заливка области" - интересно было наблюдать за пошаговой отработкой алгоритма,  "Фракталы.Треугольник Серпинского и кривой Гильберта" - возможностью экспериментировать с различными параметрами, красотой исполнения, применением форм с прорисовкой линий, "Парад Ферзей" - запомнилась подробная проработка консольного интерфейса шахматной доски, алгоритм поиска возможного расположения ферзя на шахматной доске .
По времени проработки самыми сложными были задачи "Заливка области", "Фракталы.Треугольник Серпинского" Фракталы. Кривая Гильберта", "Парад Ферзей (NxN) "
Так как тематика для меня совершенно новая и раньше с ней встречаться не приходилось, то замечаний, касательно изложенного материала, с моей стороны нет. Каждый из уроков "разжёван" в полной мере, а главное - есть возможность для творчества :) . Поэтому от меня сплошные плюсы . Так держать ! От себя хочу пожелать ещё больше поводов для творчества, чтобы энергии и времени хватало на всё и вся ! С уважением, Денис .
2016-04-17 19:42 Комбинаторика Комбинаторика. Математические операции + 20 2 час. 00 мин.
Применению рекурсии при вычислении математических выражений, использованию блок-схем для наглядности решения задач, формированию класса по заданному в блок-схеме алгоритму.
Особых затруднений не было.
Всем доволен . Есть над чем поработать .
2016-04-16 23:30 Webbot On-Line Видеообзор Игры + 20 30 мин.
Познакомился с онлайн-игрой "Небоскрёб" . Узнал об основных целях курса Webbot Online .
Ничего
Тема выбрана довольно интересная - конечный результат интригует .
2016-04-10 22:54 Комбинаторика Комбинаторика. Сложение букв + 20 1 час. 30 мин.
Решению буквенных головоломок с помощью комбинаторики, вложенных циклов и конечно же божественной рекурсии .
Успевать за ходом мысли сенсея .
Нет слов - один восторг ) !
2016-04-07 23:48 Комбинаторика Рекурсия. Фракталы. Кривая Гильберта + 20 2 час. 00 мин.
Применению 4х рекурсий для прорисовки кривой Гильберта, поближе познакомился с принципом построения кривой и самой рекурсией  .
Представить в уме 'R' 'U' 'L' 'D'  с учётом направления (по часовой и обратно).
Отличный познавательный урок, спасибо ! )
2016-04-03 17:48 Комбинаторика Рекурсия. Фракталы. Треугольник Серпинского + 21 2 час. 00 мин.
Формировать треугольники Серпинского с помощью рекурсии 2мя способами, рисованию на форме + панель, экспериментировать с различными параметрами. получая неожиданные результаты .
Особых сложностей не было.
Здорово, урок понравился !
2016-04-01 23:44 Комбинаторика Рекурсия. Фракталы. Спираль + 20 1 час. 30 мин.
Работе с формой в плане прорисовки линий, построению простейшего фрактала/спирали с помощью рекурсии.
Особых сложностей не возникло.
Отличный урок . Довольно большой простор для экспериментов.
2016-03-31 00:37 Комбинаторика Комбинаторика. Много ферзей. Демонстрация + 20 3 час. 00 мин.
Решать задачу расстановки  N ферзей на шахматной доске N x N с помощью рекурсии.
Распутать робота Шарпа из проводов .
Довольно подробно, наглядно и доходчиво представлен пример использования комбинаторики и рекурсии .
2016-02-27 01:25 Комбинаторика Комбинаторика. 4 x 4. Ладья x Ферзь + 20 1 час. 30 мин.
Находить варианты расположения 4х ферзей/ладьей на поле размером 4х4 . Использовать рекурсию для поля N ферзей/ладьей.
Разобрать алгоритм )
Было интересно узнать что-то новое.
2016-02-24 01:19 Комбинаторика Комбинаторика. Счастливые билеты N + 20 2 час. 00 мин.
Применению вложенных циклов при известном числе параметров и рекурсии - при неизвестном их кол-ве.
Вникнуть в рекурсию )
Так и не смог "обмануть" робота C# . В студии при выборе N от 1 до 5 отрабатывает на ура . Робот же - не принимает . 
2016-02-18 23:18 Комбинаторика Комбинаторика. Счастливые билеты 6 + 20 10 мин.
Одному из применений вложенных циклов .
Ничего .
Коротко и ясно о счастье ) .
2016-02-17 22:50 Комбинаторика Рекурсия. Обратный отсчёт + 1 10 мин.
Применению рекурсии для обратного построчного вывода вводимых чисел, заканчивающихся нулём.
Ничего
Очередное красивое применение рекурсии.
2016-02-16 23:23 Комбинаторика Рекурсия. Общий делитель + 20 15 мин.
Использовать рекурсию для нахождения наибольшего общего делителя двух чисел.  Просто и красиво .
Ничего
Экспириенс понемногу растёт - вам большой респект :) .
2016-02-15 22:43 Комбинаторика Рекурсия. Числа Фибоначчи + 20 20 час. 00 мин.
Узнал об ограничении в использовании рекурсии при ёмких вычислениях, познакомился с Числами Фибоначчи .
Разобраться с алгоритмом расчёта чисел Фибоначчи . 
Урок понравился . Так держать .
2016-02-15 00:24 Комбинаторика Рекурсия. Факториал + 20 15 час. 00 мин.
Основное условие рекурсии, её эффектность и ресурсоёмкость по сравнению с итерациями .
Того уже нет ) .
На втором скриншоте представлен вариант рекурсии с условием if (num == 1) вместо (num <= 1) - по идее в минус уйти не должны . Однако Робот Шарп решил иначе, Тест 001 не прошёл по времени проверку . Интересно, что за тест .
2016-02-13 22:00 Комбинаторика Рекурсия. Заливка области + 20 2 час. 00 мин.
Ближе познакомился с рекурсией - удалось проследить её пошаговую работу. Завораживающее зрелище :) . Оценил компактность функции прорисовки fill() и создание уникального (рандомного) "лабиринта" используя ConsoleColor().
Пошагово отработать рекурсию в уме и понять по какому принципу выполняется заполнение "пустот" .
Интересно, что будет дальше ...
2016-02-10 23:57 Бинарная жизнь Смысл жизни + 20 1 час. 00 мин.
Приоткрыл завесу тайны мироздания :) на примере 256 возможных программ бинарных автоматов .  Основная мысль : "Хочешь изменить окружающий мир, - начни с себя", а точнее со своих привычек . Наглядно, всё это было продемонстрировано с помощью функций Change() - изменение событий в жизни и ChangeRule() - изменение программы автомата (подразумеваются наши вредные привычки) .
Достижение "ОСОЗНАННОСТИ" ! ;)
Благодарю за глубокий философский посыл - есть над чем задуматься на досуге !
2016-02-10 22:34 Бинарная жизнь Новое поколение + 20 1 час. 00 мин.
Реализации бинарных автоматов в виде класса, задающего логику работы программы с возможностью отображения дискретного аналога «Салфетки Серпинского» .
Разобраться с логикой работы функций SetRule() , Next () .
Полёт нормальный, погружаемся дальше :) .
2016-02-09 22:58 Бинарная жизнь Конструктор организма + 20 1 час. 00 мин.
Создавать программные загатовки простейших бинарных автоматов .
Успевать за Евгением Витольдовичем добавлять программный код . :) Охватить все аспекты класса Logic и разобраться в его логике .
Всем доволен, жду продолжения !
2016-02-09 00:45 Бинарная жизнь Правила игры + 20 1 час. 30 мин.
Рассматривать философские вопросы с программной точки зрения. Вспомнил двоичную систему исчисления :) . Научился пользоваться формулой "ЕСЛИ" в Excel.
Составить верно формулу и контролировать каждый шаг .
Довольно интересное погружение в совершенно новое и ещё неизведанное для меня :) . Стимулирует идти дальше .
2016-02-07 14:27 Комбинаторика Рекурсия. Главный секрет + 21 30 мин.
Ближе познакомился с рекурсией. узнал о существовании кривой Гильберта и её применении .
Разобраться в принципе построения кривой Гильберта на поле 16х16 .
Особых замечаний нет. Волнение Евгения в конечном итоге было компенсировано поддержкой зала, что тоже немаловажно :) . Общее впечатление хорошее, настраивающее на рабочий лад . Так держать !
2016-02-05 23:50 Комбинаторика Рекурсия. Вступление + 20 20 мин.
Что подразумевает под собой рекурсия
Поиск подходящей картинки на тему рекурсии
Рекурсия напоминает циклы нашей истории, когда глобальные события повторяются примерно каждые 100 лет . Движение во времени по спирали .
2015-09-01 21:08 Демо игры Картинка с секретом + 20 1 час. 00 мин.
Формировать иконки , делать захват экрана с помощью "Alt" , программировать "волшебство".
Ничего
Получилась довольно яркая программка с секретом.
2015-08-24 21:45 Демо софт Вступительное слово + 20 1 час. 30 мин.
Что знание теории - это вершина айсберга. Необходимы ежедневные практические навыки, связанные с предварительным обсуждением  и последующим решением разноплановых задач .
Установка и регистрация Visual Studio Ultimate 2012.
Программа "Service Control" - остановка заданного системного сервиса. Первое впечатление от проекта - сплошной позитив .  Импонирует  большое разнообразие практических задач в рубрике "Консоль" , возможность бесплатного ознакомления с общей методикой обучения . Ожидание : общение с интересными и приятными людьми, получение новых знаний и практических навыков .
  Карточки памяти Подготовка формы   Открыто


  Сокобан Сокобан - Вступление   Открыто


  Нано-игры ФИНАЛЬНЫЙ УРОК   Открыто


  Простой WPF WPF. Аудиотреннинг   Открыто


  Секундомер Играй гармонь!   Открыто


  Невидимка Кто такая C# Невидимка?   Открыто


  Дневник успеха 2018-07-29 Отчёт за неделю   Открыто


  Система Git Добро пожаловать в Зоопарк!   Открыто


  Дневник успеха 2018-09-16 : Земелька черная, а белый хлеб родит.   Открыто


  Соло на клавиатуре 60 уроков   Открыто


  Дневник успеха 2020-03-01 : На работу он сзади последних, а на еду — впереди первых.   Открыто


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





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

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

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

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


Научился: Калязин Денис . Пройдя 7 уроков по "Демо играм" получил представление о работе с настройками рабочей формы, её медиаконтента, обработке событий (нажатий кнопок мышки и клавиатуры ). Каждая из игр запомнилась своим оформлением, несложным как оказалось алгоритмом, возможностью различных доработок . Довольно интересная и познавательная получилась подборка игровых программ, - за что отдельное спасибо автору ! Следующим планирую пройти курс по написанию игрового комплекса "Сокобан" .
Трудности: При написании "Бот для Быстрощёлка" долго не мог разобраться с отсутствием события нажатия мышки ( метод DoMouseClick() ) под Windows 10 . Как оказалось, сам автокликер необходимо запускать с правами администратора .



Научился: Применению рекурсии для обратного построчного вывода вводимых чисел, заканчивающихся нулём.
Очередное красивое применение рекурсии.