 
				| # | Название видеоурока | Видео / Тесты | Решило | Рейтинг | Доступ | 
|---|---|---|---|---|---|
| 1 |  Начало работы с HeadHunter API |  | |||
| На этом уроке мы рассмотрим работу API HH.RU и получим данные о вакансии Отчёт отправил: 17947. Dmitry Sinitsin Выполнено за 48 мин. [Показать отчёт] Научился: JSON - JavaScript Object Notation Залезли под капот сайта и чуть посмотрели что откуда берется. Преимущества JSON: - Он компактен. - Предложения легко читаются и составляются как человеком, так и компьютером. - Легко преобразовать в структуру данных для большинства ЯП (числа, строки, логические переменные, массивы и так далее) - Многие языки программирования имеют функции и библиотеки для чтения и создания структур JSON. | |||||
| 2 | Все запросы - через приложение | 1 тест | |||
| На этом уроке мы создадим приложение на C# и получим информацию о вакансии, используя HeadHunter API при помощи нашего приложения Отчёт отправил: 17947. Dmitry Sinitsin Выполнено за 2 час. 13 мин. [Показать отчёт] Научился: .NET Framework 4.6.1 при создании приложения. Может и на воду дую, но подсмотрел что у Валерия в видео, то и себе в проекте поставил, во избежание разночтений. ... и на 5 минуте видео прозвучала рекомендация указывать этот фреймворк )) Три слэша и ENTER == блок комментариев | |||||
| 3 | Из JSON всё по полочкам | 1 тест | |||
| На этом уроке мы научимся парсить JSON ответ и получим отдельные параметры вакансии Отчёт отправил: 17947. Dmitry Sinitsin Выполнено за 1 час. 35 мин. [Показать отчёт] Научился: парсинг - берете несколько кусков чужого кода, смотрите то что вам нужно оттуда, ищете закономерности, вложенности, признаки, символы отделяющие нужные значения. Привязываясь к этим обнаруженным правилам используете готовый шаблон вроде NewtonSoft либо написав самостоятельно, выдергиваете нужные значения и применяете в своих переменных и далее со всеми остановками вплоть до Голутвина ) | |||||
| 4 | Свободный поиск по вакансиям |  | |||
| На этом уроке мы будем осуществлять поиск вакансий по определенному критерию и выводить их списком Отчёт отправил: 17947. Dmitry Sinitsin Выполнено за 1 час. 4 мин. [Показать отчёт] Научился: с замиранием сердца следил за поисками Валерия причины ошибки вызова прежнего метода при уже написанном новом. Урок супер! Рекомендую. Поскольку парсили не одну запись, воспользовались циклом foreach (dynamic item in obj.items) | |||||
| 5 | Меняем внешний вид |  | |||
| На этом уроке мы изменим интерфейс нашей программы Отчёт отправил: 17947. Dmitry Sinitsin Выполнено за 28 мин. [Показать отчёт] Научился: перепахали экранную форму приложения, удалили textBox и кнопки, использовали DataGridView и новую кнопку поиска. | |||||
| 6 | Структура вакансии | 1 тест | |||
| На этом уроке мы создадим новую сущность - структуру вакансии Vacancy Отчёт отправил: 17947. Dmitry Sinitsin Выполнено за 28 мин. [Показать отчёт] Научился: воспользовались ифэлзом и тернарным оператором для проверки получаемых данных. | |||||
| 7 | Предложения - в таблицу | 1 тест | |||
| На этом уроке мы заполним таблицу данными о вакансиях и реализуем свободный поиск по контексту из поискового поля Отчёт отправил: 17947. Dmitry Sinitsin Выполнено за 1 час. 2 мин. [Показать отчёт] Научился: пришлось заняться дебагом в public Vacancy (dynamic obj) - вместо точек в части полей понаставил низкие подчёркивания - поля не парсились. Нашел. Исправил.Победил. | |||||
| 8 | Пошаговая отладка |  | |||
| НА этом уроке мы сделаем пошаговую отладку заполнения таблицы и внесем изменения в проект Отчёт отправил: 17947. Dmitry Sinitsin Выполнено за 19 час. 37 мин. [Показать отчёт] Научился: F9 - поставить точку брякпойнта в текущей строке UPD - заменил вторую иллюстрацию на более информативную | |||||
| 9 | Переезжаем на WPF | 6 тестов | |||
| На этом уроке мы переведем наш проект на платформу WPF Отчёт отправил: 17947. Dmitry Sinitsin Выполнено за 3 дня 27 мин. [Показать отчёт] Научился: похоже WPF не прощает удаления грида - кнопка не сохранилась, придётся переделать. Создавая новые объекты на форме - предыдущие пропадали. У меня инглиш вершн, у Валерия - русская. UPD 20181126 Виноват Валерий. С его лёгкой руки обновил своё резюме на хедхантере, вышли на связь кировские работодатели, предложили вакансии. Сначала заинтересовался позицией разработчика C#, однако, посмотрев задание для соискателя понял, что кишка тонкА. Однако, предложения поступали. Позиция Business Intelligence привлекла знакомым SQL, вроде уж тут-то я не лыком шитый )). T-SQL оказался понятным, но с JOIN пока на Вы. Отсюда девиации в сторону от видеоуроков. Даже если не попаду на новую должность, любопытно добить задание. Валерий, Ваши уроки дают путёвки в жизнь ) | |||||
| 10 | Полная информация | 2 теста | |||
| На этом уроке мы выведем полную информацию о вакансии в браузере Отчёт отправил: 17947. Dmitry Sinitsin Выполнено за 45 мин. [Показать отчёт] Научился: принудительное преобразование типов(если невозможно неявное приведение) указывай в круглых скобках перед объектом, требующим привЕдения(преобразования). Process.Start() - запускает новое окно браузера с адресом сайта из скобок Exception ex - перехватывает ошибки исполнения программы и позволяет вывести пользователю результат перехвата для ознакомления. | |||||
| 11 | ПРОМЕЖУТОЧНЫЙ ВИДЕО ОБЗОР | без видео | |||
| Мы уже многое сделали на нашем видеокурсе, и автору очень важно узнать мнение о данном курсе и получить обратную связь в форме видео-презентации и ответов на вопросы. Сделай видео-презентацию своей программы. Отчёт отправил: 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 | Переходим на профессиональный уровень | 2 теста | |||
| На этом уроке мы создадим новое 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 | Функционал главного меню | 1 тест | |||
| На этом уроке мы создадим окно тестирования и вызовем его из главного меню Отчёт отправил: 17947. Dmitry Sinitsin Выполнено за 45 мин. [Показать отчёт] Научился: для открытия в WPF-приложении нового окна по событию (к примеру клик мышкой) создай новый объект и запусти его методом ___.ShowDialog() или ___.Dialog() WPF поддерживает возможность создания модальных диалоговых окон. ShowDialog отключает все остальные окна в приложении и возвращает к ним доступ только тогда, когда окно закрывается. Диалоговое окно — это особый тип окна, используемый приложениями для взаимодействия с пользователями для выполнения задач (открытие файлов и печати документов). Диалоговые (модальные) окна позволяют пользователю принять или отменить задачу, для которого они были показаны. | |||||
| 14 | Функционал тестового стенда | 1 тест | |||
| На этом уроке мы зададим функционал нашего тестового окна-стенда Windowtest чтобы в дальнейшем мы могли проверять результаты различных запросов Отчёт отправил: 17947. Dmitry Sinitsin Выполнено за 50 мин. [Показать отчёт] Научился: библиотека dll подключает функционал к экранным формам (наполняет пустой муравейник жителями, способными выполнять некие действия, чем оживить пустой дом). VS2017 позволяет это сделать через контекстное меню "Подключить ссылку"(Add -> Reference). Найдя нужную dll и подтвердив выбор, не забудь... ...Подключить в пространствах имён (namespaces) Using HHLibrary; или другую библиотеку, какая у кого используется. | |||||
| Итого: 14 видеоуроков | 2 час. 48 мин. 16 тестов | 18 чел. | |||
| Финалисты: Chip, vip, Dmitry Sinitsin, Tekashnik, Александр, Новопашин Владимир, Anton, Денис, no name, Rita, Max, Владимир, Дмитрий, Николай Денисов, Булат, D_M, DTSoLVFyCfYw, MaxB . | |||||