C# обучение для чайников

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

основатель — Волосатов Евгений Витольдович
Только до конца недели. Вступление в Клуб Формулистов с 50% + 20% скидкой.

Новые технологии

Практическое знакомство с различными технологиями и методиками программирования: делегаты, потоки, нити, полиморфизм, наследование и многое другое. Создание программ для работы с микрофоном, принтером, на построение графиков, создание архиватора.




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

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

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

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

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

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

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

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


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

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

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

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

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







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



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

# Название видеоурока Видео / Тесты Решило Рейтинг Доступ
1 FREE Модульное тестирование 00:36:07
1 тест
107 чел. ★ 5 Done
  На этом уроке мы познакомимся с модульным тестированием.
Мы напишем небольшой калькулятор, в который добавим
проект для модульного тестирования, и покажем,
как это всё работает, как это нужно использовать.
Отчёт отправил: 10558. Иван Воронин Выполнено за 50 мин. [Показать отчёт]
Научился: Созданию Unit тестов в Visual Studio 
Сложности: найти время 
Комментарии: Отличный урок, юнит тесты 1х1 как в Java, поэтому проблем не возникло, всё очень знакомо. Добавил кнопку вычитания, так же соответствующую функцию и тесты. 
2 Делегаты на кубиках 00:47:37
188 чел. ★ 4.9 Done
  На этом уроке подробно показываю и объясняю,
что такое делегаты, зачем они нужны и как их использовать.
Отчёт отправил: 10558. Иван Воронин Выполнено за 1 час. 00 мин. [Показать отчёт]
Научился: Закрепил делегаты 
Сложности: найти время 
Комментарии: Ошибки вначале не было, так как уже на автопилоте реализовал вначале инициализацию где надо. Подготовил в фотошопе текстурки для кибиков с прозрачным фоном, так как углы скруглённые. Отличный урок, лишний раз попрактиковался с делегатами, отличная штука. 
3 Нити на кубиках 00:42:59
1 тест
107 чел. ★ 4.7 Done
  Демонстрация использования потоков с делегатами на примере игральных кубиков.

Отчёт отправил: 10558. Иван Воронин Выполнено за 35 мин. [Показать отчёт]
Научился: Закрепил работу с Invoke 
Сложности: найти время 
Комментарии: Реализовал через массив элементов Dice, удобнее потом через foreach с ними работать. Отличный урок как всегда. Очень хороший пример запуска функций из других потоков. 
4 Телефон по TCP/IP протоколу 00:47:44
58 чел. ★ 5 Done
  На этом видеоуроке мы создадим три класса, которые удобно
использовать для передачи данных между двумя компьютерами.
Отчёт отправил: 10558. Иван Воронин Выполнено за 5 мин. [Показать отчёт]
Научился: повторил пройденное 
Сложности: ничего 
Комментарии: При прохождении курса "Сокобан", уже проходил этот урок, поэтому проблем не возникло, просмотрел видео ещё разок =) 
5 Обои рабочего стола 01:00:58
80 чел. ★ 4.9 Done
  Составляем программу - менеджер фоновых рисунков для рабочего стола.
Отчёт отправил: 10558. Иван Воронин Выполнено за 2 час. 35 мин. [Показать отчёт]
Научился: Смене фоновых картинок рабочего стола. 
Сложности: найти время 
Комментарии: Добавил иконку для приложения. Реализовал загрузку картинок с интернет. Проверяет, загружается ли jpg картинка, если нет, ничего не делает. Проверяет, загружается ли вообще картинка, если нет, отменяет. Определяет имя файла картинки в сети интернет и с этим же именем сохраняет в нужную директорию (относительные пути отлично работают). Если файл с таким именем уже существует, то не качает картинку (чтобы не затереть случайно другую). При удалении картинки из списка, проверяется наличие файла в папке, если файл имеется, вначале отключается картинки из пикчурбокса, потом удаляется сам файл. Если после удаления файла, он не найден, т.е. удалился корректно, удаляется запись о нём в листбоксе. Реализовали динамическое изменение листбокса, чтобы не перезагружать весь список картинок каждый раз, это слишком ресурсоёмко, да и потом, если загрузил картинку из сети, знаешь, что она добавилась в конце списка, легко найти. При рабоче с реестром использовал using. Добавил определение полного пути относительно запущенного приложения, чтобы Windows 10 была счастлива =) 
6 Говорящие часы. Запись голоса 00:57:32
78 чел. ★ 4.9 Done
  На уроке создаём программу для записи звуковых файлов,
которые будут использованы для создания говорящих часов.
Отчёт отправил: 10558. Иван Воронин Выполнено за 2 час. 30 мин. [Показать отчёт]
Научился: NAudio 
Сложности: найти время 
Комментарии: Оптимизировал количество файлов, их получилось 36. Реализовал круглый лейбл, на который надо наводить и говорить. Библиотеку скачал и установил через NuGet. Отличный урок, очень понравился, всё коротко и ясно. з.ы. так как этот урок уже выполнял при прохождении курса "Хранитель экрана", то просто продублировал отчёт. з.з.ы. да, было бы не плохо в новом движке учесть этот момент, чтобы если урок уже был выполнен, он автоматом отображал отчёт о выполнении везде, где он был бы прикреплён как урок. 
7 Говорящие часы. Воспроизведение 00:38:41
75 чел. ★ 5 Done
  На уроке пишем программу,
которая показывает и говорит текущее время
Отчёт отправил: 10558. Иван Воронин Выполнено за 2 час. 30 мин. [Показать отчёт]
Научился: Закрепил запись с микрофона 
Сложности: найти время 
Комментарии: Реализовал оптимизированный список необходимых файлов. Реализовал функции с общей озвучкой чисел. Объединил формы записи голоса и часов в одной программе. Добавил меню, через которое можно вызывать запись голоса. Используется один общий массив файлов для записи и воспроизведения. Реализовал озвучку секунд. Реализовал воспроизведение каждый час. При открытии записи голоса, основное окно скрывается. При закрытии окна записи голоса высвобождаются ресурсы и отображается основная форма. Отличные вип уроки, очень понравились, ребёнок в восторге. з.ы. так как уже выполнял этот урок, просто продублировал отчёт. 
8 ПОЛУФИНАЛЬНЫЙ УРОК 00:08:08
48 чел. ★ 4.8 Done
  Задание:
Посмотрите видеообзор об этом курсе Елены Вставской.
Она подробно рассказывает о программах, которые вы уже написали -
посмотрите, какие могли быть сложности и как с ними справиться.
Задание.
Написать отзыв об этом видео-курсе,
прикрепить свою фотографию,
указать своё имя и фамилию.

Отчёт отправил: 10558. Иван Воронин Выполнено за 6 мин. [Показать отчёт]
Научился: Ничему 
Сложности: найти время 
Комментарии: Первая половина курса понравилась своим разнообразием полезных уроков. Вначале изучали "Модульное тестирование", отличная вещь для разработки в команде, особенно когда имеется разделения задач. Далее прошли два урока с кубиками, на которых демонстрировалась работа с делегатами и многопоточностью, отличная и полезная вещь, уже применил данные знанания не раз. Создание менеджера картинок для рабочего стола, отличная утилита, особенно в последних версия Windows, так как они встроенную утилиту постоянно кудато пытаются спрятать =) Урок, на котором создавали клиент-серверное приложение по смене обоев, даёт очень полезное знание по устройству данного типа работы приложений по сети. Очень полезно при разработке игр, данный опыт очень пригодится. Спасибо за данный курс, он на первый взгляд вроде бы коротковат, мало уроков, но даёт очень много полезных знаний по разным направлениям. 
9 Клиент-сервер для смены обоев 01:00:07
1 тест
62 чел. ★ 4.9 Done
  Создание клиент-серверного приложения для удалённой смены фоновой картинки на рабочем столе.
На компьютере "жертве" стоит клиентская программа, которая подключается к серверу за получением ссылки на скачивание картинки, которую следует разместить на рабочем столе. Серверная программа обрабатывает подключения клиентов, отправляя им ссылки для фоновых картинок. Управление серверной программой реализована через редактирование конфигурационного файла.
Отчёт отправил: 10558. Иван Воронин Выполнено за 2 час. 00 мин. [Показать отчёт]
Научился: Закрепил передачу массива байт по сети. 
Сложности: найти время 
Комментарии: Просто бомбовый урок, ничего лишнего, я перенёс наработки из прошлого урока. Добавил чтобы по умолчанию использовало стиль Fill. Запустил приложение на Windows 7 и на Windows 10, отлично работают. Что мне нравится в уроках на этом проекте, всегда есть какая то изюминка, которая и делает весь урок обязательным в прохождении. В каждом уроке всегда ищу эту самую изюминку и кладу в свою копилку знаний (ну или как минимум закрепляю ранее приобретённые знания). Ещё раз спасибо, то что было продемонстрировано в этом уроке, как раз то, что я и ожидал увидеть, 100% ожидания оправдались. Сложился пазлик =) 
10 Мотиватор 00:31:12
1 тест
84 чел. ★ 4.9 Done
  На этом уроке мы научимся загружать картинку и рисовать на ней.
Результаты стараний отобразим на экране и сохраним в файл.
Отчёт отправил: 10558. Иван Воронин Выполнено за 20 мин. [Показать отчёт]
Научился: Повторил пройденное 
Сложности: найти время 
Комментарии: Разбил задачу на три этапа, создав для этого отдельные кнопки. Отличный урок, всё просто до безумия. з.ы. StringBuilder sb = new StringBuilder(); sb.append("С 8 марта поздравляю\n"); sb.append("Пусть прожитые ранее года\n"); sb.append("Мудростью и силой отразятся!\n"); sb.append("Пускай сбываются мечты,\n"); sb.append("Чего бы вы не пожелали!\n"); System.out.print(sb.toString()); 
11 Печать таблицы + экспорт в Excel 00:38:16
1 тест
68 чел. ★ 5 Done
  Как вывести на печать таблицу.
Как экспортировать таблицу в Excel
Самый простой и быстрый способ.
Отчёт отправил: 10558. Иван Воронин Выполнено за 50 мин. [Показать отчёт]
Научился: Печати на принтер через WebBrowser 
Сложности: найти время 
Комментарии: Отличный способ, обязательно буду использовать, это же можно при помощи html+css красоту печатать =) 
12 Работа с WinAPI 00:49:53
1 тест
64 чел. ★ 5 Done
  Использование функций WinAPI для поиска и закрытия окон.
Отчёт отправил: 10558. Иван Воронин Выполнено за 1 час. 30 мин. [Показать отчёт]
Научился: Закрепил работу с WinAPI 
Сложности: найти время 
Комментарии: Добавил второй listBox для списка закрываемых окон. Добавил кнопки добавления в правый список и удалению оттуда. В левом списке не отображается то, что было добавлено в правый список. При установке галочки "Автоматического завершения..." завершаются все окна, добавленные в правый список. Отличный урок, очень полезная вещь, будет использовано в разработке дополнительной защиты ПК от запуска несанкционированного ПО. з.ы. на первом скриншоте выбран калькулятор из списка, на втором скриншоте добавлен в правый список и пропал из левого. 
13 Построение графиков 01:10:27
1 тест
59 чел. ★ 4.9 Done
  Рано или поздно любому программисту приходится строить графики.
Чтобы не изобретать велоиспед - лучше воспользоваться готовым решением.
На уроке мы установим библиотеку ZedGraph и познакомимся с её возможностями.
Настроим оси координат, легенду, добавим график, нарисуем стрелочки, всё разукрасим.
Отчёт отправил: 10558. Иван Воронин Выполнено за 1 час. 30 мин. [Показать отчёт]
Научился: ZenGraph 
Сложности: пришлось найти возможность добавить ZenGraphControl в Toolbox 
Комментарии: Так как в уроке добавить ZenGraphControl в Toolbox не удалось, использую версию VS2k17, но погуглив, наткнулся на вариант, просто перенести библиотеку в районе Toolbox и добавил без проблем. Спасибо, библиотека пригодится, графики вещь полезная и наглядная. 
14 ФИНАЛЬНЫЙ УРОК 00:23:23
35 чел. ★ 4.9 Done
  Задание:
Записать видеообзор пары своих программ из курса Новые технологии.

Отчёт отправил: 10558. Иван Воронин Выполнено за 15 мин. [Показать отчёт]
Научился: Повторил пройденное 
Сложности: найти время 
Комментарии: Курс бомбовый, собрано много разнообразных уроков, каждый из которых полезен по своему, после прохождения урока по WinAPI, недавно столкнулся с проблемой, зависло приложение, не снималось никак, отказано в доступе, написал своё приложение по поиску и снятию всех зависших приложений, отобразило помимо зависшего ещё несколько, о которых даже не подозревал. з.ы. так как этот курс не привязан к какой то определённой тематике, можно добавлять сюда отдельные мини уроки по новым технологиям. 
15 VIP урок. C# + MySQL через DataSet 00:45:50
1 тест
53 чел. ★ 4.9 Done
  Установка и настройка MySQL.
Создание базы данных.
Создание подключения.
Всё необходимое для начала работы с базой данных, с нуля.

Отчёт отправил: 10558. Иван Воронин Выполнено за 2 час. 00 мин. [Показать отчёт]
Научился: Связке изменений в DataGridView с БД. 
Сложности: найти время 
Комментарии: Интересная система обновления данных на лету в БД при работе с DataGridView, но мне кажется лучше команды обновления/добавления/удаления использовать кастомные, так как странновато оно как то их генерит, а если нужна специфическая структура БД, то автогенератор начинает тупить. Думаю, чтобы оно не тупило, надо и таблицы генерить таким же способом =) 
16 VIP урок - Создание архиватора - 1 часть 00:39:44
42 чел. ★ 5 Done
  Архиватор - это программа, которая несколько файлов собирает в один.
Без сжатия. Сжатием занимается компрессор.
На этом уроке мы начнём писать архиватор.

Отчёт отправил: 10558. Иван Воронин Выполнено за 45 мин. [Показать отчёт]
Научился: Повторил пройденное 
Сложности: найти время 
Комментарии: Отличное начало отличной темы, как раз подобная штука очень пригодится, уже даже есть отличная идея как хранить данные о вложенных файлах в один большой поток. Об этом говорил на курсе Viri. 
17 VIP урок - Создание архиватора - 2 часть 00:57:52
24 чел. ★ 4.9 Done
  Продолжение урока по созданию архиватора.
Используется FileStream, BinaryReader, BinaryWriter.
Почитать о потоках можно здесь: http://kzachetu.ru/theory/4/112
Отчёт отправил: 10558. Иван Воронин Выполнено за 1 час. 20 мин. [Показать отчёт]
Научился: Повторил пройденное 
Сложности: найти время 
Комментарии: Отличный урок, очень полезный, подобные работы с файлами делал в php через консоль =) чтобы склеивать файлы в один цельный. 
18 VIP урок. Игра Жизнь 01:22:45
5 чел. ★ 5 Done
  Я познакомился с этой игрой в дестве, когда даже компьютеров не было, играть в неё можно было только на листке бумаги в клетку. На уроке я расскажу правила игры, потом мы создадим класс по реализации логики игры, затем, используя метод динамического программирования, я покажу, как можно в 10 разу ускорить расчёт нового поколения (это по желанию), и, под конец, подключив созданный класс мы напишем саму игру.

Продолжительность урока 1 час 22 минуты,
Это программа - отличный тренажёр для начинающих программистов и хорошая программа в копилку вашего портфолио.
Отчёт отправил: 10558. Иван Воронин Выполнено за 1 час. 44 мин. [Показать отчёт]
Научился: просто БОМБОВЫЙ урок, спасибо огромное, не мало я времени провёл, больше всего отняло время функция на основе динамического программирования, до утра просидел но довёл до конца, мысленно всё было реализовано, надо было отточить и обкатать, в итоге что классическая функция, что на основе динамик. программирования работают идеально при этом поле теперь единое целое, без границ, что очень хорошо видно на видео приложенном к данному заданию з.ы. ничего нигде не подглядывал, сам сидел всю ночь до утра и пилил, выпито: 1 литр кофе сделал иконку в фотошопе, так же сделал анимашку для показа пошагово как рисовал на поле в клеточку 
Сложности: Урок был выполнен ещё в далёком 2016 году: https://www.videosharp.info/10558/checking/bilife=130 Тогда я попрактиковался в динамическом программировании, чтобы зациклить игровое поле. 
Видеообзор: 3H5Nd1mZICE
  Итого:   18 видеоуроков 13 час. 59 мин.
8 тестов
4 чел. ★ 4.93  
  Финалисты:   Иван Воронин,   Permitin Alexey,   vip,   Yefim .

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





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

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

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

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


Научился: Очень интересный и полезный курс, в видео-обхоре рассмотрел клиент-серверные обои и мотиватор. Следующий курс - книжка оценок



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