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

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

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

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

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

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

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

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

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

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

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


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

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

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

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

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







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



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

# Название видеоурока Видео / Тесты Решило Рейтинг Доступ
1 FREE Singleton - Intro 00:05:31
57 чел. ★ 4.9 Free
  Рекомендуемая литература:
 
24765. Anatoli
6391. Владимир
30329. Алена
7138. Денис
2 Singleton - Config - Final 00:06:48
45 чел. ★ 5 $
  Мы начинаем серию коротких уроков по созданию класса
считывания данных из конфигурационного файла.
Для начала мы организуем несколько конфигурационных параметров
в виде констант и расположим их в основном классе Program.
 
11309. Sergej Piskun
16018. Andrej Gladkov
10494. Алексей В.
7683. Gražvydas Kairys
3 Singleton - Config - Git init 00:03:42
1 тест
45 чел. ★ 5 $
  На этом уроке мы про инициализируем git репозиторий
для проекта, который мы создали на прошлом уроке.
Систему git мы будем использовать для контроля версий
наших исходников, коммититить рабочие варианты
решения одной и той же задачи, да и просто
дополнительная практика использования git в разработке.
 
11313. Кирилл Бравин
10494. Алексей В.
9752. chokayes
7690. Babenko Oleg
4 Singleton - Config - Static 00:09:39
44 чел. ★ 5 $
  На этом уроке мы продемонстрируем, как
обращаться к константам из отдельного класса.
Для этого мы создадим новый класс Process(),
добавим в него метод demo(), в котором реализуем
вывод данных из констант класса Program().
Константы необходимо будет сделать статичными.
Так же мы порефакторим имена констант,
чтобы они были по стандарту ЗАГЛАВНЫМИ буквами.
 
11308. Michail Ostryj
4004. Елена
7690. Babenko Oleg
11316. Denis Morozov
5 Singleton - Config - Git add 00:02:20
42 чел. ★ 5 $
  На этом уроке мы зафиксируем очередные изменения
нашей программы с помощью команды commit в git репозитории.
Для начала мы посмотрим, что изменилось с последнего коммита.
Добавим изменённый и новый файлы на сцену и
закоммитим их в историю репозитория для фиксации
очередной рабочей версии нашей программы.
 
791. Валерий Жданов
20122. Andrei
7690. Babenko Oleg
11589. Yefim
6 Singleton - Config - Class 00:05:13
40 чел. ★ 5 $
  На этом уроке мы выделим всё, что касается
конфигурации в отдельный класс.
Для этого мы создадим новый класс Config()
и перенесём туда наши константы.
Так же нам нужно будет исправить появившиеся ошибки,
указав новое расположение констант.
 
7696. Vladimir Falejev
10558. Иван Воронин
10558. Иван Воронин
6391. Владимир
7 Singleton - Config - Git commit 00:02:16
1 тест
39 чел. ★ 4.9 $
  На этом уроке мы заново попрактикуемся в работе с git.
Вначале мы попробуем закоммитить изменения,
но увидим, что новый файл не попал в коммит.
Так как он не отслеживался системой git, его необходимо
вначале добавить на сцену и только потом закоммитить.
В дальнейшем система git будет отслеживать
изменения данного файла автоматически.
 
11308. Michail Ostryj
10558. Иван Воронин
8275. Tekashnik
11313. Кирилл Бравин
8 Singleton - Config - FileReader 00:11:45
1 тест
39 чел. ★ 5 $
  На этом уроке мы с вами доработаем класс Config(),
чтобы параметры хранились и загружались из файла.
Для этого создадим файл конфигурации,
перенесём в него настройки программы и
в классе Config() добавим метод считывания
из нашего конфигурационного файла.
 
11313. Кирилл Бравин
10558. Иван Воронин
8275. Tekashnik
8275. Tekashnik
9 Singleton - Config - Git default 00:04:39
1 тест
36 чел. ★ 5 $
  На этом уроке мы закоммитим все наши изменения.
Для начала мы создадим копию конфигурационного файла
с именем config.default.txt. Это необходимо делать,
чтобы небыло конфликтов из-за того, что у каждого разработчика
будет своя версия config.txt для корректной работы приложения.
Так же изменим значения файла config.default.txt
на значения для примера, чтобы каждый смог изменить их под себя.
 
6203. Николай Миролюбов
20122. Andrei
9567. Максим
10494. Алексей В.
10 Singleton - Config - Static field 00:09:57
36 чел. ★ 5 $
  На этом уроке мы поэкспериментируем с оптимизацией
загрузки конфигурационного файла.
Остановимся на варианте глобальной версии
с передачей в другие классы в качестве параметра.
Так же закоммитим наши изменения в git репозиторий.
 
11308. Michail Ostryj
2639. Морозов Юрий Александрович
2639. Морозов Юрий Александрович
9752. chokayes
11 Singleton - Config - Static class 00:06:31
33 чел. ★ 5 $
  На этом уроке мы продолжим оптимизации,
сделав всё в классе Config() статичным.
Так же оптимизируем классы Program() и Process()
для использования статичной версии класса Config().
После чего добавим загрузку конфига в классе Program().
 
10100. Александр Заскотченко
10100. Александр Заскотченко
11309. Sergej Piskun
11308. Michail Ostryj
12 Singleton - Config - Using pattern 00:07:54
1 тест
32 чел. ★ 5 $
  Мы рассмотрели множество рабочих вариантов
реализации, но на деле их эффективность
зависела от конкретной реализации и при
определённых условиях требовалась доработка.
На этом уроке мы наконец реализуем
шаблон проектирования: Синглтон (Singleton).
 
11309. Sergej Piskun
24765. Anatoli
7138. Денис
11310. Kiril Palajev
13 Singleton - Config - Cant extend 00:06:23
1 тест
32 чел. ★ 5 $
  На этом уроке мы вынесем из класса Config() код синглтона
в класс Singleton() и попробуем унаследовать его.
 
10494. Алексей В.
16018. Andrej Gladkov
11310. Kiril Palajev
24765. Anatoli
14 Singleton - Config - Super child 00:05:57
31 чел. ★ 5 $
  На этом уроке мы всё же разделим
класс Config() на две логические части.
Для этого мы выделим логику Синглона
в отдельный класс ConfigSingleton().
 
7693. Monachov Maksim
7690. Babenko Oleg
11310. Kiril Palajev
7696. Vladimir Falejev
15 Singleton - Timer - Pattern Design 00:08:15
1 тест
31 чел. ★ 5 $
  На этом уроке мы начинаем создание
класса Секундомер() для засекания времени
работы различных участков программы.
Для разработки этого класса мы воспользуемся
шаблоном проектирования Синглтон.
 
30514. Tom
11309. Sergej Piskun
11308. Michail Ostryj
16018. Andrej Gladkov
16 Singleton - Timer - Start / Click 00:05:25
1 тест
30 чел. ★ 5 $
  На этом уроке мы продолжим создание класса
Timer() при помощи шаблона синглтон.
Для начала мы добавим метод start()
в класс Timer() для запуска секундомера.
Так же мы добавим метод click(),
чтобы увидеть сколько времени прошло.
 
7693. Monachov Maksim
6391. Владимир
20122. Andrei
11589. Yefim
17 Singleton - Timer - Program 00:09:45
30 чел. ★ 5 $
  На этом уроке мы наконец добавим основной
класс для нашей программы: Program()
и добавим в метод Program.main() необходимый код
для демонстрации работы синглтона Timer().
 
6203. Николай Миролюбов
1232. Фомичева Наталья
11589. Yefim
11309. Sergej Piskun
18 Singleton - Timer - String vs Buffer Speed 00:10:58
1 тест
28 чел. ★ 5 $
  На этом уроке мы сравним скорость работы
между String и StringBuffer.
Для этого мы создадим новый класс StringSpeed()
с методами runString() и runStringBuffer().
 
20122. Andrei
6203. Николай Миролюбов
10494. Алексей В.
7683. Gražvydas Kairys
19 Singleton - Timer - Experiment 00:06:05
28 чел. ★ 5 $
  На этом уроке мы изучим класс Timer()
и выделим часть кода для нового синглтона.
Для этого нам понадобиться новый класс Log()
который будет реализован как синглтон
и заниматься логированием в консоль.
 
4004. Елена
6203. Николай Миролюбов
17947. Dmitry Sinitsin
17947. Dmitry Sinitsin
20 Singleton - Timer - Log class 00:08:45
1 тест
28 чел. ★ 5 $
  На этом уроке мы разделим наш синглтон Timer()
на две части: Timer() и SingleTimer().
Тот же эксперимент проведём и с классом Log().
После чего будет ясно, что лучше так не делать
и вернём код в состояние на момента начала урока.
 
10558. Иван Воронин
10558. Иван Воронин
11589. Yefim
1232. Фомичева Наталья
21 ФИНАЛЬНЫЙ УРОК без видео
7 тестов
13 чел. ★ 5 $
  Поздpaвляю!
Твoя зaдaча - прoверить cебя и пpойти тест, см. вкладку "Тест".

Напиши отзыв или видеообзор по этому видеокурсу.
 
20122. Andrei
7119. Новопашин Владимир
10309. Станислав
3922. Александр
22 VIP - Singleton - Timer - Enum 00:06:31
1 тест
28 чел. ★ 5 $
  На этом уроке мы реализуем синглтон
с использованием перечислений.
Для этого мы переделаем Log()
из класса (class) в перечисление (enum).
Тоже самое мы проделаем и с классом Timer()
 
6391. Владимир
17947. Dmitry Sinitsin
17947. Dmitry Sinitsin
7683. Gražvydas Kairys
  Итого:   22 видеоурока 2 час. 24 мин.
18 тестов
13 чел. ★ 5  
  Финалисты:   Иван Воронин,   Сергей Соколов,   Станислав,   Povilas Abramovicius,   Sergej Šugajev,   Александр,   Новопашин Владимир,   Tekashnik,   Andrei,   Dmitry Sinitsin,   Yefim,   Anatoli,   Tom .

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





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

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

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

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


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


Научился: Отличный паттерн проектирования) Делал этот курс давно, сейчас просто закрываю дыры) Всем рекоменндую!"
Трудности: Придумать, что было самым сложным