# | Название видеоурока | Видео / Тесты | Решило | Рейтинг | Доступ |
---|---|---|---|---|---|
1 |
![]() |
2 теста |
|||
Мы начинаем знакомство с шаблоном проектирования Состояние. На этом уроке мы узнаем назначение этого шаблона и его отличия от Стратегии. Далее мы напишем две программы: игру Камень-ножницы-бумага и целый Калькулятор. Отчёт отправил: 17606. Виктор Выполнено за 18 дней 3 час. 15 мин. [Показать отчёт] Научился: Суть паттерна State в том, что объект может менять свое поведение в зависимости от состояния, а в паттерне Strategy в алгоритмов нет возможности менять контекст, они выполняют только то, что им задано. Также в интерфейсе State должен присутствовать обработчик события который уведомляет объект о текущем состоянии Сложности: Не возникло |
|||||
2 | State - КНБ - States |
1 тест |
|||
Мы начинаем создание программы "Камни, ножницы, бумага" для демонстрации шаблона проектирования: "State". На этом уроке мы подготовим основные классы и интерфейс. Отчёт отправил: 17606. Виктор Выполнено за 14 час. 13 мин. [Показать отчёт] Научился: Познакомился с реализацией паттерна State, в литературе пишут, что его фишка в том, что в этом патерне для обратной связи задействован обработчик события или делегат, который сообщает объекту о состояниях Сложности: Не возникло |
|||||
3 | State - КНБ - Play |
1 тест |
|||
Мы продолжаем создание программы "Камни, ножницы, бумага" для демонстрации шаблона проектирования: "State". На этом уроке мы реализуем необходимые алгоритмы для того, чтобы можно было полноценно поиграть. Отчёт отправил: 17606. Виктор Выполнено за 1 час. 56 мин. [Показать отчёт] Научился: Очень интересная игра, главное - практическая), в том смысле, что на ее примере легко учить языки программирования. Я сталкивался с написанием этой игры пару лет назад, когда учил JavaScript, но там вся логика игры построена на использовании конструкции if...else Сложности: Не возникло |
|||||
4 | VIP - State - КНБ - JFrame |
1 тест |
|||
Мы закончили создание программы "Камни, ножницы, бумага" для демонстрации шаблона проектирования: "State". Но на этом уроке мы добавим GUI интерфейс на основе JFrame. Отчёт отправил: 17606. Виктор Выполнено за 1 час. 56 мин. [Показать отчёт] Научился: C классом Frame не получилось, поскольку в C# он находится в пространстве имен Windows.UI.Xaml.Controls, которое в консольное приложение никак не хотело присоединяться, требуя очевидно Windows Form Пошел другим путем и через Nuget, присоединил соответствующий пакет Frame, но с ним также ничего не вышло, к сожалению Сложности: Найти аналог классу JFrame в C#. Аналог скорее всего класс Frame(), но с консольным приложением он никак не захотел работать |
|||||
5 | VIP - State - КНБ - JButtons |
1 тест |
|||
Мы продолжаем создание GUI интерфейса для игры "Камни, ножницы, бумага". На этом уроке мы исправим косметические ошибки и продолжим реализовывать GUI интерфейс для возможности полноценной игры. Отчёт отправил: 17606. Виктор Выполнено за 1 час. 43 мин. [Показать отчёт] Научился: Пересоздал в третий раз этот проект, но уже в Windows Form, но опять таки с классом Frame ничего не вышло, сделал просто через Form. По ходу особо в синтаксис языка Java не вникал, но на С# это все намного проще, особенно создание кнопок Сложности: Совместить синтаксисы C# and Java |
|||||
6 | ПОЛУФИНАЛЬНЫЙ УРОК |
без видео 1 тест |
|||
Поздравляю c завершением первой части курса. Напиши, чему ты научился, нравится ли тебе данный шаблон. Какие видишь преимущества и недостатки. Отчёт отправил: 17606. Виктор Выполнено за 10 мин. [Показать отчёт] Научился: Вот скажите, разве справедливо за финальные и полуфинальные уроки снимать по 50 байтов? Эти уроки ничему не учат! Конечно многие могут поспорить, типа же это классно: развивает логическое мышление, умение формулировать, анализировать, выделять главную мысль... может и развивает, но зачем же байты снимать?) Категорически не согласен!)) Шаблон легкий! Как в понимании так и запоминании: "объекты меняют свое поведение в зависимости от состояния" я всегда, когда слышу эту фразу, думаю об алкоголе)) да и на аналогиях запоминается лучше Сложности: Не возникло |
|||||
7 | State - Целый калькулятор - States |
1 тест |
|||
Мы начинаем создание целого калькулятора для демонстрации использования шаблона проектирования State. На этом уроке мы изучим работу калькулятора. Отчёт отправил: 17606. Виктор Выполнено за 40 мин. [Показать отчёт] Научился: Рисовать схему в стандартной программе Windows. Когда-то уже писал калькулятор на JavaScript и самого кода там не так уж и много на JS но зато кнопки помнится вырисовывал на SCSS со всеми этими миксинами (@mixin) долго и нудно) Сложности: Не возникло |
|||||
8 | State - Целый калькулятор - Context |
1 тест |
|||
Мы продолжаем создание целого калькулятора для демонстрации использования шаблона проектирования State. На этом уроке мы реализуем базовую логику. Отчёт отправил: 17606. Виктор Выполнено за 29 мин. [Показать отчёт] Научился: Создал заглушки для классов конкретных состояний, а также реализовал необходимую логику в классе Context() Сложности: Не возникло |
|||||
9 | State - Целый калькулятор - Press key |
1 тест |
|||
Мы продолжаем создание целого калькулятора для демонстрации использования шаблона проектирования State. На этом уроке мы реализуем основной класс Program(), чтобы можно было тестировать написанный код. Отчёт отправил: 17606. Виктор Выполнено за 1 час. 39 мин. [Показать отчёт] Научился: В С# есть прекрасный метод Console.Read(), который возвращает int, попытался им воспользоваться, но в таком случае пришлось перекраивать всю программу, поэтому решил взять пока Console.ReadLIne(), который возвращает строку, а потом уже в конце программы вернуться к экспериментам с Console.Read() Сложности: Не возникло |
|||||
10 | State - Целый калькулятор - Logic |
1 тест |
|||
Мы продолжаем создание целого калькулятора для демонстрации использования шаблона проектирования State. На этом уроке мы реализуем переход между состояниями ввода данных. Постарайтесь самостоятельно найти все ошибки в программе. Потом сравните со списком ошибок, которые нашёл Иван Воронин: https://www.videosharp.info/10558/checking/design-state=1510 Отчёт отправил: 17606. Виктор Выполнено за 2 час. 34 мин. [Показать отчёт] Научился: Реализовал классы StateFirst/Opers/Second/Result() и калькулятор заработал Сложности: Не возникло |
|||||
11 | State - Целый калькулятор - 16 кнопок |
1 тест |
|||
На этом уроке мы сделаем графический интерфейс для калькулятора. Попрактикуемся в использовании JFrame, JButton, JLabel, JPanel. Немножко доработаем контекст и состояния. Отчёт отправил: 17606. Виктор Выполнено за 8 дней 4 час. 12 мин. [Показать отчёт] Научился: Несколько раз откладывал решение этого урока, а оказалось всё элементарно. Просто поначалу пугало сильное отличие относительно решений на джаве и сишарпе, но повторюсь, к счастью, оказалось не таким уж сложным, как выглядело поначалу) Сложности: Практически не возникло) |
|||||
12 | State - Целый калькулятор - Fix Bugs |
1 тест |
|||
На этом уроке мы исправим ошибки, которые были допущены при реализации функций перехода между состояниями. Отчёт отправил: 17606. Виктор Выполнено за 21 час. 20 мин. [Показать отчёт] Научился: Ошибки, честно говоря, сам не искал. Такое даже в голову не приходило. Программа ведь работает - значит все прекрасно) Может в предыдущем уроке и было такое задание, но то ли пропустил мимо ушей, а может и не было такого - точно не помню... Сложности: Не возникло |
|||||
13 | ФИНАЛЬНЫЙ УРОК |
без видео 2 теста |
|||
Поздpaвляю! Твoя зaдaча - прoверить cебя и пpойти тест, см. вкладку "Тест". Напиши отзыв или видеообзор по этому видеокурсу. Отчёт отправил: 17606. Виктор Выполнено за 49 мин. [Показать отчёт] Научился: Интересный патерн, интересные проекты и хороший курс) Сложности: Не возникло Видеообзор: p7LxJ07CKig |
|||||
Итого: 13 видеоуроков |
2 час. 18 мин. 15 тестов |
11 чел. | |||
Финалисты: Сергей Соколов, Иван Воронин, Алексей Малышев, Александр, Новопашин Владимир, Tekashnik, Виктор, Dmitry Sinitsin, Yefim, Anatoli, Tom . |