# | Название видеоурока | Видео / Тесты | Решило | Рейтинг | Доступ |
---|---|---|---|---|---|
1 |
![]() |
1 тест |
|||
На этом уроке мы познакомимся с модульным тестированием. Мы напишем небольшой калькулятор, в который добавим проект для модульного тестирования, и покажем, как это всё работает, как это нужно использовать. Отчёт отправил: 7645. Александр Львович Выполнено за 2 час. 00 мин. [Показать отчёт] Научился: Писать тесты с помощью Visual Studio, в том числе тесты, которые вызывают исключения типа [ExpectedException(typeof(DivideByZeroException))] Сложности: Вообще, материал сложный, но Евгений Витольдович изложил его очень просто и понятно. Комментарии: Материал, рекомендованный для дополнительного изучения имеется и в русском переводе: Пошаговое руководство. Создание и запуск модульных тестов для управляемого кода (https://msdn.microsoft.com/ru-ru/library/ms182532.aspx) |
|||||
2 | Делегаты на кубиках |
|
|||
На этом уроке подробно показываю и объясняю, что такое делегаты, зачем они нужны и как их использовать. Отчёт отправил: 7645. Александр Львович Выполнено за 2 час. 00 мин. [Показать отчёт] Научился: Научился работать с делегатами, передавать действия и параметры из одного класса в другой, кидать кубики случайным образом. Сложности: Было тяжеловато, но понял делегаты лучше. Комментарии: Большое спасибо! Очень интересно! |
|||||
3 | Нити на кубиках |
1 тест |
|||
Демонстрация использования потоков с делегатами на примере игральных кубиков. Отчёт отправил: 7645. Александр Львович Выполнено за 2 час. 30 мин. [Показать отчёт] Научился: Научился работать с потоками, с методом Invoke. Сложности: Немного путался с потоками, но, кажется, в целом, разобрался. Комментарии: Большое спасибо! Также большое спасибо Елене за дополнение. Просмотрел ее ролик и реализовал предложенные ею механизмы остановки потоков. Работает отлично! Интересно, а в чем отличие событий Form1_Leave и Form1_FormClosed? |
|||||
4 | Телефон по TCP/IP протоколу |
|
|||
На этом видеоуроке мы создадим три класса, которые удобно использовать для передачи данных между двумя компьютерами. Отчёт отправил: 7645. Александр Львович Выполнено за 3 час. 30 мин. [Показать отчёт] Научился: Научился создавать связь между двумя компьютерами, настраивать порты и хосты, передавать данные. Сложности: Увы, не все было понятно. Пока довольно сложно для меня. Возникали ошибки, связанные с особенностями моего компьютера (см. комментарии). Комментарии: Большое спасибо! Замечаний нет. Организация клиент-сервера мне очень понравилась. Однако, к сожалению, возникла ошибка сетевого потока NetworkStream: "Сделана попытка доступа к сокету методом, запрещенным правами доступа." Формируется поток ns = null И далее выводится еще одна ошибка, относящаяся к потоку ns: "Ссылка на объект не указывает на экземпляр объекта." На том компьютере, на котором я обычно работаю, многие программы, требующие коннекта, не устанавливаются. На другом компьютере все работает корректно. Плохо понял функцию Waiter(). Также не понял, почему производится переназначение функции Connect вместо абстрактного метода. |
|||||
5 | Обои рабочего стола |
|
|||
Составляем программу - менеджер фоновых рисунков для рабочего стола.
Отчёт отправил: 7645. Александр Львович Выполнено за 5 час. 00 мин. [Показать отчёт] Научился: Научился работать с реестром, с папками на диске (создавать папку, считывать файлы), работать с элементами управления Listbox и Combobox. Сложности: См. комментарии. Комментарии: Большое спасибо! Менеджер картинок рабочего стола мне очень понравился. К сожалению, больше часа мучился с выводом картинки на рабочий стол. Оказалось, что нужно было выводить полный путь к картинке, а не относительный. У меня функция PlacePicture заработала так: public void PlacePicture(string name) { if (name == "") return; string path = dir + name; if (!File.Exists(path)) return; string path1 = Path.GetFullPath(path); // полный путь к картинке (path – относительное имя файла; path1 – полное имя файла) SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, path1, SPIF_UPDATEINIFILE | SPIF_SENDWININICHANGE); } Помог просмотр значения Wallpaper в реестре. |
|||||
6 | Говорящие часы. Запись голоса |
|
|||
На уроке создаём программу для записи звуковых файлов, которые будут использованы для создания говорящих часов. Отчёт отправил: 7645. Александр Львович Выполнено за 4 час. 00 мин. [Показать отчёт] Научился: Научился записывать звук с микрофона, работать с библиотекой NAudio для записи звука с микрофона, записывать звуковые файлы в память компьютера. Сложности: Плохо понял, как создается очередь потоков с помощью Invoke. Комментарии: Большое спасибо! Замечаний нет. |
|||||
7 | Говорящие часы. Воспроизведение |
|
|||
На уроке пишем программу, которая показывает и говорит текущее время Отчёт отправил: 7645. Александр Львович Выполнено за 2 час. 30 мин. [Показать отчёт] Научился: Научился работать с часами, воспроизводить звуковые файлы из памяти компьютера в зависимости от количества часов и минут. Сложности: Пока все понятно. Комментарии: Большое спасибо! Сами часы, с минутами и секундами, очень порадовали! Забавно получилось, когда было несколько "говорений" одновременно. |
|||||
8 | ПОЛУФИНАЛЬНЫЙ УРОК |
|
|||
Задание: Посмотрите видеообзор об этом курсе Елены Вставской. Она подробно рассказывает о программах, которые вы уже написали - посмотрите, какие могли быть сложности и как с ними справиться. Задание. Написать отзыв об этом видео-курсе, прикрепить свою фотографию, указать своё имя и фамилию. Отчёт отправил: 7645. Александр Львович Выполнено за 30 мин. [Показать отчёт] Научился: Писать отзыв Сложности: Не очень трудно. Комментарии: Новые технологии – очень интересный курс, это третий курс, который я прохожу в Школе программиста. В первой части данного курса были очень подробно рассмотрены такие нестандартные и сложные проблемы, как модульное тестирование, примеры использования делегатов и нитей (потоков Thread), запись и воспроизведение голоса, клиент-серверные системы на примерах взаимосвязи двух компьютеров и управления сменой обоев рабочего стола. Как всегда, особая благодарность руководителю проекта Школа программирования Евгению Витольдовичу Волосатову, который подобрал такие интересные задачи и все подробно объясняет. Некоторые сложные для меня вопросы программирования также приходится изучать дополнительно – с помощью интернета и специальной литературы. После прохождения уроков данного курса многое стало мне намного понятнее, например, делегаты и нити. Мое имя и фотография имеются в моем профиле на портале Школы. В целях дальнейшего развития данного курса предлагаю написать программы простого шлюза, протокола передачи данных, а также экспорта и импорта файлов XML. |
|||||
9 | Клиент-сервер для смены обоев |
1 тест |
|||
Создание клиент-серверного приложения для удалённой смены фоновой картинки на рабочем столе. На компьютере "жертве" стоит клиентская программа, которая подключается к серверу за получением ссылки на скачивание картинки, которую следует разместить на рабочем столе. Серверная программа обрабатывает подключения клиентов, отправляя им ссылки для фоновых картинок. Управление серверной программой реализована через редактирование конфигурационного файла. Отчёт отправил: 7645. Александр Львович Выполнено за 3 час. 30 мин. [Показать отчёт] Научился: Научился работать с сервером и клиентом, передавать из сервера в клиент URL картинки в интернете, работать с реестром, с папками на диске (создавать папку, считывать файлы). Сложности: См. комментарии. Комментарии: Большое спасибо! Клиент-серверная система размещения картинок рабочего стола мне очень понравилась. К сожалению, на моем компьютере пока не удается открыть сервер. Стабильно выводится сообщение: "Сделана попытка доступа к сокету методом, запрещенным правами доступа" Проблема возникает только на одном компьютере - на других все работает нормально. Пока приспособился таким образом, что программу пишу на своем компьютере, а потом удаленно перехожу на другой компьютер, и там все работает корректно. |
|||||
10 | Мотиватор |
1 тест |
|||
На этом уроке мы научимся загружать картинку и рисовать на ней. Результаты стараний отобразим на экране и сохраним в файл. Отчёт отправил: 7645. Александр Львович Выполнено за 2 час. 00 мин. [Показать отчёт] Научился: Научился работать с объектом Graphics, с помощью которого можно менять картинку, с конструкцией using (using (Graphics graphics = Graphics.FromImage(img));), рисовать и писать на картинке, сохранять картинку в файл и открывать картинку из файла. Сложности: Было сложно разобраться с объектом Graphics и с конструкцией using, но потом все понял. Комментарии: Большое спасибо! Создатель мотиваторов мне очень понравился. Замечаний нет. |
|||||
11 | Печать таблицы + экспорт в Excel |
1 тест |
|||
Как вывести на печать таблицу. Как экспортировать таблицу в Excel Самый простой и быстрый способ. Отчёт отправил: 7645. Александр Львович Выполнено за 2 час. 30 мин. [Показать отчёт] Научился: Научился работать с компонентами DataGridView и с WebBrowser, выводить данные на печать и в Excel. Сложности: В основном, было понятно. Комментарии: Большое спасибо! Замечаний нет. |
|||||
12 | Работа с WinAPI |
1 тест |
|||
Использование функций WinAPI для поиска и закрытия окон.
Отчёт отправил: 7645. Александр Львович Выполнено за 3 час. 00 мин. [Показать отчёт] Научился: Научился работать с открытыми окнами с помощью функциональности WinAPI. Сложности: Пока все понятно. Комментарии: Большое спасибо! Замечаний нет. На меня произвело большое впечатление закрытие окна "Licence Reminder - Spot on the Mouse"! |
|||||
13 | Построение графиков |
2 теста |
|||
Рано или поздно любому программисту приходится строить графики. Чтобы не изобретать велоиспед - лучше воспользоваться готовым решением. На уроке мы установим библиотеку ZedGraph и познакомимся с её возможностями. Настроим оси координат, легенду, добавим график, нарисуем стрелочки, всё разукрасим. Отчёт отправил: 7645. Александр Львович Выполнено за 3 час. 00 мин. [Показать отчёт] Научился: Научился строить графики с помощью библиотеки ZedGraph, выводить на график стрелочки и надписи, запускать вывод графиков с помощью кнопок. Сложности: Скачать и установить ZedGraph.dll Постоянно выходила ошибка "There are no components in "… ZedGraph.dll" that can be placed on the toolbox" Удалось установить, когда я переместил файл DLL в папку с коротким путем, без подчеркиваний и пробелов. Комментарии: Большое спасибо! Очень интересный урок! Замечаний нет. |
|||||
14 | ФИНАЛЬНЫЙ УРОК |
|
|||
Задание: Записать видеообзор пары своих программ из курса Новые технологии. Отчёт отправил: 7645. Александр Львович Выполнено за 2 час. 00 мин. [Показать отчёт] Научился: Научился записывать видео с помощью программы ocam и размещать видео на свой канал youtube. Сложности: Волновался. Комментарии: Большое спасибо. Замечаний нет. Видеообзор: https://www.youtube.com/watch?v=6CeJvh2TTAw |
|||||
15 | VIP урок. C# + MySQL через DataSet |
1 тест |
|||
Установка и настройка MySQL. Создание базы данных. Создание подключения. Всё необходимое для начала работы с базой данных, с нуля. Отчёт отправил: 7645. Александр Львович Выполнено за 2 час. 30 мин. [Показать отчёт] Научился: Этот вариант работы с БД очень понравился. Узнал много нового про работу с MySQL. Раньше я всего этого не знал. Сложности: За преподавателем выполнять несложно. Все сразу получилось. Комментарии: Урок прекрасный - на 5+! Также хочу отметить, что при изменении таблиц в элементе grid символы кириллицы сохраняются некорректно (как знаки вопроса). |
|||||
16 | VIP урок - Создание архиватора - 1 часть |
|
|||
Архиватор - это программа, которая несколько файлов собирает в один. Без сжатия. Сжатием занимается компрессор. На этом уроке мы начнём писать архиватор. Отчёт отправил: 7645. Александр Львович Выполнено за 6 час. 00 мин. [Показать отчёт] Научился: Научился работать с файлами в C#, выполнять побайтную запись в конец файла в потоке, работать с компонентом ListView. Сложности: Было нелегко понять процедуру побайтной записи. Комментарии: Большое спасибо! Прекрасный урок! Замечаний нет. Было бы хорошо разделить этот урок на 2 части. |
|||||
17 | VIP урок - Создание архиватора - 2 часть |
|
|||
Продолжение урока по созданию архиватора. Используется FileStream, BinaryReader, BinaryWriter. Почитать о потоках можно здесь: http://kzachetu.ru/theory/4/112 Отчёт отправил: 7645. Александр Львович Выполнено за 2 час. 30 мин. [Показать отчёт] Научился: Научился работать с файлами в C#, выполнять побайтную запись в конец файла в потоке, работать с компонентом ListView. Сложности: Было нелегко понять процедуру побайтной записи. Комментарии: Большое спасибо! Замечаний нет. |
|||||
18 | VIP урок. Игра Жизнь |
|
|||
Я познакомился с этой игрой в дестве, когда даже компьютеров не было, играть в неё можно было только на листке бумаги в клетку. На уроке я расскажу правила игры, потом мы создадим класс по реализации логики игры, затем, используя метод динамического программирования, я покажу, как можно в 10 разу ускорить расчёт нового поколения (это по желанию), и, под конец, подключив созданный класс мы напишем саму игру. Продолжительность урока 1 час 22 минуты, Это программа - отличный тренажёр для начинающих программистов и хорошая программа в копилку вашего портфолио. |
|||||
Итого: 18 видеоуроков |
13 час. 59 мин. 9 тестов |
6 чел. | |||
Финалисты: Иван Воронин, Permitin Alexey, vip, Yefim, Дмитрий, MaxB . |