Обучение программированию c# онлайн

Формула программиста
основатель — Волосатов Евгений Витольдович

Интернетный бот

Система авто-управления сайтом

Это более 20 уроков по написанию программы,
Выполняющей за тебя рутинные операции.
Мы пройдемся по всем этапам разработки.
Решим какие операции не приносят радости,
И их просто необходимо автоматизировать!
Мы проведем тебя по всему пути создания бота.
С нами ты обязательно дойдешь до финиша!
И получишь бесценные знания, опыт.
У тебя в руках будет мощный инструмент для работы с HTML.

Что ты получишь, пройдя курс:

+ Понимание HTML документа
+ Знания, для прохождения авторизации
+ Навык автоматизировать однотипные действия
+ Опыт, позволяющий тебе работать с динамическими ссылками
+ Универсальный инструмент для работы с контентом сайта.

Внимание! Заметьте, существует много инструментов и фреймворков для работы с HTML документом, но сторонние библиотеки не участвуют в разработке проекта, используются только встроенные возможности языка программирования C#.

После окончания курса у тебя будет полноценный,
Рабочий бот, выполняющий за тебя все операции.

Преимущества курса
+ Практические задания
+ Показаны различные возможности
+ Без сторонних библиотек
+ Курс не утяжелен теорией
+ Чёткий пошаговый алгоритм: повтори и получи
+ Универсальный подход к написанию (применяй в любых своих разработках)
+ Автоматизируй свою работу!

5,000 руб.


Для подписки на пакет необходимо авторизоваться.

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

# Название видеоурока Решило Рейтинг Доступ
1 Видеообзор Игры 00:06:05 27 чел. ★ 4.6 Done
  Отчёт отправил: 4467. Alcatraz Решено за 10 мин. [Показать отчёт]
Научился: Выполнил все задания. 
Сложности: Ничего. 
Комментарии: Ознакомился с игрой, поиграл, зарегистрировался. Жду приятных впечатлений от курса. 
2 Планирование функций 00:12:35 17 чел. ★ 4.8 Done
  Отчёт отправил: 4467. Alcatraz Решено за 10 мин. [Показать отчёт]
Научился: Выполнил все задания. 
Сложности: Ничего. 
Комментарии: Список функций: 1. Авторизация 2. Собрать выручку 3. Выложить товар 4. Закупить товар 5. Поднять на лифте 6. Получить задания 7. Пройти лабиринт 8. Работа с жителями Я бы добавил функцию постройки нового этажа. Она бы по очереди выбирала профиль для этажа и когда количество денег на счету достигало определенной пропорции от требуемой для постройки выполняло бы соответственно заложенное действие. 
3 Подготовка формы 00:21:15 17 чел. ★ 4.7 Done
  Отчёт отправил: 4467. Alcatraz Решено за 25 мин. [Показать отчёт]
Научился: Выполнил все задания. 
Сложности: Ничего. 
Комментарии: Добавил переход на указанный url по нажатию клавиши Enter. 
4 Проверяем авторизацию 00:19:49 15 чел. ★ 4.8 Done
  Отчёт отправил: 4467. Alcatraz Решено за 20 мин. [Показать отчёт]
Научился: Выполнил все задания. 
Сложности: Ничего. 
Комментарии: Выполнил домашнее задания, добавил кнопку "Авторизация" и метод, который проверяет нужна ли авторизация в игре. 
5 Авторизация 00:14:08 13 чел. ★ 4.8 Done
  Отчёт отправил: 4467. Alcatraz Решено за 15 мин. [Показать отчёт]
Научился: Повторил для себя авторизацию с заполнением полей. 
Сложности: Ничего. 
Комментарии: Выполнил домашнее задание. 
6 Робот приступает к действиям 00:21:04 13 чел. ★ 4.8 Done
  Отчёт отправил: 4467. Alcatraz Решено за 25 мин. [Показать отчёт]
Научился: Выполнил все задания. 
Сложности: Ничего. 
Комментарии: Выполнил домашнее задание. http://nebo.mobi/floors/0/2 - Страница "Закупить товар" http://nebo.mobi/lift - Страница "Поднять на лифте" http://nebo.mobi/floor/0/72796527 - Страница "Гостиница" 
7 Робот ходит за покупками 00:28:27 13 чел. ★ 4.8 Done
  Отчёт отправил: 4467. Alcatraz Решено за 30 мин. [Показать отчёт]
Научился: Выполнил все задания. 
Сложности: Ничего. 
Комментарии: Домашнее задание выполнил. 
8 Лифтёра вызывали? 00:20:42 13 чел. ★ 4.8 Done
  Отчёт отправил: 4467. Alcatraz Решено за 20 мин. [Показать отчёт]
Научился: Рефакторить ранее написанный код. 
Сложности: Ничего. 
Комментарии: Что бы выполнять не более 7 задания в день можно добавить для этого отдельную переменную-счетчик либо парсить каждый день страницу и смотреть, сколько уже задания мы выполнили. 
9 Сегодня выполняем "задания" 00:26:56 13 чел. ★ 4.8 Done
  Отчёт отправил: 4467. Alcatraz Решено за 27 мин. [Показать отчёт]
Научился: Выполнил все задания. 
Сложности: Ничего. 
Комментарии: Мне лично не нравится использовать метод Substring, я вместо него использую Contains. А метод проверки NeedQuests я переделал под поиск регулярного выражения, код получился намного меньше. Сделать стандартное перечисление enum. 
10 Работа - работа, перейди на Федота, а с Федота... 00:21:31 13 чел. ★ 4.7 Done
  Отчёт отправил: 4467. Alcatraz Решено за 25 мин. [Показать отчёт]
Научился: Выполнил все задания. 
Сложности: Ничего. 
Комментарии: Я создал отдельный метод GetModeToString, который возвращает строку для текущего режима (mode). if(checkBoxStart.Checked == false) - более хужей записи чем эта трудно найти, и даже в целях учёбы не стоит такого писать. Всегда в таких случаях пишите прост if(!checkBoxStart.Checked ). Домашнее задание: использовать свойство веб-браузера webBrowser.IsBusy, которое покажет занят ли наш веб-браузер загрузкой страницы. 
11 Лабиринт Минотавра 00:32:54 13 чел. ★ 4.7 Done
  Отчёт отправил: 4467. Alcatraz Решено за 35 мин. [Показать отчёт]
Научился: Выполнил все задания. 
Сложности: Ничего. 
Комментарии: Домашнее задание: 1) нужно проверить сколько у нас имеется ключей, если меньше 10, то нужно включать режим ожидания и выходить из метода или даже останавливать наш таймер; 2) либо делать проверку содержит ли наша страница ответа текст "Не хватает ключей", если содержит, то делать аналогичные 1 пункту действия; 3) перед переходом по ссылке "Начать сначала", проверять сколько осталось ключей. 
12 Лабиринт Минотавра и нить Ариадны 00:18:14 12 чел. ★ 4.8 Done
  Отчёт отправил: 4467. Alcatraz Решено за 20 мин. [Показать отчёт]
Научился: Выполнил все задания. 
Сложности: Ничего. 
Комментарии: Не понимаю зачем два раза возвращать коллекцию в методе NumberDoor, в условии и при возвращении из метода, это ведь не корректно. Домашнее задание: Добавил два лейбла и создал метод для отображения информации на них. 
13 Уборка помещений 00:51:26 12 чел. ★ 4.7 Done
  Отчёт отправил: 4467. Alcatraz Решено за 1 час. 00 мин. [Показать отчёт]
Научился: Выполнил рефакторинг всего кода. 
Сложности: Ничего. 
Комментарии: После рефакторинга все выглядит намного лучше и программа разделена логически на несколько модулей, что является очень правильным решением. Домашнее задание: я считаю, что переменная mode должна быть и там и там. Из кода главной формы её нету смысла убирать пока там используется настройка режима бота через кнопки. 
14 Цикличность бытия 00:32:34 12 чел. ★ 4.7 Done
  Отчёт отправил: 4467. Alcatraz Решено за 35 мин. [Показать отчёт]
Научился: Выполнил все задания. 
Сложности: Ничего. 
Комментарии: Домашнее задание: Работу таймера нужно останавливать, когда метод Работа буде возвращать false, то-есть он не выполняет никаких полезных действий. Это буде при условии, что мод == Ожидание и нам не нужен цикл. 
15 Сколько времени? 00:22:32 11 чел. ★ 5 Done
  Отчёт отправил: 4467. Alcatraz Решено за 25 мин. [Показать отчёт]
Научился: Выполнил все задания. 
Сложности: Ничего. 
Комментарии: Домашнее задание: Добавить в методе работа переход на главную страницу в условии if (mode == Mode.Ожидание && !NeedCicle()) И так же добавить условие если текущий режим равняется режиму Ожидание, то перейти на следующий шаг плюс было бы неплохо добавить к этому временную задержку, что бы главная страница обновлялась не каждые несколько секунд. Либо при тике таймера при расчете нового времени добавить загрузку главной страницы. 
16 Настройки меняют настроение 00:33:45 11 чел. ★ 5 Done
  Отчёт отправил: 4467. Alcatraz Решено за 35 мин. [Показать отчёт]
Научился: Выполнил все задания. 
Сложности: Ничего. 
Комментарии: Домашнее задание: Наиболее оптимальным будет сохранять настройки используя класс BitArray и сериализовать объект. Можна сохранять в виде текстового файла в формате: Собрать: true Выложить: false 
17 С настройками всё в порядке! 00:37:54 11 чел. ★ 5 Done
  Отчёт отправил: 4467. Alcatraz Решено за 40 мин. [Показать отчёт]
Научился: Провел рефакторинг кода. Научился использовать стандартные возможности вижуал студиа для сохранения настроек 
Сложности: Ничего. 
Комментарии: Узнал для себя об интересном методе сохранения настроек. Домашнее задание: Добавил переход в лабиринт по клавише, для этого просто использую метод SetMode, в который я дописал строчку GoUrlOnMode. 
18 Жители. Выбираем гостиницу 00:23:13 10 чел. ★ 5 Done
  Отчёт отправил: 4467. Alcatraz Решено за 25 мин. [Показать отчёт]
Научился: Написал метод поиска гостиницы и метод перехода на гостиницу. 
Сложности: Ничего. 
Комментарии: Домашнее задание: Во-первых нам нужно выгонять жителей с низким навыком работы (2 или 4). Нужно устраивать жителей на работу их мечты. Грустных жителей нужно увольнять и если они имеют низкий навык работы, то выгонять. 
19 Жители. Кто следующий? 00:29:45 11 чел. ★ 5 Done
  Отчёт отправил: 4467. Alcatraz Решено за 25 мин. [Показать отчёт]
Научился: Выполнил все задания. 
Сложности: Ничего. 
Комментарии: Домашнее задание: Получаем все ссылки на странице работника и ищем надпись "Выселить", переходим по ссылке. Устанавливаем режим - Жители и возвращаемся из метода. 
20 Жители. Кто хочет сегодня поработать? 00:25:52 11 чел. ★ 5 Done
  Отчёт отправил: 4467. Alcatraz Решено за 25 мин. [Показать отчёт]
Научился: Выполнил все задания. 
Сложности: Ничего. 
Комментарии: В методе Rabota, там где у нас условие if (mode == Mode.Задания && !NeedQuests() || mode != Mode.Задания Лично у меня при нем, когда стоит режим Задания и можно еще выполнять задания не входит внутрь. Что бы исправить это просто убрал операцию логического отрицания возле метода NeedQuests. И тогда получается логичным, если у нас режим Задания и мы можем еще выполнять их, то мы заходим внутрь. В итоге я изменил на if(mode != Mode.Задания || (mode == Mode.Задания && NeedQuests()). Немного сменил расположение кнопок. Добавил картинку игры. И еще создал мини-игру. Перед вами 6 дверей, 4 пустых комнаты, 1 с золотом и одна со стеной. Вам нужно двигаться по ним пока вы не врежетесь в стену. Вся статистика игры выводится + информация о текущей открытой двери. Рекорд золота и пройденных комнат сохраняется в настройках проекта. После проигрыша вы просто нажимаете на любой двери, они все закрываются и можно начинать новую игру. Почему это, а не играться с интерфейсом? Просто когда бот работает, зачем нам просто сидеть сложа руки? Можна сыграть в мини-игру!) 
21 Жители. Кто не работает - то не ест! 00:20:17 11 чел. ★ 5 Done
  Отчёт отправил: 4467. Alcatraz Решено за 22 мин. [Показать отчёт]
Научился: Выполнил все задания. 
Сложности: Ничего. 
Комментарии: Домашнее задание: Работу с жителями в цикл не добавлял. Меня устраивает, что они находятся на отдельной кнопке. Метод увольнения я доработал, так как столкнулся с ситуацией зацикливания (два работника постоянно менялись местами). Доработка заключается в том, что создается кортеж из 3 человек, который содержит информацию о уровне работника, счастлив ли он и ссылку на удаление. Дальше мы просматриваем и ищем нещасного работника и увольняем с работы его. Если такого не найдено, мы ищем сотрудника с минимальным уровнем и увольняем его. 
22 ФИНАЛЬНЫЙ УРОК 00:23:23 8 чел. ★ 5 Done
  Отчёт отправил: 4467. Alcatraz Решено за 5 мин. [Показать отчёт]
Научился: Записывать видеообзор своей программы. 
Сложности: Ничего. 
Комментарии: 20 минут запису и тут я вижу, что не включен микрофон. Пришлось перезаписывать видообзор. Так что на записи, которую вы можете увидеть на ютубе вы услышите охрипший и уставший голос. 
Видеообзор: https://youtu.be/3bc5gRU4wSU
23 VIP. Формирование цикла 00:21:06 6 чел. ★ 5 Done
  Отчёт отправил: 4467. Alcatraz Решено за 25 мин. [Показать отчёт]
Научился: Добавил возможность формирование цикла работы бота пользователю. 
Сложности: Ничего. 
Комментарии: Оформление минималистическое) Ну теперь меня устраивает вполне, то что есть. Спасибо Кирилл за очень хороший курс! 
  Итого:   23 видеоурока общей продолжительностью 9 час. 25 мин. 6 чел. ★ 4.85  
  Финалисты:   Новопашин Владимир,   Tekashnik,   Alcatraz,   Дмитрий 199,   Максим Лапшинов,   Ludmila .

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




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

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

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

Ты в любой момент сможешь отписаться от рассылки.
Научился: записывать видео-обзор
Трудности: записывать видео-обзор
Спасибо за курс!
Смотреть видеозапись: https://rutube.ru/video/d6c93b860ec1f8e8b8b1946b62f66113/
Научился: видео писать не могу, не моё это ;(
Трудности: нет
нет