Дата | Видеоурок | Результат | |
---|---|---|---|
Морской флот Свежий взгляд. Завершение проекта. | + 20 | ||
завершать проект) ничего даже не верится, что программа дописана)) хотя... анимации не хватает) |
|||
Морской флот Свежий взгляд. Размещение кораблей. | + 20 | ||
размещать корабли при помощи класса Ocean ничего no comments) |
|||
Морской флот Свежий взгляд. Ожидание запуска. | + 20 | ||
использовать старые наработки) ничего no comments) |
|||
Морской флот Свежий взгляд. Управление из таймера. | + 20 | ||
запускать события по таймеру ничего давно хотелось примерно так и переделать этот проект)) |
|||
Морской флот Свежий взгляд. Схема проекта. | + 20 | ||
иногда все начинается заново начать заново) =) |
|||
Морской флот Финишная миля. Найти победителя | + 20 | ||
играть за четверых ничего почему-то побеждать он не хочет пока, только проигрывать) |
|||
Морской флот Финишная миля. Мой океан. | + 20 | ||
рефакторингу) программа разрослась, а общей схемы нет, часто тяжело понять где что искать =) |
|||
Морской флот Финишная миля. Перезагрузка. | + 21 | ||
сбрасывать данные в базе данных через php ничего no comments) |
|||
Морской флот Одинокий капитан - Победа! | + 20 | ||
обновлять состояние программы по таймеру исправлять свои ошибки =) |
|||
Морской флот Одинокий капитан - Выстрелы | + 21 | ||
отображать прицел на экранной форме в момент выполнения выстрела ничего =) |
|||
Морской флот Одинокий капитан - Прицел | + 20 | ||
добавили класс для отображения прицела особо ничего =) |
|||
Морской флот Клиентский флот - Класс ServerGame | + 20 | ||
парсить xml вообще сложный урок) почему-то после размещения кораблей на океане 0, сразу переходит в режим play и не дает размещать остальные корабли |
|||
Морской флот Клиентский флот - Класс ServerFire | + 20 | ||
выполнять выстрелы из клиента при помощи строки запроса и формировать xml ответ комбинация инструментов после перерыва сложно вспомнить вообще что к чему) |
|||
Морской флот Клиентский флот - Класс ServerShip | + 20 | ||
1. запускать функцию do=ship на сервере через клиент 2. извлекать координаты кораблей из двумерного массива извлечение координат и составление строки запроса =) |
|||
Морской флот Клиентский флот - Класс ServerInfo | + 20 | ||
каким образом будет реализована модель классов сервера что оставить, а что перенести no comments ) |
|||
Морской флот Клиентский флот - Парсинг XML | + 20 | ||
парсить xml документы при помощи классов XmlDocument.LoadXml(для загрузки) и XmlNodeList.GetElementsByTagName(для обращения к конкретному элементу документа) когда не заработало с первого раза, пришлось вывести содержание ошибки через catch (Exception ex)=>errMessage= ex.ToString(); Оказалось - ошибка в теге в самом документе .php интересный урок, парсинг xml оказался проще, чем я думал |
|||
Морской флот Клиентский флот - Подключение к серверу | + 20 | ||
делать веб-запрос из приложение winforms при помощи класса WebRequest или WebClient пока что ничего хорошо, что все классы уже придуманы до нас) |
|||
Морской флот ПОЛУФИНАЛЬНЫЙ УРОК. Большая игра | + 20 | ||
выводить в браузер отображение изменений в БД MySQL при помощи языка php и запросов sql понять содержание примера map.php очень интересный пример с map.php, хотя сам бы я не смог на данный момент такое написать |
|||
Морской флот Серверный флот - Функция do_game | + 20 | ||
формировать .xml запрос из нескольких частей синтаксические ошибки исправлять совсем новое направление все эти xml, sql, php, но, как ни странно, более-менее понятно |
|||
Морской флот Серверный флот - Функция do_fire | + 20 | ||
Выполнять выстрел по морям при помощи php и MySql, проверять условие победы. Обновлять значения в таблице БД. тяжело представить себе взаимодействие между элементами программы, т.к. все функции расположены в одном файле вроде работает)) |
|||
Морской флот Серверный флот - Функция do_ship | + 20 | ||
1. передавать значения переменных программе прямо через адресную строку конструкцией http://dimasian.ru/battle.php?do=info и при помощи php функции intval($_GET["ocean"]); 2. лучше стал понимать как PHP и MySQL работают в связке размер функции do_ship() - тяжело искать ошибки, особенно, если не знаешь где кроме таблички с результатом почему-то выводятся многочисленные Array([0]=>0) значения |
|||
Морской флот Серверный флот - Капитан очевидность | + 20 | ||
получать пронумерованный массив из БД, следить за временем при помощи функции microtime() ничего, новые функции только почему капитан очевидность только не понял) |
|||
Морской флот Серверный флот - Функция do_info | + 20 | ||
вытаскивать переменные из массива, формировать .xml файл и выводить его незнакомые функции в принципе выводит, только неровно как-то |
|||
Морской флот Серверный флот - Рефакторинг РНР-кода | + 20 | ||
создавать функции для SQL-запроса и выбора строки в PHP, подключать файлы по include, возвращать описание ошибки через mysqli_errno($my_link) Уже так привык к подсказкам и помощи и предкомпиляцонной проверке ошибок в Visual Studio, что поиск синтаксической ошибки в текстовом файле .php кажется дикостью. Где вообще точки останова?))) так или иначе, но работает, результат выдает. приятно) |
|||
Морской флот Серверный флот - Как PHP дружит с MySQL | + 20 | ||
подсоединяться к БД MySQL при помощи скрипта PHP и выводить содержание таблицы БД решать всякие непонятки с соединениями, доменами, ftp, подсоединением к БД. почему -то по русски пхп сообщения хром выдает абракадаброй. английские echo сообщения - нормально. |
|||
Морской флот Серверный флот - FTP подключение | + 20 | ||
что такое домен, хостинг и что это не бесплатно) разобраться что к чему раньше доменты не регистрировал, как и хостинги, незнакомый зверь. Но интересно) |
|||
Морской флот Протокол - Команда GAME | + 20 | ||
составил sql запрос к базе ожидание php no comments |
|||
Морской флот Протокол - Команда FIRE | + 20 | ||
выполнять выстрелы в БД и обновлять результаты в таблице состояний игры много копипаста и не совсем удобно писать в блокнот после Visual Studio, кажется что код висит в воздухе) =) |
|||
Морской флот Протокол - Команды INFO и SHIP | + 20 | ||
писать sql запросы комбинация различных языков вроде принцип понятен |
|||
Морской флот Протокол - Список команд | + 20 | ||
порядку взаимосвязи между клиентом и БД через веб-сервер много нового: xml, PHP, mySql no comments |
|||
Морской флот База Морского Флота - Запросы SQL | + 20 | ||
выполнять различные MySql команды применительно к таблицам базы данных особо ничего Я в БД и серверах вообще 0. Выбрал первый бесплатный хостинг 000webhost.com, где и сделал БД. Там есть поддержка MySQL + PhpMyAdmin, но там нет варианта InnoDB, я выбрал Memory. Надеюсь, это не принципиально. |
|||
Морской флот База Морского флота - Экспресс SQL | + 20 | ||
выполнять запросы MySQL через PHPMyAdmin новый синтаксис. да все новое) =) |
|||
Морской флот База Морского Флота - phpMyAdmin | + 20 | ||
создавать таблицы в PHPMyAdmin все, я в БД "0" no comments |
|||
Морской флот База Морского Флота - GAME | + 20 | ||
составлять схему и таблицу для Game представить как это все будет реализовано =) |
|||
Морской флот База Морского Флота - SHIP | + 20 | ||
записывать состояния объекта схематически рисовать схемы) =) |
|||
Морской флот База Морского Флота - INFO | + 20 | ||
составлять схему таблицы БД и схему состояний особо ничего =) |
|||
Морской флот Архитектура - Мышкой по кораблям | + 20 | ||
обрабатывать событие выстрела по карте мышкой, передавая данные от пикчербокса через делегат в форму и из формы обратно к наследным классам большое количество переходов между уровнями наследования очень здорово реализован клик мышкой). я сначала не стал делать доп. делегат, а сделал ф-ию BoxClicked - static, но она тогда не видит ocean[], который не статик, так что пришлось переделать как надо)) |
|||
Морской флот Архитектура - Фабрика картинок | + 20 | ||
Заполнять пикчербоксы значениями на основе различных состояний массива большое количество взаимосвязанных элементов массивно выглядит ) |
|||
Морской флот Архитектура - Наследие картинок | + 20 | ||
1. Наследованию от класса PictureBox и использованию конструкции :base() 2. Передавать в класс контрол с главной формы через Control.ControlCollection 3. Задавать размещение игровых полей и пикчербоксов через одну формулу размещение игровых полей и пикчербоксов через одну формулу а можно ли было не передавать пикчербокс с главной формы, а использовать делегат для его обновления/заполнения? |
|||
Морской флот Архитектура - Карта Пиратов | + 20 | ||
распределять карту выстрелов и кораблей по различным массивам большое количество перечислений чувствуется серьезный подход к планированию в этой программе) |
|||
Морской флот Архитектура - Перезагрузка проекта | + 20 | ||
суровой правде рефакторинга начать заново no comments |
|||
Морской флот Анимация - Полёт по таймеру | + 20 | ||
1) использовать таймер для отображения анимации в отдельном потоке 2) функции изменения координат по таймеру функция изменения координат по таймеру и приведение координат от абстрактных к пикчербоксовским Oo== -----o-----------\\|// |
|||
Морской флот Анимация - Отображение кадров | + 20 | ||
делать анимацию движения и взрыва снаряда сделать скриншот полета снаряда =) |
|||
Морской флот Анимация - Полёт снаряда | + 20 | ||
рисовать снаряд рисовать не умею =) |
|||
Морской флот Графика - Рефакторинг | + 20 | ||
рефакторинг созданного ранее кода какие функции вынести в отдельный класс, чтобы все заработало рефакторинг вызывает некоторое внутреннее сопротивление, т.к. все будет "поломано")) |
|||
Морской флот Графика - Выстрелы по Кораблям | + 20 | ||
топить корабли компьютера) попадать в одноклеточных 7 из 7 при поле 49? Я правильно понимаю, что в лучшем случае вероятноть составит: 7/49*6/40*5/34*4/28*3/22*2/16*1/12=0,00006% ? |
|||
Морской флот Графика - Карта Морского флота | + 20 | ||
алгоритм проверки занятости ячеек в диапазоне особо ничего =) |
|||
Сокобан ФИНАЛЬНЫЙ урок. Видео-обзор проекта Сокобан | + 21 | ||
записывать видео) ничего Спасибо, интересный был курс! |
|||
Сокобан Сокобан - Завершение | + 20 | ||
модифицировать программу для включения различных режимов игры обилие кода, можно запутиться, где какие переменные удивительно, но все работает. особенно радует волна) |
|||
Сокобан Сокобан - Игра - На двоих по сети | + 20 | ||
подключать класс для передачи данных по сети в готовую программу и соединять два компьютера в игре со стороны клиента или сервера большое количество уже созданного кода немного давит и мешает быстро понять, что куда записать или исправить, чтобы заработало Отличная игра получилась, спасибо! Такой момент:если соединять 2 компьютера в локальной сети то IP, соответственно, тоже должен быть локальный(как роутер раздает), отметил на скриншотах. |
|||
Сокобан Сокобан - Телефон - TCP/IP протокол | + 20 | ||
создавать соединение и передачу данных по сети между двумя компьютерами при помощи библиотек System.Net и System.Net.Sockets. новые классы, новая терминология полезная вещь)) |
|||
Сокобан Сокобан - Игра - На двоих | + 20 | ||
управлять с клавиатуры одновременно двумя сокобанщиками особо ничего =) |
|||
Сокобан Сокобан - Редактор - На двоих | + 20 | ||
модифицировать ранее созданный код искать старые ошибки в коде =>[] ................X |
|||
Сокобан Сокобан - Игра - Автоходы | + 20 | ||
использовать в программе классы, созданные ранее. проходить сокобан одной левой) модификация классов при их переносе в проект. Еще такой момент, получается, что список Queue можно модифицировать в теле цикла, т.е. это такой аналог рекурсии? просто замечательно выглядит, как будто сокобанщик сам такой умный) |
|||
Сокобан Сокобан - Решалка - Оптимизация | + 20 | ||
использование массивов значительно быстрее использования Dictionary, который в свою очередь значительно быстрее использования Queue программа даже стала проще чем была) новая версия программы выполняется очень быстро, а старую я перезаписал пока видеоурок смотрел. |
|||
Сокобан Сокобан - Решалка - Яблоко | + 20 | ||
находить решение для перемещения элемента Я в элемент Ф с места С при помощи другого элемента М. Как все это работает вместе отличный алгоритм! кажется, что мышка "думает" как человек. по-факту перебираются все состояния, что очень много. посчитал, сколько раз мы заходим в очередь для простого лабиринта (как на скриншоте) - 545 раз. |
|||
Сокобан Сокобан - Решалка - Мышка | + 20 | ||
1. находить кратчайший путь в лабиринте поиском вширь алгоритм проверки и прокладывания пути мощная вещь)) |
|||
Сокобан Сокобан - Решалка - Тестер | + 20 | ||
1) как хранить и загружать карту из текстового файла 2) логике перемещения объекта по строковому шаблону, обработке условий особо ничего здорово, когда есть визуализация алгоритма, много становится очевидным (буквально =) |
|||
Сокобан Сокобан - Игра - Управление | + 20 | ||
использование вспомогательных массивов для реализации слоев в программе втянуться в работу после большого перерыва использование слоев - мне очень понравилось! интересно как этот вопрос решен в морском флоте. скоро узнаю) |
|||
Сокобан Сокобан - Подготовка - Картинки и лабиринт | + 20 | ||
поиску картинок ничего =) |
|||
Комбинаторика VIP. Простые числа. Оптимизация алгоритма | + 20 | ||
различным алгоритмам проверки числа на простоту сделать решето Эратосфена. сделал решето через рекурсию. Чувствую, что создал франкенштейна какого-то, но по-другому не придумал)) Понравился подробный разбор и оптимизация алгоритма по принципу от простого к сложному, спасибо. |
|||
Комбинаторика ФИНАЛЬНЫЙ УРОК | + 20 | ||
делать быстро ничего Спасибо за курс Комбинаторика, очень полезный и интересный! Можно применить не только с языком c#. |
|||
Комбинаторика Динамика. Выход из Лабиринта | + 1 | ||
1. искать выход из Лабиринта методом поиска вширь, он же метод "волна" 2. преобразовывать двузначные числа в однозначные буквы =) после "счастливых билетов 20" это уже кажется не сложным)) а так, - доработать программу для обозначения кратчайшего пути графическая вывод в консоль мне нравится в чем-то даже больше, чем в GUI :) |
|||
Комбинаторика Динамика. Счастливые билеты 20 | + 20 | ||
решению задачи счастливые билеты для 40-значных чисел с использованием подхода динамического программирования. алгоритм программы, именно математическая ее часть. Очень рациональный подход, и очень быстрый, хотя именно алгоритм составить сложно. Спасибо за хорошую визуализацию процесса, без этого понять код было бы просто нереально. |
|||
Комбинаторика Динамика. Поле дураков | + 20 | ||
динамическому принципу решения задач не совсем понятный прием - считать с конца) но, преимущество перед рекурсией, конечно, есть. --\_(^^)_/-- |
|||
Комбинаторика Полуфинальный урок. Ответы на вопросы | + 20 | ||
комбинаторике рекурсия 1. рекурсивное закрашивание области и расстановка ферзей. В общем те, что с картинками) 2. да, ожидания оправдались полностью 3. можно еще добавить консольных примеров с консольной графикой, получается быстро и эффектно 4. использование рекурсии и разбор сложных задач, объяснение их алгоритмов 5. Дмитрий |
|||
Комбинаторика Комбинаторика. Математические операции | + 20 | ||
вычислять арифметико-логические выражения при помощи специального калькулятора. не сразу понятно(до видео), как делать слияние символов, и как продвигаться с сохранением приоритета операции хороший урок, хотя и задание само по себе не простое. Кажется, что все понятно) |
|||
Комбинаторика Комбинаторика. Сложение букв | + 20 | ||
решать комбинаторную задачу методом перебора и методом рекурсии не всегда правильные ответы получаются =) |
|||
Комбинаторика Комбинаторика. Много ферзей. Демонстрация | + 20 | ||
1.принципу решения задачи о размещении ферзей на доске размером N*N рекурсивным способом 2.консоль может быть цветной! алгоритм размещения и рекурсия отличный пример. Графическое отображение сделал, хоть и с погрешностями. Непривычно видеть консоль в цвете, но приятно. |
|||
Морской Бой Последний Бой! | + 20 | ||
использовать методы классов, созданных отдельно от основного проекта. Осуществлять стрельбу компьютера по таймеру. сделать доработку от себя, чтобы при добивании корабля со стороны человека, на поле компьютера закрашивались все ячейки, куда уже точно не надо стрелять. Так делается и при обычной игре, это не чит) Очень хороший курс, много алгоритмики и есть ооп, а также сильная логическая составляющая в виде создания ИИ. Немного не хватает прилизанности, т.к. он создавался с большим временным промежутком, и как бы собран из разных кусков, но тем не менее все работает. Спасибо! |
|||
Морской Бой Интерфейс игры | + 1 | ||
оформлять интерфейс, скрывать и отображать расположение кораблей на поле компьютера отображение кораблей компьютера. пришлось переименовать в классе Море: protected Корабль[] корабль на public, иначе не выполняется такая строчка: sea_comp.ПоставитьКорабль(i, sea_comp.корабль[i].палуба); при доработке кода и разнесении его в разные места, программа становится значительно более читаемая и приятная для доработки. |
|||
Морской Бой Рефакторинг кода | + 20 | ||
рефакторингу кода)) боязнь испортить то, что работает) после рефакторинга стало приятней видно) |
|||
Морской Бой Олимпиада - Создание ИИ - Добивание корабля | + 20 | ||
перебирать варианты добивания корабля, а также отмечать область вокруг него использование рекурсивной функции для отмечания области вокруг корабля. очень классно! с выводом вспомогательного окна матрицы put, очень наглядно. |
|||
Морской Бой Олимпиада - Создание ИИ - Шаблон ударов | + 20 | ||
использовать матрицу ходов, выбирая из нее элементы с максимальным приоритетом ничего эта часть достаточно понятна и наглядна. самую проблему составляет добивание корабля, посмотрим следующий урок) |
|||
Морской Бой Олимпиада - Создание ИИ - Стратегия | + 20 | ||
придумывать стратегию ИИ и реализовывать ее принять меру своих возможностей )) хорошее упражнение. попытаться стоит) |
|||
Бурные потоки ФИНАЛЬНЫЙ УРОК | + 20 | ||
писать отзыв писать отзыв Курс хороший и особенно хорошо, что он консольный, это убирает лишнее. Новое было практически все, что связано с потоками и их прерыванием. Улучшить можно добавив какие-то еще примеры, где именно необходимо! использовать потоки, а где их можно заменить просто по-другому написав программу. Все-таки надо больше ООП, больше разделения, мне кажется, это не помешает восприятию кода. |
|||
Бурные потоки Смысл жизни | + 20 | ||
Завершать работу потоков по условию особо ничего питоны -r -r, питоны как люююди)) |
|||
Бурные потоки Замри! | + 20 | ||
Останавливать поток по клавише и игнорировать запрос на его остановку разобраться в разнице между lock и Monitor. Как я понял lock это обертка для использовании функций класса Monitor, но этот класс предоставляет больше тонких настроек, не только вход и выход из критической секции. Также тело критической секции должно быть наиболее маленьким, ошибки все равно могут возникать. Об этом тут написано: https://blogs.msdn.microsoft.com/ericlippert/2009/03/06/locks-and-exceptions-do-not-mix/ Если зажать клавишу с номером потока и не отпускать, на поле в случайных местах, и даже на рамке появляется эта цифра цветом того потока, где случилось прерывание. Это видно на скиншоте) |
|||
Бурные потоки Приоритет | + 20 | ||
1. использовать объект Monitor для входа в критическую секцию 2. устанавливать приоритет потока особо ничего <OOOOOOOOOO* |
|||
Бурные потоки Бурная жизнь | + 1 | ||
запускать большое количество питонов в потоках лень делать код "своим", тяжело дается добавил хвосты, т.к. про них упоминалось в видео. оказалось довольно просто. хотя может это и есть то простое неправильное решение). на скриншоте есть пример. |
|||
Бурные потоки Поток питонов | + 20 | ||
запускать питонов в потоках, основных и фоновых блокировка объектом lock(object) ''_'' |
|||
Бурные потоки Поворот головы | + 20 | ||
методам отображения, шага, поворота питона алгоритмы =) |
|||
Бурные потоки Питонатор | + 20 | ||
вызывать питонов кажется ничего -----------> " |
|||
Бурные потоки Зайчики | + 20 | ||
заполнять поле рандомными зайцами особо ничего не статичные поля: скорость перемещения, направление перемещения, координаты головы |
|||
Бурные потоки Террариум | + 20 | ||
инициализировать экран консоли элементами функция отображения зайца вебинары это хорошо, но они отчасти отнимают смысл в самостоятельных заданиях, ведь уже весь код есть)) |
|||
Бурные потоки Вступление | + 20 | ||
избавляться от static в Main вспомнить что было на вебинаре доп. вопрос: одномерный массив для хранения значков головы питона, двумерный массив для хранения поля |
|||
Коллекция графов ФИНАЛЬНЫЙ УРОК | + 21 | ||
Работать со встроенными классами списков, такими как: List, ListDictionary, HashTable, HybridTable. Также основам работы с графами, их заполнению и перебору с использованием списков. Большое количество новой терминологии и понятий, enumerable и иже с ним. HashTable тоже сложный объект, т.к. там еще хеш-функция внутри и много математики, о которой мало что известно. Очень полезный курс. Учитывая, что большинство программ так или иначе работают со списками, то, чтобы не изобретать велосипеды с массивами, хорошо бы сразу знать какие уже классы разработаны. |
|||
Коллекция графов Глубокий алгоритм | + 20 | ||
алгоритму поиска вглубь уже вроде ничего. а не, printscreen! каждый урок все новые списки появляются)) теперь вот stack. |
|||
Коллекция графов Глубокий поиск | + 20 | ||
принципу алгоритма прохода графа "вглубь" все было просто =) |
|||
Коллекция графов Визуализация процесса | + 20 | ||
визуализации графа ничего, я уже выполнил данный урок в предыдущем) все еще делаю скриншоты при помощи телефона... |
|||
Коллекция графов Широкий пошаговый ход | + 20 | ||
визуализировать алгоритм графа сделать принтскрин принтскрин смог сделать только при помощи ...телефона, т.к. буфер все время пустой. Программа хоть и использует Thread.Sleep, но зависает в это время. |
|||
Коллекция графов Широкий алгоритм | + 20 | ||
алгоритму поиска вширь ошибка программы не понял как исправить |
|||
Коллекция графов Широкий поиск | + 20 | ||
прорисовывать очередь в графе по алгоритму все было просто =0 |
|||
Коллекция графов Шахматная доска | + 20 | ||
отображать граф шахматной доске формула размещения лейблов =) |
|||
Коллекция графов Отображение | + 20 | ||
Графически отображать граф инициализация графики графа Графолизация графа графически графигенна) |
|||
Коллекция графов Инициация | + 2 | ||
выводить граф на экран вывести граф не очень понял как сделать, вывел лейблы рандомно и соединил их по принципу вершина-смежные вершины. |
|||
Коллекция графов Рёбра | + 20 | ||
формировать вершины и ребра графа понять кто главнее: вершина или ребро )) интересный урок) |
|||
Коллекция графов Вершины | + 20 | ||
писать программу с русскими переменными. русские переменные хранить ребра можно во вложенном словаре? |
|||
Коллекция графов Граф | |||
Что такое граф и методы его хранения придумать метод хранения Может быть надо хранить как вложенный массив - Массив [int, int[]]. Первый int - для цвета данной вершины, вложенный массив - для перечисления соседей вершины. |
|||
Коллекция графов BitArray | + 20 | ||
использовать BitArray вместо bool[] особо ничего заполнил 2 массива случайными значениями и вывел результат |
|||
Коллекция графов Hashtable | + 20 | ||
HashTable, HybridDictionary и их сравнение с ListDictionary организовать сравнение трех списков Не уверен, что я правильно написал функцию сравнения(есть на втором скриншоте). По результатам: ListDictionary лучше при малом количестве элементов и большом количестве словарей, HybridDictionary проигрывает ему после перестроения на 9 элементов. И он очень плох при одном словаре и большом количестве элементов. Для этого лучше использовать Hash- или Hybrid-Dictionary. |
|||
Коллекция графов ListDictionary | + 20 | ||
использовать список ListDictionary для массива двух связанных элементов ключ-значение новый тип переменной для перебора элементов можно вместо foreach использовать IDictionaryEnumerator, но MSDN это не рекомендует |
|||
Коллекция графов Array vs List | + 20 | ||
сравнивать время выполнения функций особо ничего если сделать просто массив Program[] он также будет быстрее List<Program> |
|||
Коллекция графов
List |
+ 20 | ||
List<type> и его методам тестировать методы list<type> Протестировал list.Union - объединяет без повторов, и list.Concat- объединяет с повторами |
|||
Коллекция графов ArrayList | + 20 | ||
списку ArrayList пока все просто попробовал метод Reverse для изменения порядка элементов в списке |
|||
Итератор ФИНАЛЬНЫЙ УРОК | + 20 | ||
отзыв о курсе отзыв Курс хороший и нужный, т.к. тема сложная. Еще много чего в него можно добавить. Даже скорее всего можно сделать курс "Интерфейсы" и в него добавить IEnumerable, ICollection, List и пр. |
|||
Итератор Итератор. Один метод вместо классов. | + 20 | ||
использовать Enumerable для создания метода, а не вызывать через отдельный класс много новых терминов Хороший урок. Сложный для начинающего. Сюда можно было бы добавить еще примеров использования такого подхода, когда они действительно необходимы. |
|||
Итератор Итератор. Список простых чисел. | + 20 | ||
выводить простые числа в списке по мере их добавления работа алгоритма почему при разложении числа 100 программа дает повторяющиеся числа в ответе, а при разложении большого числа (как Мишино, например)), повторов нет? |
|||
Итератор Итератор. Волшебное слово yield. | + 20 | ||
yield - определяет, что метод является нумератором, не нужно писать вспомогательный класс Enumerator<T> понять как это работает yield! |
|||
Итератор Итератор. Зачем нужно два класса | + 20 | ||
разделять интерфейсы и выводить таблицу умножения простых чисел новая терминология =) |
|||
Итератор Итератор. Перебор простых чисел. | + 20 | ||
алгоритм проверки числа на простоту взаимосвязи интерфейсов и всего остального задание №5 - никак не мог понять как сделать, просто перемножил два простых числа, чтобы получить входное условие, уже содержащее ответ |
|||
Итератор Итератор. Перебор чисел в итераторе. | + 21 | ||
перебор чисел в Enumerator, задание условий на его ограничение передача параметров пока не все ясно, но уже что-то прорисовывается) |
|||
Итератор Итератор. Создание пустого итератора. | + 20 | ||
интерфейсам IEnumerable, IEnumerator произношение слов =) энумераблис интерфейсус компилус! |
|||
Итератор Итератор. Разложение числа на простые множители. | + 20 | ||
раскладывать число на множители алгоритм разложения =) |
|||
Комбинаторика Комбинаторика. 4 x 4. Ладья x Ферзь | + 20 | ||
вычислять комбинаторно расположение ладьей и ферзей на поле логика работы рекурсии с ферзями =0 |
|||
Комбинаторика Комбинаторика. Счастливые билеты N | + 21 | ||
рекурсивному поиску 2N счастливых билетов алгоритм рекурсии сложно) |
|||
Комбинаторика Комбинаторика. Счастливые билеты 6 | + 20 | ||
считать совпадения ничего =) |
|||
Комбинаторика Рекурсия. Фракталы. Кривая Гильберта | + 20 | ||
сложной рекурсии и построению кривой Гильберта логика работы рекурсии не очевидная вещь она, рекурсия... |
|||
Комбинаторика Рекурсия. Фракталы. Треугольник Серпинского | + 20 | ||
рисовать Серпинского эксперименты =) |
|||
Комбинаторика Рекурсия. Фракталы. Спираль | + 20 | ||
рекурсировать фрактал рисовать =) |
|||
Комбинаторика Рекурсия. Обратный отсчёт | + 20 | ||
вывод в обратном порядке через рекурсию алгоритм =) |
|||
Комбинаторика Рекурсия. Общий делитель | + 20 | ||
находить НОД рекурсивно как найти НОД не все тесты проходятся на 100% |
|||
Комбинаторика Рекурсия. Числа Фибоначчи | + 20 | ||
Фибоначчи ничего кролики |
|||
Комбинаторика Рекурсия. Факториал | + 20 | ||
Факториалу Не ошибиться в синтаксисе =) |
|||
Комбинаторика Рекурсия. Заливка области | + 20 | ||
рекурсивно закрашивать область понять как она это делает) под впечатлением. сколько экземпляров функции открывается при ее выполнении? |
|||
Комбинаторика Рекурсия. Главный секрет | + 20 | ||
кривая Гильберта, факториал и переворот массива через рекурсию переделать консольный пример в winForms =) |
|||
Графические циклы VIP. Спирограф | + 2 | ||
алгоритму работы спирографа алгоритм работы спирографа - кто должен вращаться вокруг кого) а также обновление изображения. в итоге центральный круг рисуется все время, второй рисуется и тут же стирается, ручка формирует массив точек которые рисуются через g.DrawLines(points); 1.ручка оставляет за собой следы, почему-то, хотя окружность их не оставляет. 2.программа зависает при выполнении. по-видимому нужно класс спирографа запускать в отдельном потоке |
|||
Комбинаторика Рекурсия. Вступление | + 20 | ||
рекурсия - воспроизведение объектом исходной начальной формы/кода искать картинки no comments ;) |
|||
Графические циклы VIP. Узоры на окружности | + 21 | ||
создавать динамические узоры по формуле формулы) Отличный урок! |
|||
Графические циклы ФИНАЛЬНЫЙ УРОК | + 20 | ||
использовать вложенные циклы в своих классах адаптировать заготовки под отдельный класс 1. Задачи понравились, было даже мало) 2. Навыки работы с циклами, безусловно, прокачиваются 3. Экспериментов не ставил, кроме того, что в сетку добавил спирали архимеда |
|||
Графические циклы Спираль Архимеда | + 1 | ||
рисовать спираль Архимеда и ее производные формула для радиуса отличный курс, очень наглядный! |
|||
Графические циклы Трёхмерные циклы | + 20 | ||
трехмерным и четырехмерным вложенным циклам четырехмерные вложенные циклы супер |
|||
Графические циклы Внутренние условия | + 1 | ||
модифицировать вложенные функции все было просто no comments =) |
|||
Графические циклы Вложенные циклы | + 20 | ||
заполнять квадратами через вложенный цикл особо ничего no comments ;) |
|||
Графические циклы Пучок лучей | + 20 | ||
заполнение лучами из одной точки все было достаточно просто no comments ;0 |
|||
Графические циклы Диагональные линии | + 20 | ||
рисовать диагонали) ничего =) |
|||
Графические циклы Горизонтали и вертикали | + 20 | ||
1.использовать Thread.Sleep(); все было просто =) |
|||
Графические циклы Подготовка графики | + 20 | ||
уже все знал рисование линий по координатам не понял, почему объект графики у меня создается из пикчербокса, но если рисовать как в примере в абсолютных координатах, линия не попадает в пикчербокс, а, судя по всему привязка идет к форме. |
|||
Морской флот Интерфейс - А на море корабли | + 20 | ||
1. размещать изображения со свойством фона transparent поверх других 2. преобразовывать координаты мышки для размещения картинок строго в ячейках преобразовывать координаты мышки для размещения картинок строго в ячейках =) |
|||
Морской флот Интерфейс - Первый кораблик | + 20 | ||
отображать графические элементы рисовать no comments =) |
|||
Морской флот Вступление | + 20 | ||
каков план действий смотреть =) |
|||
Микроигры VIP урок. Стрелялка | + 21 | ||
использованию базового класса для выненесения повторяющегося функционала в отдельное место какие методы и свойства оставлять в базовом классе, а какие переопределять в наследуемом Еще много чего можно добавить, но и так интересный урок получился) |
|||
Фотошарп Ярость и контрастность | + 20 | ||
изменять яркость, контрастность изображения, сохранять в файл. формула для яркости, контрастности. очень эффектная программа) |
|||
Фотошарп 256 оттенков серого | + 20 | ||
делать картинку черно-белой все было просто картинки преобразуются не так уж и мгновенно, секунд пять |
|||
Микроигры ФИНАЛЬНЫЙ УРОК | + 20 | ||
+ уже не помню) хороший курс! |
|||
Бинарная жизнь Смысл жизни | + 20 | ||
менять привычки конечных бинарных автоматов) найти мотиватор =) |
|||
Бинарная жизнь Новое поколение | + 20 | ||
1.преобразование из 10 в 2ную сиситему в коде 2.как осуществлять зацикливание 3. треугольник Серпинского назначение новой строчки по правилу треугольник Серпинского, интересно |
|||
Бинарная жизнь Конструктор организма | + 20 | ||
1. избавляться от Static в консольном приложении 2. StringBuilder вместо String для ускорения обработки длинных строк условие при присваивании arr[i] = rnd.Next(0, 2) == 1; =) |
|||
Бинарная жизнь Правила игры | + 20 | ||
узнал, что такое конечные бинарные автоматы записать формулы в эксель хорошая аналогия, что сказать) |
|||
Шарики Шарики. Поиск линий | + 20 | ||
1. алгоритму поиска кратчайшего пути "волна" 2. поиск N элементов в ряд алгоритм поиска пути, а также делегаты очень хороший урок хоть и немного сложный в части алгоритма поиска кратчайшего пути |
|||
Шарики Шарики. Поиск пути | + 20 | ||
алгоритму поиска кратчайшего пути "волна" очень много переменных и массивов, можно запутаться кто что содержит хороший алгоритм) |
|||
Шарики Шарики. Логика игры | + 21 | ||
использование делегатов, структур enum общая логика программы переключения состояний через статусы классика) |
|||
Шарики Шарики. Анализ игры | + 20 | ||
1. динамическое размещение объектов 2. в поле sender.Tag можно записывать не только текст, но и объекты типа Point все было просто =) |
|||
Шарики Шарики. Вступление | + 20 | ||
многому найти уже готовые шарики в сети. так и не нашел заготовки в сети, пришлось самому нарисовать. |
|||
Микроигры Крестики-Нолики. Игра с компьютером | + 20 | ||
поиск троек на поле, работа с ИИ поиск троек чисел в ряд =) |
|||
Микроигры ПОЛУФИНАЛЬНЫЙ УРОК | + 20 | ||
=) =) =) |
|||
Игры со словами Виселка. Алгоритм помощника | + 20 | ||
1.составлять алгоритм для автоматического подбора слов, соответствующих заданной маске. 2.подсчитывать наиболее часто встречающуюся букву в заданном перечне слов алгоритм без помощника играть сложно) |
|||
Игры со словами Виселка. Блоксхема помощника | + 20 | ||
составлять план-схему не запутаться в схеме =) |
|||
Игры со словами Виселка. Поле чудес | + 20 | ||
1. работать по блок-схеме 2. динамически размещать лейблы на форме 3. загружать слова из текстового файла (из ресурсов программы) 4. скрывать и отображать буквы в выбранном слове формулы динамического размещения лейблов букв алфавита на форме. От себя добавил выбор сложности и помощь - открыть одну букву из неоткрытых. Также в дальнейшем добавлю счетчик побед. хороший урок ) |
|||
Микроигры 2048 - Смещение | + 21 | ||
использовать делегаты, складывать и перемещать ячейки в игре 2048 набрать 512 очков больше 512 пока не получилось набрать |
|||
Микроигры 2048 - Интерфейс | + 20 | ||
Динамическое добавление лейблов на объект TableLayoutPanel и настройка их свойств почему нужно использовать Dictionary<int, Color> backColors; а не, скажем List<> =) |
|||
Микроигры 2048 - Учимся играть | + 20 | ||
играть в 2048 все было просто 3042 очка можно набрать если просто нажимать вниз-влево-вниз-вправо, по первой попытке во всяком случае)) |
|||
Микроигры Игра 15 - Картинка | + 20 | ||
1. разделение картинки на массив изображений 2. динамическое создание и присваивание изображений выражение в какой ячейке что отображать: box[position % size, position / size].Image = img[nr % size, nr / size]; хорошая программа, но пояснений к ней можно было бы дать и побольше) добавил диалоговое окно для выбора картинки с диска |
|||
Микроигры Игра 15 - Алгоритм | + 20 | ||
сортировке матриц логика перехода от текста номера кнопки к порядковому номеру, и к матрице =) |
|||
Микроигры Игра 15 - Кнопки | + 20 | ||
создавать события для кнопок и приводить тип ((Button)sender).Tag все было просто =) |
|||
Нано-игры Арканоид - Шарик и кирпичики | + 20 | ||
1. вспомнил математику 2. если есть сложный момент в написании программы, возможно следует сделать подпрограмму для этого вопроса 3. научился делать формы, лейблы, пикчербоксы произвольной формы отражение шара от окружности, а не от прямоугольника потратил существенное время на поиск решения, но в целом узнал много нового |
|||
Игры со Спрайтами VIP урок. Телефон по TCP/IP протоколу | + 119 | ||
1. использование класса для передачи данных NetworkStream 2. использование потоков/нитей - using System.Threading; 3. использование делегатов все было новым и поэтому сложно для восприятия если сначала запустить сервер, потом клиент, то все работает. но если потом клиент закрыть, то сервер выдает уже другую ошибку: only one usage of each socket address is normally permitted. После этого подключение занимает определенное время, в прямой зависимости от значения Thread.Sleep(2000) в Phone.Waiter() и в Program.Run(); Т.е. сервер пытается заново запуститься на том же IP? |
|||
Игры со Спрайтами ФИНАЛЬНЫЙ урок | + 20 | ||
вспоминать материал по пройденным уже давно видеоурокам восстановить в памяти функционал программы, т.к. писал ее пару месяцев назад =) |
|||
Игры со Спрайтами Полуфинальный урок | + 20 | ||
всему да почти все =) |
|||
Хранитель экрана VIP. Говорящие часы. Воспроизведение | + 20 | ||
1. использование объекта DateTime и преобразование его данных к виду hh:mm:ss 2. использование отдельного класса для разделения функционалов формы и программы 3. ознакомился с многопоточностью на примере воспроизведения звуковых файлов многопоточность и делегирование хорошая программа получилась, функциональная. |
|||
Хранитель экрана VIP. Говорящие часы. Запись голоса | + 20 | ||
1. использовать библиотеку NAudio 2. использовать объект SoundPlayer sp = new SoundPlayer(path + audio_filename) 3. пример использования делегатов здесь много новых технологий, это и библиотека NAudio и аудиоплеер и использование делегатов для работы с библиотекой. В общем, непростой пример, но очень функциональный. уже отправлял отчет после вебинара, то ли в чашке кофе, то ли где-то еще, уже не помню, - давно было. |
|||
Нанософт ФИНАЛЬНЫЙ УРОК | + 21 | ||
записывать обзоры - это не просто придумать что сказать =) |
|||
Нанософт Скорость на клавиатуре | + 20 | ||
работать с текстовыми полями, подсчитывать и выводить статистику по скорости печати доработка программы добавил выделение посимвольно печатаемого текста, а также смену "уровней". |
|||
Демо софт Текстовый процессор | + 20 | ||
1. Считывать и сохранять файл на диск 2. Использовать объект TextBox: осуществлять поиск и замену строки в тексте научиться выделять поисковую строку при поиске добавил поиск отдельно от замены, с выделением каждого нового экземпляра найденного паттерна, с автоматической прокруткой текста до найденного элемента и зацикливанием поиска при достижении последнего найденного элемента в тексте |
|||
Нанософт Баскетбольное табло | + 20 | ||
1. отменять закрытие окна при нажатии крестика 2. передавать данные между формами 3. вызывать событие нажатия кнопки с нулевыми параметрами при инициализации формы оформление =) |
|||
Нанософт Прохождение теста | + 20 | ||
1. считывать данные из текстового файла: string[] lines = File.ReadAllLines(quizFilename,Encoding.UTF8); 2. возвращать описание ошибки: MessageBox.Show(ex.Message); 3. перемешивать значения ответов перемешивать ответы и хранить соответствие правильному спасибо |
|||
Нанософт Шахматные часы | + 20 | ||
вести учет времени не таймером, а системным событием DateTime.Now.Ticks логика включения/выключения часов при разных условиях хорошо бы сделать шахматы на двоих по сети и этот таймер туда интегрировать))) |
|||
Демо софт Квадратный калейдоскоп | + 21 | ||
1) использование статических классов и методов, а также перечислений 2) автоматическое заполнение элементами объкта Windows.Form.Panel 3) Enum.GetNames(typeof(Figure)).Length;//выбрать случайное значение из Enum! использование статических методов и вычисление новых координат точки при отражении добавил тре- и четыре- угольники |
|||
Нанософт Средняя оценка | + 21 | ||
1) использовать TableLayoutPanel и элемент ToolTip 2) использовать делегаты они самые, делегаты +1 |
|||
Демо софт Менеджер паролей | |||
1) запускать внешний процесс через System.Diagnostics.Process.Start 2) преобразовывать sender к нужному типу - (LinkLabel)sender).Tag.ToString() 3) копировать информацию в буфер обмена - Clipboard.SetText(((TextBox)sender).Text); приведение типа в sender хорошая программа, много полезных практических приемов. Делал уже ранее на вебинаре, по-моему... |
|||
Демо софт Английские карточки | + 20 | ||
1) считывать директории и файлы 2) добавлять компоненты в проект ( в панель инструментов) 3) проигрывать звуки и видео через Windows Media Player управление Windows Media Player. При запуске почему-то окно воспроизведение смещается по диагонали на небольшое значение. очень интересная програма! |
|||
Микроигры Крестики-Нолики. Игра на двоих | + 20 | ||
1) использовать классы для разделения логики программы и действий с формой 2) реализовать игру для двух человек и игру против компьютера 3) реализовать искусственный интеллект для игры 3х3 искусственный интеллект замечательная программа, спасибо! |
|||
Карточки памяти Отображение карточек | + 21 | ||
использование статусов при множественных условиях множественные вложенные статусы =) |
|||
Карточки памяти Подготовка формы | + 20 | ||
использовать TableLayoutPanel для размещения элементов PictureBox искать картинки =) |
|||
Нано-игры ФИНАЛЬНЫЙ УРОК | + 20 | ||
искать свои программы в куче папок) =) =) |
|||
Морской Бой VIP. Анимированный кубик | + 20 | ||
использование вложенных массивов и вычисление положения кружков домино при перемещении функция перемещения кружков отличная программа! |
|||
Морской Бой VIP. Анимированный кружок | + 21 | ||
анимированное перемещение окружности вычисление нового положения точки nnО__оnn |
|||
Нано-игры Бот для Цифр | + 20 | ||
считывать положение мышки на экране и программно симулировать ее нажатие в нужных координатах использование сторонней библиотеки DllImport("user32.dll"...) :) |
|||
Нано-игры Игра Цифры | + 20 | ||
перемешивать массив кнопок по две ничего) ;) |
|||
Хранитель экрана ФИНАЛЬНЫЙ урок | + 1 | ||
=) ничего) =) |
|||
Хранитель экрана Режим предобзора и установка | + 20 | ||
работа с WinAPI dll , WinAPI заработало, даже удивительно |
|||
Хранитель экрана Полноэкранный режим | + 20 | ||
устанавливать форму поверх всех окон все было просто :) |
|||
Хранитель экрана Параметры командной строки | + 20 | ||
запускать программу с параметрами все было понятно :^) |
|||
Хранитель экрана Использование реестра | + 20 | ||
записывать и считывать значения из реестра сохранение цвета в реестре :) |
|||
Хранитель экрана Применение настроек | + 1 | ||
как организовать передачу параметров между формами приложения адаптировать код под свою программу ^_^ |
|||
Новые технологии Делегаты на кубиках | + 10 | ||
основам использования делегатов. понять зачем это нужно, если можно создать экземпляр класса и вызывать его функции. полезный урок) |
|||
Хранитель экрана Форма настроек | + 10 | ||
использование ColorDialog все было просто хорошо |
|||
Хранитель экрана ПОЛУФИНАЛЬНЫЙ урок | + 10 | ||
немного продвинулся в понимании работы ООП и функций, а также вложенных массивов поиск логических ошибок в программе Так и не нашел ошибку, из-за которой после первого полного цикла полигоны начинают задесятеряться. Кроме этого при отрисовке возникают артефакты в виде точек на экране. В целом урок очень понравился, спасибо! |
|||
Хранитель экрана Новый класс Polygone | + 10 | ||
1) использовать конструкции типа: public List<Figure> list { get; private set; } с добавлением в список собственных классов 2) отрисовывать перемещающиеся объекты, состоящие из множества точек вращение точки для генерации пятиугольника отличный урок, правда под конец я уже немного запутался во всех созданных классах и методах, и их переопределениях) |
|||
Хранитель экрана Новый класс Figure | + 1 | ||
1) разделять функционал кода с вынесением методов в отдельный класс рефакторинг кода: переопределение переменных и логики программы по идее для множества объектов типа Figure нужно создавать коллекцию объектов? |
|||
Хранитель экрана Новый класс Graph | + 1 | ||
1) разбивать код программы на разные классы для упрощения кода. 2) использовать рефакторинг какие методы и свойства вынести из кода формы в класс Graph и как передавать данные между ними. хороший урок) |
|||
Хранитель экрана Движение шарика | + 20 | ||
1) анимация движения посредством таймера формы и перерисовки объекта 2) алгоритм отскока шарика внутри прямоугольника чтобы шарик отскакивал четко справа у меня условия для отскока справа: px+box_width+sx>=bmp.Width; py+box_height+sy >=bmp.Height; тоже работает нормально. |
|||
Хранитель экрана Создаём графику | + 20 | ||
1) рисовать пиксель 2) Refactor->Extract Method нарисовать 1 пиксель если нужно нарисовать именно ОДИН пиксель, то подойдет такая запись: graph.FillRectangle(brush, px, py, 1, 1); только надо предварительно создать кисть: Brush brush =(Brush)Brushes.Blue; |
|||
Демо игры VIP. Устный счёт | + 1 | ||
KeyEventArgs e все было достаточно просто от себя добавил проверку, чтобы при операции деления подбирались кратные числа и ответ был всегда целочисленным |
|||
Нано-игры Арканоид - Уровень и ракетка | + 10 | ||
1) управлять объектом через метод KeyDown все было понятно ура |
|||
Новые технологии Работа с WinAPI | + 10 | ||
Использовать WinAPI для закрытия окна по указанному заголовку WinAPI Полезная программка, правда еще нужно добавить поиск дочерних окон |
|||
Сокобан Сокобан - Игра - Интерфейс | + 10 | ||
1) вызывать одну форму из другой 2)заполнять уровень объектами PictureBox 3) отображать статусы прохождения уровня в панели инструментов делегаты, зачем они нужны, если есть классы и методы. все работает, пока все ок) |
|||
Демо софт Двенадцать месяцев | + 10 | ||
1) использовать объект System.Windows.Forms.MonthCalendar 2) загружать картинки при событиях загрузки формы и изменении даты 3)обрабатывать ошибку(try-catch) "не найдено картинки" и принудительно закрывать программу. принудительное закрытие программы Красивая программка, спасибо. Интересно, можно ли ее модифицировать так, чтобы, помещенная в автозагрузку, она меняла фон рабочего стола в зависимости от текущего месяца или даты? |
|||
Сокобан Сокобан - Создаём свои уровни | + 10 | ||
рисовать уровни в редакторе отсчитывать сколько уровней уже нарисовано добавить потом 1) combo_box - текущий уровень, чтобы было видно какой уровень, сколько их всего и можно было выбирать 2) кнопка "создать новый уровень" - добавление пустого уровня в конец с присвоением ему соответствующего порядкового номера |
|||
Сокобан Сокобан - Редактор - Улучшение | + 10 | ||
1) изменять размер лабиринта через игровое поле 2)заполнение прямоугольных областей лабиринта однотипными объектами 3) отображать счетчики ящиков и мест для них private void ShowCell(int x, int y, Cell c)//рекурсивная функция редактор сам по себе уже - игра) |
|||
Нано-игры Скорость реакции. Алгоритм и рекорд | + 10 | ||
1) обрабатывать клики по картинкам 2) использовать TrackBar для установки скорости отображения картинки 3) использовать StopWatch использовать StopWatch Короткая, но веселая программка) |
|||
Нано-игры Скорость реакции. Три картинки по таймеру | + 10 | ||
1) показывать картинки в форме по таймеру все было просто комментариев нет) |
|||
Нано-игры Скорость реакции. Блок-схема | + 10 | ||
1) составлять блок-схемы к программе 2) использовать программу для составления блок-схем продумать программу до ее написания Все здорово |
|||
Демо игры ФИНАЛЬНЫЙ УРОК | + 1 | ||
Здравствуйте! Мое мнение о данном проекте - это действительно реальная альтернатива традиционному (очному) способу обучения для тех, кто в этом заинтересован. На мой взгляд у проекта есть несколько преимуществ по-сравнению с очными курсами или институтом. Во-первых, можно самому выбирать время для занятий и не надо никуда ездить, и возраст не является проблемой. Во-вторых, это узкоспециализированный ресурс по C# на русском языке с активной поддержкой мотивации участников, что для меня стало приятной неожиданностью. В-третьих, здесь подобраны хорошие материалы, даже в бесплатных разделах, и можно наглядно видеть свой прогресс по выполненным заданиям. Ну и последнее, цены весьма приемлемые. Например, один семестр в ВУЗе стоит около 30 000 рублей, "размазанных" по многим предметам. В общем, спасибо Евгению Витольдовичу за данный проект! отзыв) едем дальше |
|||
Сокобан Сокобан - Редактор - Сохранение | + 1 | ||
1) сохранять уровень в текстовом файле с учетом разной размерности уровней 2) переходить между уровнями 3) добавлять новый уровень при его отсутствии в момент перехода по уровню Сохранение уровня и пересчет строк. Приятно, когда все работает. Создание нового уровня можно было бы вынести в отдельную функцию. |
|||
Демо игры Камень ножницы бумага | + 10 | ||
1) отображать картинки в зависимости от положения мыши 2) использовать таймер для автогенерации фигур 2) сравнивать фигуры по полю Tag аналог тернарного оператора вида: cpb_rock.Visible = figure == "rock"; Отличная программа, спасибо! |
|||
Сокобан Сокобан - Редактор - Редактирование | + 10 | ||
1) увеличивать и уменьшать карту редактора 2) отображать на карте редактора выбранную картинку из панели инструментов 3) проверять уровень на выполнение всех заданных условий перед сохранением 1) определение места клика: x = ((Point)((PictureBox)sender).Tag).X; 2) вот такая конструкция присваивания - сравнения: toolWall.Checked = currentCell == Cell.wall; использовал panel.Controls.Clear(), чтобы решить проблему со старыми картинками при перерисовке в момент увеличения/уменьшения размера формы. |
|||
Сокобан Сокобан - Редактор - Интерфейс | + 10 | ||
1) использовать панель инструментов ToolStrip 2)Загружать изображения в объект PictureBox 2) заполнять панель на форме объектами в зависимости от заданных параметров SokobanEditor_Resize! не получилось настроить SokobanEditor_Resize. Он лезет вперед всего, даже вперед SokobanEditorForm_Load(object sender, EventArgs e). Вызывается конструктором при инициализации формы строчкой this.ResumeLayout(false); Из-за этого не вызываются функции InitPictures(), LoadPictures() и идет ошибка. Запустить можно только указав их внутри SokobanEditor_Resize. |
|||
Игры со Спрайтами Домино. Финальный аккорд | + 10 | ||
1) обрабатывать событие "нажатие мыши" для определения выбранной плашки домино 2) реализовать плавное убирание домино 1)собрать пасьянc ^_^ 2)взаимодействие между всеми элементами программы. Замечательная программа, спасибо! Что можно добавить: 1) после поражения отрываются все закрытые домино, и выделяются другим цветом. 2) отображать время с начала игры до ее завершения 3) подсказка, можно ли в принципе данный пасьянс собрать |
|||
Игры со Спрайтами Домино. Наведение порядка | + 10 | ||
открывать домино при помощи делегата ShowPlate() разделить методы для лейблов и для спрайтов хорошо получается, правда много убирать кода с лейблов, а жаль его) |
|||
Игры со Спрайтами Домино. Rolling Stones | + 10 | ||
задавать алгоритм для плавного появления домино устройство метода RollDomino даже если случайным образом менять значения в методе RollDomino получаются довольно интересные паттерны. |
|||
Игры со Спрайтами Домино. Пирамида из анимашек | + 10 | ||
использовать виртуальные методы для переопределения существующих функций виртуальные функции как ни странно, понемногу все начинает проясняться. |
|||
Игры со Спрайтами Домино. Три наследника Аниматора | + 10 | ||
Разделять методы переворачивания, дрожания и перемещения домино в отдельные классы. обилие разных классов и их наследование. virtual -> override, а методах Draw такого нет. очень хорошая программа получается, особенно с точки зрения ООП. |
|||
Игры со Спрайтами Домино. Базовый класс Анимаций | + 10 | ||
создавать класс анимации для централизованного управления анимацией домино взаимосвязь между классами так много нового каждый урок. до самостоятельного воспроизведения чувствую еще очень далеко) |
|||
Игры со Спрайтами Домино. Подъём переворотом | + 10 | ||
1) реализация эффекта "дрожания" объекта путем использования тригонометрической формулы 2) эффект переворачивания домино при помощи модификации метода Draw() класса Graph - добавление параметра масштабирования по х,у. механизм переворота плашки домино Очень понравилась реализация "дрожания" плашки домино. При помощи тригонометрической функции все выглядит очень компактно и красиво. |
|||
Игры со Спрайтами Домино. Анимация спрайта | + 10 | ||
1) перемещать плашки домино посредством обновления их координат все было понятно. новая конструкция Спасибо, интересный урок) |
|||
Сокобан Сокобан - Редактор - Загрузка | + 1 | ||
1) проектировать уровни игры в текстовом редакторе 2) считывать файл в массив 3) загружать уровни из текстового редактора в соответствующий класс программы согласно Enum Cell при помощи метода ReadLevelHeader ReadLevelHeader(lines[curr], out curr_level_nr, out width, out height); переменные out , зачем они. Хороший способ считывать уровни из текстового файла, насколько я понимаю, можно как-то то же самое организовать при помощи базы данных? |
|||
Сокобан Сокобан - Вступление | + 10 | ||
1) играть в Сокобан) 10й уровень игры интересная игра, что сказать) |
|||
Игры со Спрайтами Домино. Двойной спрайт | + 2 | ||
1)отрисовывать объекты при помощи класса Sprite. 2) перегружать метод Draw() для отрисовки не спрайта, а объекта класса SpriteDomino 3) отображать и скрывать домино методами Open(), Hide(). 4) быстрое создание метода при помощи Refractor -> Extract Method. case 0: LeftSide = Sprite.Sprite.Load(Properties.Resources.l0); break; много полезного узнал,Refractor -> Extract Method было неожиданно , спасибо) |
|||
Игры со Спрайтами Домино. Отображение плашки | + 1 | ||
1) импортировать классы 2)выводить на форму xml объекты через Picture Box и посредством сериализации сериализация) Очень хороший урок, спасибо! |
|||
Игры со Спрайтами Спрайт. Рисуем плашки | + 10 | ||
создавать изображения домино с использованием спратов красиво рисовать вопросов нет |
|||
Игры со Спрайтами Домино. Ура! Победа! | + 10 | ||
проверять условия на выигрыш или проигрыш путем перебора всех их состояний после каждого хода; логика функции public bool IsLooser(); замечательный урок, правда не очень простой, зато затрагивает многие темы ооп. |
|||
Игры со Спрайтами Домино. Выбираем и убираем | + 10 | ||
-обрабатывать нажатия пользователя по лейблу и, в соответствии в этим, скрывать пары и отображать скрытые домино if (IsDropped(x + 1, y) && IsDropped(x + 1, y + 1) || IsDropped(x - 1, y) && IsDropped(x - 1, y - 1)) не совсем понятно, по какому принципу открываются домино, если, например выбрано одно сверху и одно снизу, откроется снизу или сверху в следующем ряду? |
|||
Игры со Спрайтами Аполлон. Финальное прилунение | + 1 | ||
-выводить спрайты на экран и масштабировать их -заменять лейблы на спрайты -понять как работает масштабирование замечательный урок и программа в целом! Спасибо! Действительно нужно добавить звук. Не понял, как в имеющемся .xml файле поменять цвет линий, а то корабль случайно красным нарисовал. Пробовал автозаменой в текстовом редакторе поменять все вхождения типа <color>1</color> с 1 на 2 - не помогает. |
|||
Игры со Спрайтами Аполлон. Graph и Sprite на Луне | + 10 | ||
-присоединять классы из другой программы и использовать их для загрузки файлов .xml все было понятно вопросов нет) |
|||
Игры со Спрайтами Аполлон. Плавное прилунение | + 1 | ||
управлять движением корабля через таймер и соответствующие функции почему enum ShipStatus объявлен в namespace Apollon, но не в классе Ship, но тем, не менее- вызывается через Ship.status интересно получилось, прилунился не сразу) |
|||
Игры со Спрайтами Аполлон. Законы физики | + 1 | ||
создавать физическую модель корабля определить поля для дальнейшей реализации требуется управление клавиатурой, наверное... |
|||
Игры со Спрайтами Домино. Делегаты отображения | + 10 | ||
использовать делегаты в конструкторе делегаты и все, что с ними связано почему-то если закомментировать функцию Hide, значения не отображаются, и наоборот. Хотя по-идее эта функция должна скрывать значения. |
|||
Игры со Спрайтами Домино. Динамическая пирамида | + 10 | ||
автоматически размещать лейблы на панели разбирать код Windows Designer вложенные циклы для размещения всех лейблов чем больше рядов домино тем выше вероятность собирания пасьянса? |
|||
Игры со Спрайтами Домино. Перемешиваем плашки | + 10 | ||
перемешивать костяшки в случайном порядке создавать функцию для статуса метод - protected void ChangeRandPlates() хороший урок, спасибо. |
|||
Игры со Спрайтами Домино. Правила игры | + 10 | ||
-играть в пасьянс "Домино" -какие методы и свойства требуются для создания игры -как создать набор костяшек для игры посредством двумерного массива -придумать весь набор состояний для Enum State почему Enum State находится вне класса Домино, а Struct Plate- внутри? |
|||
Морской Бой Олимпиада - Самый лучший алгоритм | + 10 | ||
узнал различные алгоритмы понять как это все было реализовано в программе Морской бой. Больше всех понравился алгоритм победителя - №2775. |
|||
Новые технологии Говорящие часы. Воспроизведение | + 10 | ||
-многопоточность в формах, защита от дублирования -представление имен файлов сложением десятков и единиц многопоточность не смог сделать вызов звуковых файлов из ресурсов |
|||
Игры со Спрайтами Спрайт. Рисуем Аполлона | + 10 | ||
-рисовать многосегментные линии -создавать рисунок по трафарету в программе все было достаточно просто интересно что с этими картинками будет дальше |
|||
Игры со Спрайтами Аполлон. Главные герои | + 1 | ||
рисовать ничего слишком короткий урок, чтобы писать отчет) |
|||
Новые технологии Говорящие часы. Запись голоса | + 1 | ||
-записывать и прослушивать звук -библиотека NAudio 1) делегаты: this.BeginInvoke(new EventHandler<WaveInEventArgs>(waveIn_DataAvailable), sender, e); какой урок по ним был? 2) зачем это: if (curr_item >= list.Length / 2) curr_item = 0; -когда достигаешь последнего элемента в списке list[curr_item,1]; программа начинает все опять по кругу |
|||
Игры со Спрайтами Спрайт. Сериализация объекта | + 10 | ||
сериализации и десириализации см. п. 2 классный инструмент получился! |
|||
Игры со Спрайтами Спрайт. Панель инструментов | + 1 | ||
-удалять последнюю созданную линию методом Undo -очищать все поле currColor = Convert.ToInt16(((Button)sender).Tag); Хороший урок, уже что-то проясняется |
|||
Игры со Спрайтами Спрайт. Рисуем линии мышкой | + 2 | ||
-работать с событиями мышки и получать ее текущие координаты -создавать функцию для отображения линии в каком участке кода нужно отрисовывать линию изначально на уроке был создан вариант, где можно рисовать многосегментную линию до нажатия правой кнопки мыши. потом он был заменен, что жаль, поскольку нет механизма привязок к концу или середине линии - сложно точно нарисовать. |
|||
Игры со Спрайтами Спрайт. Класс для Спрайта | + 10 | ||
-использовать класс Static -использовать список List<> -использовать список List<> да, процентов 20-30 с вебинара не вынес) |
|||
Игры со Спрайтами Спрайт. Класс для графики | + 10 | ||
-задавать поля и методы класса graph -использовать перегруженные методы класса graph вывод изображения через bitmap "graphics = Graphics.FromImage(bmp);" делаю второй раз после вебинара. процентов 30% я тогда прослушал, потому что старался успеть за общим составом) |
|||
Игры со Спрайтами Спрайт. Структура для линии | + 10 | ||
использовать структуру <List> и создание массивов линий использование массива из структур скриншот все тот-же с последнего урока, все еще не доделан |
|||
Игры со Спрайтами Спрайт. Первая форма | + 9 | ||
использовать объекты graphics, pen, bitmap успевать походу вебинара. отрисовка изображения - не знал, что требуется 3 действия для этого) скриншота толком нет, т.к. делал все по-ходу вебинара, есть скриншот последнего урока, но он хромает, т.к. я не все успел в конце. |
|||
Морской Бой Олимпиада - Угадай число | + 10 | ||
-использовать нумераторы и классы -взаимосвязь классов и методов, а также проследить, в каком участке кода нужно обновить верхнюю и нижнюю границы при поиске загаданного числа очень интересный урок |
|||
Морской Бой Установка кораблей | + 10 | ||
-использовать событие grid_user_MouseUp и grid_user_KeyDown -размещать и удалять корабли с игрового поля понять логику работы программы очень много новой информации, даже не знаю) |
|||
Морской Бой Делегаты отображения | + 10 | ||
использование делегатов понять, как передаются методы полезный прием, но не очень простой для освоения |
|||
Демо игры Бот для Быстрощёлка | + 1 | ||
работа с объектом Track, автоматическое нажатие мыши при помощи win api автоматическое нажатие мыши при помощи win api не понял, должно ли что-то особое происходить при выставлении таймера на 1мс, у меня просто быстрее щелкает |
|||
Демо игры Игра Быстрощёлк | + 10 | ||
работать с объектом DateTime.Now.Ticks адаптировать программу к расчету скорости не в конце, а при каждом нажатии Спасибо! |
|||
Морской Бой Редактор и Сетка | + 10 | ||
очень много новой информации, в частности активное взаимодействие классов, наследование. Использование массивов и вложенных массивов. Объект DataGridView. думать не структурно, а в рамках модели ооп все супер, правда урок 60 минут "кодирования" подряд - это тяжело. |
|||
Нанософт Твоё портфолио | + 10 | ||
использовать события в форме работать с объектами Tab поиск и исправление ошибок при добавлении исходников других программ в портфолио хороший урок. можно было бы добавить автоматизацию добавления проектов в форму? |
|||
Морской Бой Море и Корабль | |||
создавать методы для классов метод Выстрел класса Море, в частности конструкция Статус статус = корабль[карта_кораблей[t.x, t.y]].Выстрел(t); хороший урок |
|||
Морской Бой Планирование | |||
планировать игру и ее классы подобрать методы и свойства для планируемых классов переменные на русском вынуждают слишком часто переключать раскладку клавиатуры |
|||
Демо игры Лабиринт 2D - игра | + 1 | ||
-работа с формами -работа с классами Label, Sender, Timer -последовательная передача вызова между функциями -самостоятельно восстановить последовательность действий для третьего уровня -В третьем уровне ящики попеременно открываются и закрываются в случайном порядке при помощи класса таймер. Нужно собрать все ключи и не подорваться на бомбе. |
|||
Демо игры Лабиринт 2D - меню | + 1 | ||
-Делать класс для воспроизведения звука -все было достаточно просто Все классно! |
|||
Демо игры Картинка с секретом | + 10 | ||
Работа с формой и управление собитиями События мыши для определения ее положения - Event handler delegate Все ок! |
|||
Микроигры VIP урок. Формула 1 | + 10 | ||
-работа с классами и их методами -работа с панелью -работа с таймером -создание движущегося объекта проследить взаимосвязи между методами класса Машина и формой. Хороший урок, спасибо. |
|||
Демо софт Вступительное слово | |||
что есть интересная методика си шарпа, а не просто книжки додуматься написать в гугле "си шарп вебинар" пока нет |
|||
Демо софт Вам телеграмма! | |||
|
|||
Демо игры C# чего начать программировать | |||
|
|||
Нано-игры VIP урок. Игра 2048 | |||
|
|||
Система Git Добро пожаловать в Зоопарк! | |||
|
|||
Записи вебинаров GIT-практикум | |||
|