# | Название видеоурока | Видео / Тесты | Решило | Рейтинг | Доступ |
---|---|---|---|---|---|
1 |
![]() |
1 тест |
|||
На этом уроке мы познакомимся с модульным тестированием. Мы напишем небольшой калькулятор, в который добавим проект для модульного тестирования, и покажем, как это всё работает, как это нужно использовать. Отчёт отправил: 4004. Елена Выполнено за 40 мин. [Показать отчёт] Научился: Создавать модульные тесты и обрабатывать исключения Сложности: ничего Комментарии: Очень интересный урок. Надеюсь, что будет полезен мне в дальнейшем. |
|||||
2 | Делегаты на кубиках |
|
|||
На этом уроке подробно показываю и объясняю, что такое делегаты, зачем они нужны и как их использовать. Отчёт отправил: 4004. Елена Выполнено за 50 мин. [Показать отчёт] Научился: Наконец-то я разобралась с делегатами!!! Сложности: Уже ничего :) Комментарии: Урок очень подробный. И наконец-то я разобралась с делегатами! Ура!!! |
|||||
3 | Нити на кубиках |
1 тест |
|||
Демонстрация использования потоков с делегатами на примере игральных кубиков. Отчёт отправил: 4004. Елена Выполнено за 30 мин. [Показать отчёт] Научился: работе с потоками Сложности: Побороться с необработанным исключением при повторном запуске так и не удалось :( Комментарии: Вспомнился старый добрый ассемблер MASM со своим макросом INVOKE. Там при вызове INVOKE указывается имя функции, а потом через запятую перечисляются аргументы. Здесь тоже так попробовала сделать: if(InvokeRequired) { DelegateShow show = ShowDice; Invoke(show, a, b); return; } И ... о, чудо!!! ОНО ЗАРАБОРАЛО!!! Однако при повторном запуске приложения часто (но не всегда) возникает необработанное исключение, с которым я не знаю, что делать. Пробовала запускать код как на уроке - проблема не исчезла. Жалко, что не успела отчитаться по делегатам - вчера совсем не было времени. Но я выполнила предыдущий урок, и все получилось. |
|||||
4 | Телефон по TCP/IP протоколу |
|
|||
На этом видеоуроке мы создадим три класса, которые удобно использовать для передачи данных между двумя компьютерами. Отчёт отправил: 4004. Елена Выполнено за 5 мин. [Показать отчёт] Научился: Связывать компьютеры между собой Сложности: ничего Комментарии: Изучила материал урока сегодня в курсе "Сокобан", это повтор. |
|||||
5 | Обои рабочего стола |
|
|||
Составляем программу - менеджер фоновых рисунков для рабочего стола.
Отчёт отправил: 4004. Елена Выполнено за 1 час. 40 мин. [Показать отчёт] Научился: Управлять обоями рабочего стола, управлять файлами, создавать папки. Сложности: Вывести обои рабочего стола (потребовалось указать полный путь) Комментарии: 1) При попытке установить фоновый рисунок экран закрашивался в черный цвет. В реестре путь выглядел как paper/file.jpg. Пришлось прописать полный путь следующим образом: string dir = Environment.CurrentDirectory + "\\paper\\"; Может, конечно, в уроке это место просмотрела. 2) Я не стала удалять PictureBox, а просто освободила ресурсы перед удалением файла, и все получилось: private void list_picture_KeyDown(object sender, KeyEventArgs e) { if(e.KeyCode == Keys.Delete) { if (list_picture.SelectedIndex < 0) return; try { picture.Image.Dispose(); // вот эта строка высвобождает ресурсы picture.Image = null; File.Delete(dir + list_picture.SelectedItem.ToString()); ReloadPictures(); } catch { } } } |
|||||
6 | Говорящие часы. Запись голоса |
|
|||
На уроке создаём программу для записи звуковых файлов, которые будут использованы для создания говорящих часов. Отчёт отправил: 4004. Елена Выполнено за 1 час. 30 мин. [Показать отчёт] Научился: Работать с аудиофайлами на C# Сложности: понять, что значит строчка this.BeginInvoke(new EventHandler<WaveInEventArgs>(waveIn_DataAvailable), sender, e); Комментарии: Почему-то в записи воспроизводится только конец фразы. Может, я рано говорить начинаю. Может, компьютер подтормаживает. На всякий случай поменяла местами строчки, чтобы знать, что запись точно идет - стало немного лучше: private void label_record_MouseEnter(object sender, EventArgs e) { StartRecording(); // переместила вверх label_record.BackColor = Color.LightCoral; label_record.Text = "Идет запись!"; } private void label_record_MouseLeave(object sender, EventArgs e) { StopRecording(); label_record.BackColor = Color.LightGreen; label_record.Text = "Наведите мышку для начала записи"; } |
|||||
7 | Говорящие часы. Воспроизведение |
|
|||
На уроке пишем программу, которая показывает и говорит текущее время Отчёт отправил: 4004. Елена Выполнено за 1 час. 00 мин. [Показать отчёт] Научился: Воспроизводить аудио файлы по несколько подряд. Сложности: Разобраться с ресурсами пока не удалось :( Комментарии: Очень интересный урок. Правда, я так и не поняла, для чего аудиофайл со словом "минут". Может быть, у меня немного другое разбиение на файлы. Дело в том, что интонация произношения слова "двадцать" во фразах "двадцать минут" и "двадцать одна минута" разная. Поэтому я отдельно сделала файл "двадцать минут" и отдельно файл "двадцать". И файл "минут" мне не понадобился. Очень хочу разобраться, как можно указывать имя ресурса без использования switch (с указанием строки с названием, которую можно сформировать по условиям), но пока не успела. |
|||||
8 | ПОЛУФИНАЛЬНЫЙ УРОК |
|
|||
Задание: Посмотрите видеообзор об этом курсе Елены Вставской. Она подробно рассказывает о программах, которые вы уже написали - посмотрите, какие могли быть сложности и как с ними справиться. Задание. Написать отзыв об этом видео-курсе, прикрепить свою фотографию, указать своё имя и фамилию. Отчёт отправил: 4004. Елена Выполнено за 15 мин. [Показать отчёт] Научился: Формулировать полученные навыки Сложности: Собраться с мыслями Комментарии: Этот курс уже посерьезнее игрушек и содержит много полезной информации по тому, как правильно использовать различные ресурсы. Я наконец-то разобралась с делегатами, нитями и вдобавок клиент-серверными технологиями. Считаю эти знания для себя очень полезными и хочу двигаться дальше. Евгений, спасибо за всю предоставленную информацию и за способ ее изложения. Он нетрадиционный, но дает гораздо больший эффект по сравнению с учебниками. |
|||||
9 | Клиент-сервер для смены обоев |
1 тест |
|||
Создание клиент-серверного приложения для удалённой смены фоновой картинки на рабочем столе. На компьютере "жертве" стоит клиентская программа, которая подключается к серверу за получением ссылки на скачивание картинки, которую следует разместить на рабочем столе. Серверная программа обрабатывает подключения клиентов, отправляя им ссылки для фоновых картинок. Управление серверной программой реализована через редактирование конфигурационного файла. Отчёт отправил: 4004. Елена Выполнено за 1 час. 30 мин. [Показать отчёт] Научился: Использовать интерфейс клиент-сервер для смены обоев рабочего стола. Сложности: Найти URL-адреса, поскольку урок выполняла без Интернета (видеоурок скачан на компьютер). Адреса были проверены в предыдущем уроке. А сейчас попробовала с локальными адресами - все прекрасно работает. Комментарии: Интересная получилась хакерская программка :) Программа - представитель диалогового приложения - приложения с минимальным интерфейсом. Попыталась создать пустой проект - без формы. Все хорошо, только с таймером запуталась. Не знаю, как использовать таймер без формы :( |
|||||
10 | Мотиватор |
1 тест |
|||
На этом уроке мы научимся загружать картинку и рисовать на ней. Результаты стараний отобразим на экране и сохраним в файл. Отчёт отправил: 4004. Елена Выполнено за 40 мин. [Показать отчёт] Научился: Размещать текст на изображении Сложности: Придумать идею мотиватора :) Комментарии: Сделала надпись "с тенью", разместив две одинаковых надписи разными цветами поверх друг друга. |
|||||
11 | Печать таблицы + экспорт в Excel |
1 тест |
|||
Как вывести на печать таблицу. Как экспортировать таблицу в Excel Самый простой и быстрый способ. Отчёт отправил: 4004. Елена Выполнено за 50 мин. [Показать отчёт] Научился: Научилась работать с браузером, выводить на печать Сложности: ничего Комментарии: При повторном экспорте в Excel (если файл открыт) вылетает исключение. Поэтому я сделала блок try { System.IO.File.WriteAllText("table.csv", csv.ToString(), Encoding.UTF8); System.Diagnostics.Process.Start("table.csv"); } catch(Exception e) { MessageBox.Show(e.Message,"Ошибка"); } |
|||||
12 | Работа с WinAPI |
1 тест |
|||
Использование функций WinAPI для поиска и закрытия окон.
Отчёт отправил: 4004. Елена Выполнено за 1 час. 00 мин. [Показать отчёт] Научился: использовать WinAPI в C#, закрывать окна Сложности: перепечатать используемые функции из урока :) (т.к. Интернета под рукой не было) Комментарии: 1) Мне кажется, проще обратиться к выделенному элементу списка так: textBoxTitle.Text = listWindows.SelectedItem.ToString(); 2) Когда окно закрывается, то оно остается в списке, поэтому при закрытии я вызвала функцию Refresh() - оформила ее в виде функции. А вообще, интересно получилось. Можно все окна позакрывать - какие надо и какие не надо :) |
|||||
13 | Построение графиков |
2 теста |
|||
Рано или поздно любому программисту приходится строить графики. Чтобы не изобретать велоиспед - лучше воспользоваться готовым решением. На уроке мы установим библиотеку ZedGraph и познакомимся с её возможностями. Настроим оси координат, легенду, добавим график, нарисуем стрелочки, всё разукрасим. Отчёт отправил: 4004. Елена Выполнено за 1 час. 30 мин. [Показать отчёт] Научился: строить графики с использованием ZedGraph Сложности: разобраться с компонентом ZedGraph Комментарии: Скачала компонент ZedGraph по указанной ссылке. Многие свойства и методы компонента отличаются от приведенных в уроке. Например, нет объекта ArrowObj, но есть ArrowItem. Но принцип понятен. В уроке упоминался вебинар по созданию архиватора, но в составе уроков по "Новым технологиям" его нет. А интересно было бы :) |
|||||
14 | ФИНАЛЬНЫЙ УРОК |
|
|||
Задание: Записать видеообзор пары своих программ из курса Новые технологии. Отчёт отправил: 4004. Елена Выполнено за 2 час. 00 мин. [Показать отчёт] Научился: Группировать программы для видеообзора Сложности: Записать видеообзор Комментарии: Движемся к финалу курса "Новые технологии"!!! Видеообзор: https://youtu.be/xTBuaNmwbv8 |
|||||
15 | VIP урок. C# + MySQL через DataSet |
1 тест |
|||
Установка и настройка MySQL. Создание базы данных. Создание подключения. Всё необходимое для начала работы с базой данных, с нуля. Отчёт отправил: 4004. Елена Выполнено за 1 час. 00 мин. [Показать отчёт] Научился: Работать с базой данных в C# !!! Сложности: скачать mySql-connector. Комментарии: Это мое первое знакомство с базами данных в C#. Не стала устанавливать EasyPHP. Воспользовалась установленным Denwer-ом и phpMyAdmin. Действительно, все запросы скрыты, и тяжеловато их понимать. Наверное, есть другой способ взаимодействия с базой данных. P.S. Я закончила "Новые технологии"!!! Жаль, что урока по созданию архиватора в них не оказалось (в одном из уроков он был упомянут). |
|||||
16 | VIP урок - Создание архиватора - 1 часть |
|
|||
Архиватор - это программа, которая несколько файлов собирает в один. Без сжатия. Сжатием занимается компрессор. На этом уроке мы начнём писать архиватор. Отчёт отправил: 4004. Елена Выполнено за 1 час. 50 мин. [Показать отчёт] Научился: Работать с файлами, использовать режим Binary, "собирать" файлы в единый архив Сложности: разобраться с функциями, которые используются для чтения и записи данных Комментарии: Мне ОЧЕНЬ понравился этот урок. Не зря я очень хотела его пройти!!! Это, пожалуй, самый "глубокий" урок по работе с файлами. Кстати, о том, как создать единый файл я догадалась, но об используемых методах не имела представления. Например, для того, чтобы представить число типа int в виде массива байтов я бы по традиции стала использовать объединение union. Имею опыт работы с файлами. Ковырялась когда-то, лет 7 назад - создавала сама файловую систему FAT32 на SD-карте 32Гб и записывала в нее данные в виде файлов с помощью микроконтроллера. Поэтому урок для меня был достаточно понятный. Хотя много нового узнала. |
|||||
17 | VIP урок - Создание архиватора - 2 часть |
|
|||
Продолжение урока по созданию архиватора. Используется FileStream, BinaryReader, BinaryWriter. Почитать о потоках можно здесь: http://kzachetu.ru/theory/4/112 |
|||||
18 | VIP урок. Игра Жизнь |
|
|||
Я познакомился с этой игрой в дестве, когда даже компьютеров не было, играть в неё можно было только на листке бумаги в клетку. На уроке я расскажу правила игры, потом мы создадим класс по реализации логики игры, затем, используя метод динамического программирования, я покажу, как можно в 10 разу ускорить расчёт нового поколения (это по желанию), и, под конец, подключив созданный класс мы напишем саму игру. Продолжительность урока 1 час 22 минуты, Это программа - отличный тренажёр для начинающих программистов и хорошая программа в копилку вашего портфолио. |
|||||
Итого: 18 видеоуроков |
13 час. 59 мин. 9 тестов |
6 чел. | |||
Финалисты: Иван Воронин, Permitin Alexey, vip, Yefim, Дмитрий, MaxB . |