Си шарп видео уроки

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

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

SOFT: API Telegram

Что ты получишь, пройдя этот курс:
⦁    Умение работать с API функциями и с Json форматом
⦁    Инструменты для работы с API функциями Telegram
⦁    Собственный Бот для автоматизации рутинных процессов
⦁    Возможность получать прибыль (как? мы расскажем!)

Запишись на курс чтобы открыть бесплатно первые уроки.

SOFT: API Telegram

Хочу купить!

Купить в рассрочку за мегахеши

Цена: 5000 p.


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

# Название видеоурока Видео / Тесты Решило Рейтинг Доступ
1 Здесь Ботов раздают? 00:16:37
26 чел. ★ 4.9 Done
  Вводный урок, на котором мы познакомимся с системой и создадим собственного Бота, что бы в последствии использовать эти данные для автоматизации Бота.

*Задание: написать несколько примеров использования Бота для Телеграмма
Отчёт отправил: 9612. Олег Михайлович Выполнено за 20 мин. [Показать отчёт]
Научился: Научился регистрироваться в вебформе Telegram, создавать нового бота (заготовку), получил понятие о токене Бота. 
Сложности: Сложностей нет. 
Комментарии: Замечаний нет. Примеры Бота: 1. Бот по определению текущего местоположения клиента в момент отправки Бота на карте (например, Google Map). 2. Бот для поиска книги или общей темы в онлайн каталоге публичной библиотеки. 3. Бот-напоминалка о каком-либо событии в назначенное время. 
2 Осознание... 00:10:27
20 чел. ★ 5 Done
  Первое создание проекта, заполнение формы, установка констант.

*Задание: установить аватар для Бота

Отчёт отправил: 9612. Олег Михайлович Выполнено за 45 мин. [Показать отчёт]
Научился: Научился создавать форму под бота, проверять работу бота через адресную строку браузера, настраивать бота. 
Сложности: Установить аватар для бота не удалось. Создавал размеры 100х100, 80х80, 60х60, но ему не нравится размер файла, хотя пытался запихнуть картинку в форматах jpg, png и gif. 
Комментарии: Замечаний нет. 
3 Начинаем кодить 00:16:35
18 чел. ★ 5 Done
  На уроке мы уже начинаем программировать, уже через нашу новую программу получаем данные, обновления и пр.

*Задание: получить номер последнего обновления – offset
Отчёт отправил: 9612. Олег Михайлович Выполнено за 1 час. 50 мин. [Показать отчёт]
Научился: Научился получать через API информацию о себе, получать обновления бота, создавать лог процесса работы бота. 
Сложности: Сложным было получить номер последнего обновления -offset 
Комментарии: Замечаний нет. 
4 Что такое Json?! 00:22:25
17 чел. ★ 5 Done
  Урок расскажет всё о Json, и использовании этой технологии в C#

*Задание: написать описания для класса сообщения.
Отчёт отправил: 9612. Олег Михайлович Выполнено за 1 час. 45 мин. [Показать отчёт]
Научился: Научился подключать библиотеку json, получать смещение сообщения в боте и само сообщение. 
Сложности: Сложным было установить json библитеки (visual studio сопротивлялся и выдавал ошибки) 
Комментарии: Замечаний нет. 
5 Вам телеграмма! 00:18:18
17 чел. ★ 5 Done
  Учим нашего Бота писать сообщения, а так же реагировать на наши сообщения.

*Вопрос: кто может в данный момент написать и получить ответ от Бота?
Отчёт отправил: 9612. Олег Михайлович Выполнено за 45 мин. [Показать отчёт]
Научился: Научился создавать процедуру выбора ответа ботом. 
Сложности: Сложностей нет. 
Комментарии: Ответ на вопрос: написать в данный момент может тот, кто знает имя бота, а получить ответ может тот, чей chat_id известен боту. 
6 Не хочу писать! 00:33:13
16 чел. ★ 5 Done
  Правильно! В Век Новых Технологий пользователь приучен тыкать по кнопках, а не писать самостоятельно, вот и мы на уроке начнем создавать кнопки.

*Задание: создать кнопочное меню, состоящее из месяцев
Отчёт отправил: 9612. Олег Михайлович Выполнено за 1 час. 55 мин. [Показать отчёт]
Научился: Научился создавать отдельный класс для кнопок, создавать кнопочное меню, создавать класс для удаления кнопок. 
Сложности: Вроде бы сложностей нет,  но сам код нельзя назвать легким — для его создания требуются значительные дополнительные знания. 
Комментарии: Замечаний нет.  Чтобы не тратить критически время на программное создание кнопок календаря решил отставить эту задачу (это не основная тема по боту). А с трудностью столкнулся следующей:  при программном создании кнопок нужно в цикле из 12 итераций создать 12 списков с разными именами. Главная проблема оказалась в том, что имена у списков должны быть разные (под имя выделил строковую переменную, которой в цикле и должно назначаться имя) а компилятор говорит, что именем списка не может быть переменная типа string... Чтобы не тратить время курса — отставил этот вопрос на потом.  
7 Волшебство начинается! 00:32:40
16 чел. ★ 4.9 Done
  Фантастика, в Телеграмме есть кнопки, которые умеют отправлять запрос, а не сообщение.
Как их создавать и как ими пользоваться, всё это и многое другое на уроке!

*Вопрос: как получить данные из ответа Бота, если ему отправить inline запрос?
Отчёт отправил: 9612. Олег Михайлович Выполнено за 1 час. 30 мин. [Показать отчёт]
Научился: Научился создавать классы для  создания inline меню. 
Сложности: Сложностей нет. 
Комментарии: Замечаний нет.  Как получить данные из запроса, честно говоря не скажу — сейчас для меня ответ не очевиден. Посмотрю в следующем уроке :-)  
8 По взмаху волшебной палочки! 00:23:38
15 чел. ★ 5 Done
  Управлять запросами это непросто, ну а как этим заниматься, рассмотрим на уроке.
Подсказочки тоже может быть пригодятся в последствии!

*Задание: сформировать inline меню названия месяцев, чтобы оно возвращало номер месяца.
Отчёт отправил: 9612. Олег Михайлович Выполнено за 1 час. 45 мин. [Показать отчёт]
Научился: На уроке научился создавать расширенный класс Сообщение (TeleMessage) для обработки запросов, создавать процедуру отправки подсказок. 
Сложности: Сложностей особых нет, но вот в домашнем задании меню получилось создать инлайн кнопки, но только горизонтальные... 
Комментарии: Замечаний нет. 
9 Изменить неизменяемое 00:23:36
15 чел. ★ 5 Done
  Научимся менять уже отправленное сообщение, чтобы у пользователя возникло ощущение интерактива.

*Задание: на следующем уроке освоить технологию SQLite
Отчёт отправил: 9612. Олег Михайлович Выполнено за 45 мин. [Показать отчёт]
Научился: Научился создавать метод изменения сообщения в телеграм. 
Сложности: Сложностей нет. 
Комментарии: Замечаний нет. 
10 SQLite: База MySQL в кармане 00:28:11
14 чел. ★ 5 Done
  Подключаемся к базе SQLIte через Visual Studio используя язык программирования C#
Если установить SQLite через NuGet, то установится необходимая версия библиотеки.

*Самостоятельное задание: сделать так, чтобы при нажатии кнопки Enter в DataGridView данные сохранялись в базу данных
Отчёт отправил: 9612. Олег Михайлович Выполнено за 2 час. 25 мин. [Показать отчёт]
Научился: Научился устанавливать браузер  for SQLite, создавать БД и таблицу, подключать библиотеку System.Data.SQLite, создавать метод заполнения DataGridView из таблицы SQLite и метод сохранения данных в таблицу. 
Сложности: Сложным было подобрать работающую dll-ку. 
Комментарии: Замечаний нет. 
11 БД - Большое Дело! 00:20:29
14 чел. ★ 5 Done
  Планы - основа всех Баз Данных, будем планировать и создавать Базы Данных!

*Задание: заполнить остальные пункты Магазина.
Отчёт отправил: 9612. Олег Михайлович Выполнено за 55 мин. [Показать отчёт]
Научился: Научился создавать план базы данных, заполнять БД с помощью браузера for SQLite. 
Сложности: Сложностей нет. 
Комментарии: Замечаний нет. 
12 Прикрутить БД 00:25:11
14 чел. ★ 5 Done
  Внедряем в проект SQLite, оптимизируем программу.

*Задание: добавить на форму DataGridView и отобразить данные из таблицы
Отчёт отправил: 9612. Олег Михайлович Выполнено за 55 мин. [Показать отчёт]
Научился: Научился создавать класс SQLiteClass выполнять рефакторинг кода. 
Сложности: Сложностей нет. 
Комментарии: Замечаний нет. 
13 Без изменения кода... 00:24:38
14 чел. ★ 5 Done
  На уроке мы научимся только меняя в БД данные изменять работу нашего Бота

*Задание: добавить переход на новую строку при автоформировании меню
Отчёт отправил: 9612. Олег Михайлович Выполнено за 1 час. 20 мин. [Показать отчёт]
Научился: Научился создавать меню для БД, создавать класс добавления кнопок. 
Сложности: Сложностей нет. 
Комментарии: Замечаний нет. 
14 Главные кнопки 00:27:41
14 чел. ★ 4.9 Done
  Создаем отдельный метод, который отвечает за добавление в наше Главное меню Главные кнопки :)

*Вопрос: почему возникает исключение при нажатии клавиш?
Отчёт отправил: 9612. Олег Михайлович Выполнено за 1 час. 15 мин. [Показать отчёт]
Научился: Научился создавать новый переход при формировании кнопок, добавлять заполнение основных кнопок. 
Сложности: Урок довольно сложный. Не просто отследить взаимосвязи при рефакторинге. 
Комментарии: Замечаний нет.  
15 Без тормозов 00:14:59
14 чел. ★ 5 Done
  Всегда лишнее тянет назад, и рука не поднимается сделать главное!
Очистим свой мозг и программу от лишнего мусора для новых горизонтов!

*Вопрос: для чего можно использовать систему контроля версий?
Отчёт отправил: 9612. Олег Михайлович Выполнено за 45 мин. [Показать отчёт]
Научился: Научился дорабатывать обработку нажатия клавиш с целью исключения возникновения ошибки при повторном нажатии клавиши и очистке кода. 
Сложности: Сложностей нет. 
Комментарии: Замечаний нет. Система контроля версий нужна для возможности поэтапного сохранения проекта и возможности обращения к коду предыдущих версий, а также для работы в команде. 
16 Продуктовый магазин 00:34:27
14 чел. ★ 5 Done
  Начинаем создавать показ Магазина пользователю.

*Вопрос: как можно решить проблему с открытием одного и того же элемента в Магазине
Отчёт отправил: 9612. Олег Михайлович Выполнено за 55 мин. [Показать отчёт]
Научился: Научился создавать процедуру обработки запросов и создавать процедуру отображения продуктов в магазине. 
Сложности: Сложностей нет. 
Комментарии: Замечаний нет. Проблему с открытием одного и того же элемента в магазине можно решить условием if если replyMarkup не изменился, то выдавать, например, текстовое сообщение: "уточните запрос." 
17 Покупательская Корзина 00:28:45
14 чел. ★ 5 Done
  В Магазине должна быть Корзина, куда покупатель будет складывать свой(наш) товар, давайте дадим эту возможность пользователя и создадим у Бота Корзину.

*Задание: добавить метод добавления продукта
Отчёт отправил: 9612. Олег Михайлович Выполнено за 1 час. 20 мин. [Показать отчёт]
Научился: Научился добавлять кнопку Назад, создавать таблицу для Корзины, создавать класс Корзина и отображать количество объектов в Корзине. 
Сложности: Сложностей нет. 
Комментарии: Замечаний нет. 
18 Корзиномания 00:30:06
14 чел. ★ 5 Done
  Будем создавать методы, позволяющие заполнять и удалять из Корзины продукты.

*Задание: вывести содержимое Корзины в Сообщение
Отчёт отправил: 9612. Олег Михайлович Выполнено за 1 час. 40 мин. [Показать отчёт]
Научился: Научился создавать метод удаления корзины 
Сложности: Сложностей нет. 
Комментарии: Замечаний нет. 
19 Корзина. Что из этого мне нужно? 00:36:28
14 чел. ★ 5 Done
  Создадим возможность пользователю посмотреть содержимое Корзины, а так же дадим возможность пользователю удалять продукты из Корзины.

*Задание: написать процедуру очистки Корзины для определенного пользователя
Отчёт отправил: 9612. Олег Михайлович Выполнено за 2 час. 45 мин. [Показать отчёт]
Научился: Научился создавать кнопки Изменение и Оформление заказа, создавать процедуру корректировки содержимого Корзины. 
Сложности: Сложностей нет. 
Комментарии: Замечаний нет. 
20 Корзина. Результат 00:41:20
14 чел. ★ 5 Done
  Результат покупки надо куда-то возвращать, чтобы можно было организовать доставку или помочь пользователю, если возник вопрос. Организацией результата Корзины мы и займемся на уроке.

*Задание: если Корзина пуста – не отображать кнопку.
*Задание: организовать отправку Сообщения Администратору
Отчёт отправил: 9612. Олег Михайлович Выполнено за 1 час. 50 мин. [Показать отчёт]
Научился: Научился создавать процедуры отправки сообщения администратору и процедуру очистки Корзины. 
Сложности: Сложностей нет. 
Комментарии: Замечаний нет. 
21 Класс как кнопка 00:27:45
13 чел. ★ 5 Done
  На уроке мы рассмотрим простой пример, когда можно сделать так, чтобы отдельный класс отвечал за одну отдельную кнопку.

Отчёт отправил: 9612. Олег Михайлович Выполнено за 1 час. 10 мин. [Показать отчёт]
Научился: Научился создавать кнопку в Телеграмм как отдельный класс. 
Сложности: Сложностей нет. 
Комментарии: Замечаний нет. Большое спасибо создателю этого курса за замечательный урок и прекрасную подачу материала!!! 
22 Красота должна быть идеальной 00:26:49
12 чел. ★ 5 Done
  Наведем порядок в программе в плане красоты для пользователя, чтоб каждый элемент был красиво оформлен и приятен глазу.

Отчёт отправил: 9612. Олег Михайлович Выполнено за 50 мин. [Показать отчёт]
Научился: Научился вставлять смайлы, вставлять онлайн картинки и форматировать текст. 
Сложности: Сложностей нет. 
Комментарии: Замечаний нет. Спасибо, Кирилл, за интересный и содержательный курс!!! 
23 ФИНАЛЬНЫЙ УРОК без видео
11 чел. ★ 5 Done
  (В этом уроке нет видео)
Приветствую!
Ты дошел до конца этого курса, до этой черты доходят немногие!
Ты уже победитель!!!

Отчёт отправил: 9612. Олег Михайлович Выполнено за 1 час. 00 мин. [Показать отчёт]
Научился: Научился создавать видеоотчет по курсу. 
Сложности: Сложностей нет. 
Комментарии: Большая благодарность создателю курса Кириллу Шмойлову. 
Видеообзор: QE4UXnYX1z0
24 LINQ 00:40:17
9 чел. ★ 5 Done
  На уроке мы познакомимся с технологией LINQ, начнем писать запросы, варианты.

Отчёт отправил: 9612. Олег Михайлович Выполнено за 1 час. 30 мин. [Показать отчёт]
Научился: Научился создавать запрос используя First, Where, использовать основы LINQ.  
Сложности: Сложностей нет. 
Комментарии: Замечаний нет. Огромное спасибо за курс!!! 
  Итого:   24 видеоурока 10 час. 04 мин.
9 чел. ★ 4.99  
  Финалисты:   Электрон,   Олег Михайлович,   Алексей В.,   Сергей Соколов,   Yefim,   chokayes,   Сергей,   Tekashnik,   Александр .

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





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

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

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

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


Научился: Я прошёл оба курса по созданию телеграм-ботов, которые представлены в настоящий момент, и очень рекомендую их каждому из вас! Обучение прошло успешно, сейчас я даже взялся разработать бота для своего знакомого и эта работа уже находится в завершающей стадии.
Трудности: Курс невероятно прост для освоения, но требует терпения и трудолюбия, без этого никак не обойтись. Большое спасибо Кириллу за его труд!



Научился: Ура! Свершилось. Курс был очень интересным, но для меня оказался сложноватым. Особенно расстраивали исключения, которые появлялись время от времени на разных этапах разработки. Впрочем, я абсолютно не жалею, что взял этот курс - очень хорошая практика программирования на C# и особенно практика отладки - научился многим хитростям и приемам, о которых раньше не знал. Спасибо, огромное. Планирую, зайти на второй круг, так сказать) Начать писать еще один бот самостоятельно, выбрав, другую тему для магазина, под новый проект создать репозиторий на GitHub и попытаться глубже вникнуть в данную тематику.