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 Начало работы с HeadHunter API 00:12:29
32 чел. ★ 4.9 Done
  На этом уроке мы рассмотрим работу API HH.RU
и получим данные о вакансии

Отчёт отправил: 17947. Dmitry Sinitsin Выполнено за 48 мин. [Показать отчёт]
Научился: JSON - JavaScript Object Notation Залезли под капот сайта и чуть посмотрели что откуда берется. Преимущества JSON: - Он компактен. - Предложения легко читаются и составляются как человеком, так и компьютером. - Легко преобразовать в структуру данных для большинства ЯП (числа, строки, логические переменные, массивы и так далее) - Многие языки программирования имеют функции и библиотеки для чтения и создания структур JSON. 
2 Все запросы - через приложение 00:19:38
1 тест
29 чел. ★ 4.9 Done
  На этом уроке мы создадим приложение на C# и получим
информацию о вакансии, используя HeadHunter API при помощи нашего приложения
Отчёт отправил: 17947. Dmitry Sinitsin Выполнено за 2 час. 13 мин. [Показать отчёт]
Научился: .NET Framework 4.6.1 при создании приложения. Может и на воду дую, но подсмотрел что у Валерия в видео, то и себе в проекте поставил, во избежание разночтений. ... и на 5 минуте видео прозвучала рекомендация указывать этот фреймворк )) Три слэша и ENTER == блок комментариев 
3 Из JSON всё по полочкам 00:14:43
1 тест
27 чел. ★ 4.9 Done
  На этом уроке мы научимся парсить JSON ответ и получим
отдельные параметры вакансии
Отчёт отправил: 17947. Dmitry Sinitsin Выполнено за 1 час. 35 мин. [Показать отчёт]
Научился: парсинг - берете несколько кусков чужого кода, смотрите то что вам нужно оттуда, ищете закономерности, вложенности, признаки, символы отделяющие нужные значения. Привязываясь к этим обнаруженным правилам используете готовый шаблон вроде NewtonSoft либо написав самостоятельно, выдергиваете нужные значения и применяете в своих переменных и далее со всеми остановками вплоть до Голутвина )  
4 Свободный поиск по вакансиям 00:14:47
27 чел. ★ 4.9 Done
  На этом уроке мы будем осуществлять поиск вакансий по определенному критерию и выводить
их списком


Отчёт отправил: 17947. Dmitry Sinitsin Выполнено за 1 час. 4 мин. [Показать отчёт]
Научился: с замиранием сердца следил за поисками Валерия причины ошибки вызова прежнего метода при уже написанном новом. Урок супер! Рекомендую. Поскольку парсили не одну запись, воспользовались циклом foreach (dynamic item in obj.items) 
5 Меняем внешний вид 00:10:52
26 чел. ★ 5 Done
  На этом уроке мы изменим интерфейс нашей программы
Отчёт отправил: 17947. Dmitry Sinitsin Выполнено за 28 мин. [Показать отчёт]
Научился: перепахали экранную форму приложения, удалили textBox и кнопки, использовали DataGridView и новую кнопку поиска. 
6 Структура вакансии 00:13:24
1 тест
25 чел. ★ 4.9 Done
  На этом уроке мы создадим новую сущность - структуру вакансии Vacancy
Отчёт отправил: 17947. Dmitry Sinitsin Выполнено за 28 мин. [Показать отчёт]
Научился: воспользовались ифэлзом и тернарным оператором для проверки получаемых данных. 
7 Предложения - в таблицу 00:19:44
1 тест
24 чел. ★ 4.9 Done
  На этом уроке мы заполним таблицу данными о вакансиях и реализуем свободный поиск по контексту из поискового поля
Отчёт отправил: 17947. Dmitry Sinitsin Выполнено за 1 час. 2 мин. [Показать отчёт]
Научился: пришлось заняться дебагом в public Vacancy (dynamic obj) - вместо точек в части полей понаставил низкие подчёркивания - поля не парсились. Нашел. Исправил.Победил. 
8 Пошаговая отладка 00:07:42
25 чел. ★ 4.9 Done
  НА этом уроке мы сделаем пошаговую отладку заполнения таблицы
и внесем изменения в проект
Отчёт отправил: 17947. Dmitry Sinitsin Выполнено за 19 час. 37 мин. [Показать отчёт]
Научился: F9 - поставить точку брякпойнта в текущей строке UPD - заменил вторую иллюстрацию на более информативную 
9 Переезжаем на WPF 00:12:57
6 тестов
24 чел. ★ 4.9 Done
  На этом уроке мы переведем наш проект на платформу WPF
Отчёт отправил: 17947. Dmitry Sinitsin Выполнено за 3 дня 27 мин. [Показать отчёт]
Научился: похоже WPF не прощает удаления грида - кнопка не сохранилась, придётся переделать. Создавая новые объекты на форме - предыдущие пропадали. У меня инглиш вершн, у Валерия - русская. UPD 20181126 Виноват Валерий. С его лёгкой руки обновил своё резюме на хедхантере, вышли на связь кировские работодатели, предложили вакансии. Сначала заинтересовался позицией разработчика C#, однако, посмотрев задание для соискателя понял, что кишка тонкА. Однако, предложения поступали. Позиция Business Intelligence привлекла знакомым SQL, вроде уж тут-то я не лыком шитый )). T-SQL оказался понятным, но с JOIN пока на Вы. Отсюда девиации в сторону от видеоуроков. Даже если не попаду на новую должность, любопытно добить задание. Валерий, Ваши уроки дают путёвки в жизнь )  
10 Полная информация 00:14:13
2 теста
23 чел. ★ 4.9 Done
  На этом уроке мы выведем полную информацию о вакансии в браузере
Отчёт отправил: 17947. Dmitry Sinitsin Выполнено за 45 мин. [Показать отчёт]
Научился: принудительное преобразование типов(если невозможно неявное приведение) указывай в круглых скобках перед объектом, требующим привЕдения(преобразования). Process.Start() - запускает новое окно браузера с адресом сайта из скобок Exception ex - перехватывает ошибки исполнения программы и позволяет вывести пользователю результат перехвата для ознакомления. 
11 ПРОМЕЖУТОЧНЫЙ ВИДЕО ОБЗОР без видео
17 чел. ★ 4.9 Done
  Мы уже многое сделали на нашем видеокурсе, и автору очень важно
узнать мнение о данном курсе и получить обратную связь
в форме видео-презентации и ответов на вопросы.

Сделай видео-презентацию своей программы.
Отчёт отправил: 17947. Dmitry Sinitsin Выполнено за 35 мин. [Показать отчёт]
Научился: созданное приложение способно распарсить(считать и передать в приложение для дальнейшего применения) JSON (JavaScript Object Notation — текстовый формат обмена данными, основанный на JavaScript) в динамический объект, выводимый в экранную форму с возможностью вызова веб-страницы с опубликованной вакансией. Преимущество приложения - без необходимости поиска в традиционном браузере находить определенную информацию в соответствии с задаваемыми критериями поиска. Браузер - не единственный способ поиска в сети. Всё API работает по протоколу HTTPS. Авторизация осуществляется по протоколу OAuth2. Все данные доступны только в формате JSON. Базовый URL — https://api.hh.ru/ Возможны запросы к данным любого сайта группы компаний HeadHunter Даты форматируются в соответствии с ISO 8601: YYYY-MM-DDThh:mm:ss±hhmm. В уроках Валерия нравится способность автора найти решение проблемы в прямом эфире с привлечением справочной информации из сети. Я бы прикрутил к приложению автоматический парсинг с периодом раз в сутки и алертом на email или в СМС по указанной вакансии. Продолжению курсов Валерия Владимировича всегда рад, веб-дизайн выглядит красочно и нравится больше других направлений. В идеях вертится функционал, позволяющий отследить рост курсантов не на основе количества часов, а в разрезе лет обучения (работал в такой-то сфере == жил на 20 тугриков в месяц, после года обучения нашел новую должность в такой-то сфере == живу на 30 тугриков в месяц). Для того, чтобы заставить себя учиться, я расстался с ремонтом банкоматов за 30 тугриков в месяц и на почте служу ямщиком за 20, но учусь, чего себе не позволял в банковские времена. Идей масса, надо учить матчасть дальше. 
Видеообзор: 8uRMPnEruKo
12 Переходим на профессиональный уровень 00:12:30
2 теста
16 чел. ★ 5 Done
  На этом уроке мы создадим новое wpf-приложение в рамках нашего проекта
и реализуем дизайн красивого меню
Отчёт отправил: 17947. Dmitry Sinitsin Выполнено за 1 час. 10 мин. [Показать отчёт]
Научился: F4 - properties of current object hotkey Set as StartUp Project - в контекстном меню пункт, если не хочется каждый раз выбирать в выпадающем меню рядом с кнопкой Start XAML применили для создания меню на форме приложения. С помощью XAML описывается пользовательский интерфейс. Логика приложения управляется процедурным кодом (С#, VB, JavaScript). XAML может использоваться как для web-приложений, так и для desktop приложений. VerticalAlignment - вертикальное выравнивание. id указывается в XAML так -> x:Name="имя_объекта"  
13 Функционал главного меню 00:06:46
1 тест
16 чел. ★ 4.9 Done
  На этом уроке мы создадим окно тестирования и вызовем его из главного меню
Отчёт отправил: 17947. Dmitry Sinitsin Выполнено за 45 мин. [Показать отчёт]
Научился: для открытия в WPF-приложении нового окна по событию (к примеру клик мышкой) создай новый объект и запусти его методом ___.ShowDialog() или ___.Dialog() WPF поддерживает возможность создания модальных диалоговых окон. ShowDialog отключает все остальные окна в приложении и возвращает к ним доступ только тогда, когда окно закрывается. Диалоговое окно — это особый тип окна, используемый приложениями для взаимодействия с пользователями для выполнения задач (открытие файлов и печати документов). Диалоговые (модальные) окна позволяют пользователю принять или отменить задачу, для которого они были показаны.  
14 Функционал тестового стенда 00:09:13
1 тест
16 чел. ★ 4.9 Done
  На этом уроке мы зададим функционал нашего тестового окна-стенда Windowtest
чтобы в дальнейшем мы могли проверять результаты различных запросов

Отчёт отправил: 17947. Dmitry Sinitsin Выполнено за 50 мин. [Показать отчёт]
Научился: библиотека dll подключает функционал к экранным формам (наполняет пустой муравейник жителями, способными выполнять некие действия, чем оживить пустой дом). VS2017 позволяет это сделать через контекстное меню "Подключить ссылку"(Add -> Reference). Найдя нужную dll и подтвердив выбор, не забудь... ...Подключить в пространствах имён (namespaces) Using HHLibrary; или другую библиотеку, какая у кого используется. 
  Итого:   14 видеоуроков 2 час. 48 мин.
16 тестов
15 чел. ★ 4.92  
  Финалисты:   Chip,   vip,   Dmitry Sinitsin,   Tekashnik,   Александр,   Новопашин Владимир,   Anton,   Денис,   no name,   Rita,   Max,   Владимир,   Дмитрий,   Николай Денисов,   Булат .

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





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

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

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

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


Научился: 3. Трудно сказать, я не увидел того что хотел. Но, несомненно, самостоятельная проработка принесла пользу. 4. Не люблю я критиковать это требует много времени на анализ, а по факту потом никто не оценит и ничего не изменится. Если 99% времени потратить на самостоятельную доработку, то курс удался. 5. async/await, исправить некоторые проблемы, отрифакторить, сделать так чтоб вакансию можно было добавить в избранное, а потом всем отослать свое резюме, сделать более гибкий поиск. 6. А чего бы и нет 7. В принципе все уже написал в пункте 5.
Трудности: Трудностей не возникло.



Научился: созданное приложение способно распарсить(считать и передать в приложение для дальнейшего применения) JSON (JavaScript Object Notation — текстовый формат обмена данными, основанный на JavaScript) в динамический объект, выводимый в экранную форму с возможностью вызова веб-страницы с опубликованной вакансией. Преимущество приложения - без необходимости поиска в традиционном браузере находить определенную информацию в соответствии с задаваемыми критериями поиска. Браузер - не единственный способ поиска в сети. Всё API работает по протоколу HTTPS. Авторизация осуществляется по протоколу OAuth2. Все данные доступны только в формате JSON. Базовый URL — https://api.hh.ru/ Возможны запросы к данным любого сайта группы компаний HeadHunter Даты форматируются в соответствии с ISO 8601: YYYY-MM-DDThh:mm:ss±hhmm. В уроках Валерия нравится способность автора найти решение проблемы в прямом эфире с привлечением справочной информации из сети. Я бы прикрутил к приложению автоматический парсинг с периодом раз в сутки и алертом на email или в СМС по указанной вакансии. Продолжению курсов Валерия Владимировича всегда рад, веб-дизайн выглядит красочно и нравится больше других направлений. В идеях вертится функционал, позволяющий отследить рост курсантов не на основе количества часов, а в разрезе лет обучения (работал в такой-то сфере == жил на 20 тугриков в месяц, после года обучения нашел новую должность в такой-то сфере == живу на 30 тугриков в месяц). Для того, чтобы заставить себя учиться, я расстался с ремонтом банкоматов за 30 тугриков в месяц и на почте служу ямщиком за 20, но учусь, чего себе не позволял в банковские времена. Идей масса, надо учить матчасть дальше.