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

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

основатель — Волосатов Евгений Витольдович
Кирилл Шмойлов приглашает на свой Курс 2020.

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

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




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

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

После взноса 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 тест
111 чел. ★ 5 Done
  На этом уроке мы познакомимся с модульным тестированием.
Мы напишем небольшой калькулятор, в который добавим
проект для модульного тестирования, и покажем,
как это всё работает, как это нужно использовать.
Отчёт отправил: 14075. Rise Выполнено за 1 час. 24 мин. [Показать отчёт]
Научился: Впервые я увидел своими глазами, что такое "Модульное тестирование", про которое так часто слышал. Как я понял, "тестировочный" проект отличается от обычного тем, что обладает более расширенным инструментарием для отслеживания всего того, что творится во время выполнения "подопытного" проекта. 
Сложности: Все понятно. Спасибо за урок. 
2 Делегаты на кубиках 00:47:37
190 чел. ★ 4.9 Done
  На этом уроке подробно показываю и объясняю,
что такое делегаты, зачем они нужны и как их использовать.
Отчёт отправил: 14075. Rise Выполнено за 1 час. 22 мин. [Показать отчёт]
Научился: Хорошо повторил, что такое делегаты. 
Сложности: Найти картинки для кубиков в интернете. 
3 Нити на кубиках 00:42:59
1 тест
109 чел. ★ 4.7 Done
  Демонстрация использования потоков с делегатами на примере игральных кубиков.

Отчёт отправил: 14075. Rise Выполнено за 1 час. 14 мин. [Показать отчёт]
Научился: Запускать одновременно несколько потоков в одной программе. Раньше я их очень сильно боялся. И если мне нужно было, чтобы что-то в моей программе происходило "само по себе", я просто создавал таймер, куда пихал все, что мне нужно было.  
Сложности: Понять, по какому принципу работает условие if(InvokeRequired). Как я понял, это условие "усыпляет" наш поток, которым мы пытаемся добраться до свойства textDices.Text. Как только предыдущий поток в очередной раз "освобождает" это свойство, то тут же "просыпается" наш поток и изменяет его. При этом все последующие потоки, которые доходят до этого свойства "усыпляются". Если я не правильно это понял, то, пожалуйста, поправьте меня. Спасибо за урок. 
4 Телефон по TCP/IP протоколу 00:47:44
60 чел. ★ 4.9 Done
  На этом видеоуроке мы создадим три класса, которые удобно
использовать для передачи данных между двумя компьютерами.
Отчёт отправил: 14075. Rise Выполнено за 2 час. 58 мин. [Показать отчёт]
Научился: Впервые написал клиент-серверную программу, которая может работать и  как сервер и как клиент. Теперь есть понятие(самое примитивное и туманное) по какому принципу работают онлайн игры и приложения обмена данными. 
Сложности: Вся программа для меня довольно сложная. 
5 Обои рабочего стола 01:00:58
81 чел. ★ 4.9 Done
  Составляем программу - менеджер фоновых рисунков для рабочего стола.
Отчёт отправил: 14075. Rise Выполнено за 3 час. 48 мин. [Показать отчёт]
Научился: Взаимодействию с Windows API. 
Сложности: Подружиться с Windows API. Да, и почему то в редакторе реестра, в том параметре, где указывается путь к скриншоту, у меня написан короткий путь к файлу, а не полный. Поэтому у меня вместо фона устанавливался черный фон. Пришлось немного пошаманить с переменной dir, чтобы в этот параметр заносился полный путь. Я добился своего, но обратной стороной медали стало то, что теперь в перечне скриншотов в самой программе я не могу избавиться от косой черты в именах файлов. Но основную задачу я при этом выполнил - файлы успешно скачиваются по ссылке и устанавливаются в виде фона. Если будет время и настраение - буду думать как избавиться от косой черты. Спасибо за интересный, хоть и сложный урок. 
6 Говорящие часы. Запись голоса 00:57:32
79 чел. ★ 4.9 Done
  На уроке создаём программу для записи звуковых файлов,
которые будут использованы для создания говорящих часов.
Отчёт отправил: 14075. Rise Выполнено за 1 час. 58 мин. [Показать отчёт]
Научился: Повторил запуск делегатов в отдельном потоке. (Но до сих пор с трудом понимаю разницу между Invoke и BeginInvoke). Научился записи wav-файлов с микрофона. 
Сложности: Понимание запуска делегатов в параллельном/асинхронном потоке. 
7 Говорящие часы. Воспроизведение 00:38:41
76 чел. ★ 5 Done
  На уроке пишем программу,
которая показывает и говорит текущее время
Отчёт отправил: 14075. Rise Выполнено за 10 час. 29 мин. [Показать отчёт]
Научился: Научился работать с wav - файлами. Повторил создание дополнительных потоков через класс Thread. 
Сложности: Разобраться с тем, как запускать звуковые файлы через событие клика. 
8 ПОЛУФИНАЛЬНЫЙ УРОК 00:08:08
49 чел. ★ 4.8 Done
  Задание:
Посмотрите видеообзор об этом курсе Елены Вставской.
Она подробно рассказывает о программах, которые вы уже написали -
посмотрите, какие могли быть сложности и как с ними справиться.
Задание.
Написать отзыв об этом видео-курсе,
прикрепить свою фотографию,
указать своё имя и фамилию.

Отчёт отправил: 14075. Rise Выполнено за 16 мин. [Показать отчёт]
Научился: Всем добрый день! Узнал интересную вещь о том, как сделать так, чтобы при запуске приложения - консоль не появлялась. На самих видеоуроках узнал как сделать так, чтобы параллельно запустить метод асинхронно с помощью делегата, что часто бывает полезным.  Надеюсь, что узнаю еще много-много полезных вещей. Спасибо за уроки. С уважением, Дмитрий Сахаров. 
Сложности: Ничего не бывает сложным, когда разберешься. 
9 Клиент-сервер для смены обоев 01:00:07
1 тест
63 чел. ★ 4.9 Done
  Создание клиент-серверного приложения для удалённой смены фоновой картинки на рабочем столе.
На компьютере "жертве" стоит клиентская программа, которая подключается к серверу за получением ссылки на скачивание картинки, которую следует разместить на рабочем столе. Серверная программа обрабатывает подключения клиентов, отправляя им ссылки для фоновых картинок. Управление серверной программой реализована через редактирование конфигурационного файла.
Отчёт отправил: 14075. Rise Выполнено за 2 час. 15 мин. [Показать отчёт]
Научился: Закрепил знания по тому, как с помощью Windows API поменять фоновую картинку на ПК. Продолжаю закреплять знания по написанию программ, которые умеют общаться между собой по TCP/IP.  
Сложности: Понять, как осуществляется обмен данными между ПК. 
10 Мотиватор 00:31:12
1 тест
85 чел. ★ 4.9 Done
  На этом уроке мы научимся загружать картинку и рисовать на ней.
Результаты стараний отобразим на экране и сохраним в файл.
Отчёт отправил: 14075. Rise Выполнено за 52 мин. [Показать отчёт]
Научился: Научился рисовать линии на картинке, рисовать текст, настраивать шрифт. Запускать файл. 
Сложности: Все просто. Спасибо за урок. 
11 Печать таблицы + экспорт в Excel 00:38:16
1 тест
70 чел. ★ 4.9 Done
  Как вывести на печать таблицу.
Как экспортировать таблицу в Excel
Самый простой и быстрый способ.
Отчёт отправил: 14075. Rise Выполнено за 4 час. 0 мин. [Показать отчёт]
Научился: Переводить данные из datagridview в формат html. Переводить данные из datagridview в формат csv. Познакомился с контролом webbrowser 
Сложности: Составление текста для html. 
12 Работа с WinAPI 00:49:53
1 тест
66 чел. ★ 4.9 Done
  Использование функций WinAPI для поиска и закрытия окон.
Отчёт отправил: 14075. Rise Выполнено за 1 час. 6 мин. [Показать отчёт]
Научился: Пользуясь winapi - закрыть нужное окошко, зная лишь его название. 
Сложности: Понять билиберду в скопипащенной winapi. 
13 Построение графиков 01:10:27
1 тест
61 чел. ★ 4.9 Done
  Рано или поздно любому программисту приходится строить графики.
Чтобы не изобретать велоиспед - лучше воспользоваться готовым решением.
На уроке мы установим библиотеку ZedGraph и познакомимся с её возможностями.
Настроим оси координат, легенду, добавим график, нарисуем стрелочки, всё разукрасим.
Отчёт отправил: 14075. Rise Выполнено за 1 час. 42 мин. [Показать отчёт]
Научился: Познакомился с библиотекой ZedGraph. Теперь имею представление как нарисовать примитивный график. 
Сложности: Разобраться с МажорГрид и МинорГрид. 
14 ФИНАЛЬНЫЙ УРОК 00:23:23
37 чел. ★ 4.8 Done
  Задание:
Записать видеообзор пары своих программ из курса Новые технологии.

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

Отчёт отправил: 14075. Rise Выполнено за 1 час. 43 мин. [Показать отчёт]
Научился: Научился ставить простой php сервер на локальную машину с помощью программы DevServer 17. Подключаться си-шарпом к БД и выполнять селекты, апдейты и инсерты я умел еще на microsoft sql server. 
Сложности: Я так и не понял, каким образом можно heidi sql подключить к нашей локальной БД? У меня возникает та самая ошибка. И в верху написано, что нужно "выполнить следующую команду: mysql> set @@global.show_compatibility_56=ON;" Но, при этом автор урока видимо совсем забыл, что объясняет это людям, которые свой сервер пока никогда не устанавливали и понятия не имеют  - как и куда нужно вставить эту строчку. Я так и на разобрался в этом, к сожалению. Пришлось создавать свою бд и таблицу во встроенном в сервер модуле-утилите phpmyAdmin. Спасибо за урок, все остальное понятно. 
16 VIP урок - Создание архиватора - 1 часть 00:39:44
44 чел. ★ 5 Done
  Архиватор - это программа, которая несколько файлов собирает в один.
Без сжатия. Сжатием занимается компрессор.
На этом уроке мы начнём писать архиватор.

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

Продолжительность урока 1 час 22 минуты,
Это программа - отличный тренажёр для начинающих программистов и хорошая программа в копилку вашего портфолио.
  Итого:   18 видеоуроков 13 час. 59 мин.
8 тестов
4 чел. ★ 4.9  
  Финалисты:   Иван Воронин,   Permitin Alexey,   vip,   Yefim .

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





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

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

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

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


Научился: Никогда до этого не занимался описыванием своих действий в видео для youtube, как это сделать для меня было и раньше понятно, но необходимости делать не возникало. И действительно, для того, кто собирается быть программистом важно это научиться это делать уверенно и толково. В этом уроке я как раз потренировался в этом деле.
Трудности: Сначала определиться со сценарием (решить что стоит сказать и показать в видео), а также остаться удовлетовренным от своей записи.
Я заметил, что после комментариев Елены и Ильи, которые проходили курс НТ, были добавлены еще полезные видеоуроки. Следуя этой традиции я скажу, что вот обратил внимание на упоминание в одном из вебинаров про урок, где, если я не попутаю в своих воспоминаниях, делалась программа, которая брала курсы валют с сайта. Сможем ли мы увидеть и этот вебинар?
Смотреть видеозапись: https://www.youtube.com/watch?v=5gWNyZhOPEI


Научился: Научился материализовать свои хотелки=)
Затянул с видео, но в следующий раз будет лучше)