# | Название видеоурока | Видео / Тесты | Решило | Рейтинг | Доступ |
---|---|---|---|---|---|
1 |
![]() |
|
|||
На этом уроке мы рассмотрим работу 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 . |