# | Название видеоурока | Видео / Тесты | Решило | Рейтинг | Доступ |
---|---|---|---|---|---|
1 |
![]() |
|
|||
Мы начинаем очень интересный шаблон проектирования: MVC. Мы разберёмся, зачем же он нужен и продемонстрируем его работу на нескольких примерах. Отчёт отправил: 10100. Александр Заскотченко Выполнено за 12 мин. [Показать отчёт] Научился: узнал общую информацию про MVC Сложности: ничего Комментарии: Контроллер принимает действия от пользователя затем передаёт их модели, модель на основании этих действий выполняет обработку информации и передаёт её обратно контроллеру, а тот в свою очередь передаёт их виду, который изменяется на основании этих данных. |
|||||
2 | MVC - Counter - ViewConsole |
|
|||
Мы продолжаем знакомство с шаблоном проектирования: MVC. На этом уроке мы начинаем создание первой программы, реализовав базовый функционал вывода информации в консоль. Отчёт отправил: 10100. Александр Заскотченко Выполнено за 10 мин. [Показать отчёт] Научился: Начал изучать MVC Сложности: ничего Комментарии: Мы сделали вывод таким способом для задела на будущее, потом мы можем переделывать View как угодно при этом не трогая модель. |
|||||
3 | MVC - Counter - ViewFrame |
1 тест |
|||
Мы продолжаем знакомство с шаблоном проектирования: MVC. На этом уроке мы создадим ещё одно представление, используя JFrame() с необходимым интерфейсов для возможности использования ActionListener(). Отчёт отправил: 10100. Александр Заскотченко Выполнено за 11 мин. [Показать отчёт] Научился: -- Сложности: ничего Комментарии: всё норм |
|||||
4 | MVC - Counter - ModelPlus |
|
|||
Мы продолжаем знакомство с шаблоном проектирования: MVC. На этом уроке мы создадим Модель и продемонстрируем как она работает. Отчёт отправил: 10100. Александр Заскотченко Выполнено за 10 мин. [Показать отчёт] Научился: разобрался немного что к чему Сложности: разобраться во взаимосвязях Комментарии: Пока не посмотрел как реализован метод notifyObservers не до конца понимал, почему так, но когда увидел сразу стало всё ясно. Думаю надо было упомянуть в уроке, что в методе notifyObservers вызывается метод update() каждого объекта, который был добавлен методом addObserver. Т.е выполнив addObserver(viewFrame), следующим методом notifyObservers(counter), который находится в методе plus() мы по сути выполняем viewFrame.update( this, counter); Короче, пока я вот так для себя не расписал как, что происходит и что куда передаётся, сразу не догнал всю суть до конца. |
|||||
5 | MVC - Counter - ControllerPlusFrame |
1 тест |
|||
Мы продолжаем знакомство с шаблоном проектирования: MVC. На этом уроке мы создадим Контроллер, связывающий Модель и Представление. Отчёт отправил: 10100. Александр Заскотченко Выполнено за 15 мин. [Показать отчёт] Научился: создавать контроллер и через него связывать модель и вид Сложности: уложить в голове, что от куда и куда Комментарии: Пробовал реализовать доп.задание, но чего-то не то у меня получается. |
|||||
6 | MVC - Counter - ControllerPlusConsole |
|
|||
Мы продолжаем знакомство с шаблоном проектирования: MVC. На этом уроке мы создадим Контроллер для второго Представление, которое мы реализовали в самом начале для вывода в консоль. Отчёт отправил: 10100. Александр Заскотченко Выполнено за 10 мин. [Показать отчёт] Научился: связывать два контроллера и вида с одной моделью Сложности: ничего Комментарии: всё норм |
|||||
7 | MVC - Counter - ModelDuplex |
1 тест |
|||
Мы продолжаем знакомство с шаблоном проектирования: MVC. На этом уроке мы создадим ещё одну Модель, которая будет заниматься умножением. Так же переделаем наш код, чтобы он работал с long значениями. Отчёт отправил: 10100. Александр Заскотченко Выполнено за 15 мин. [Показать отчёт] Научился: -- Сложности: ничего Комментарии: всё норм |
|||||
8 | MVC - Counter - ControllerDuplex |
|
|||
Мы продолжаем знакомство с шаблоном проектирования: MVC. На этом уроке мы заканчиваем создание первой программы, для демонстрации данного шаблона проектирования. Отчёт отправил: 10100. Александр Заскотченко Выполнено за 15 мин. [Показать отчёт] Научился: -- Сложности: ничего Комментарии: Шаблон хорош. Но немного запутанный на первый взгляд, если всё распутать и уложить в голове в схему, то позволяет упростить разработку программы. |
|||||
9 |
![]() |
1 тест |
|||
Для более глубокого понимания шаблона проектирования MVC мы напишем на языке Java полноценную прикладную программу "Телефонная книжка". Сначала создадим две формы (JFrame), потом напишем модель и в конце свяжем их через контроллер. В добрый путь!
Отчёт отправил: 10100. Александр Заскотченко Выполнено за 20 мин. [Показать отчёт] Научился: научился предварительно проектировать форму приложения Сложности: нарисовать как будет выглядеть приложение Комментарии: всё отлично |
|||||
10 | MVC - PhoneBook - ViewCard |
|
|||
Мы продолжаем знакомство с шаблоном проектирования: MVC. На этом уроке мы начинаем разработку телефонного справочника, для демонстрации данного шаблона проектирования. Начнём с формы "Карточка пользователя". Отчёт отправил: 10100. Александр Заскотченко Выполнено за 40 мин. [Показать отчёт] Научился: создавать форму сначала просто на JFrame потом на JPanel Сложности: сделать форму красивой Комментарии: Решил сделать форму с применением JPanel т.к у неё функционал шире, можно отступы задать те же и в итоге форма получается красивее. |
|||||
11 | MVC - PhoneBook - User Struct |
1 тест |
|||
Мы продолжаем знакомство с шаблоном проектирования: MVC. На этом уроке мы реализуем передачу данных в нашу форму "Карточка пользователя". Отчёт отправил: 10100. Александр Заскотченко Выполнено за 15 мин. [Показать отчёт] Научился: -- Сложности: ничего Комментарии: всё норм |
|||||
12 | MVC - PhoneBook - ViewList |
|
|||
Мы продолжаем знакомство с шаблоном проектирования: MVC. На этом уроке мы реализуем второй вид "Просмотр/Поиск записей". Отчёт отправил: 10100. Александр Заскотченко Выполнено за 15 мин. [Показать отчёт] Научился: добавлять элементы в JList Сложности: разобраться как в JList добавить элемент, а именно строку. Комментарии: В Windows 10 у текстового поля нету чёткой границы, из-за этого форма получается некрасивая. Пришлось текстовому полю добавить границу командой textFind.setBorder(BorderFactory.createLineBorder(Color.BLACK)); |
|||||
13 | MVC - PhoneBook - UserList Struct |
|
|||
Мы продолжаем создание телефонной книжки в рамках знакомства с шаблоном проектирования: MVC. На этом уроке мы реализуем заполнение списка и передачу в форму списка телефонной книги. Отчёт отправил: 10100. Александр Заскотченко Выполнено за 15 мин. [Показать отчёт] Научился: добавлять скролл Сложности: так и не разобрался до конца с вопросом как можнo испoльзoвaть однy мoдeль для обоиx форм Комментарии: всё норм. Если в методе showList в конце добавить setChanged(); notifyObservers(userList); deleteObserver(viewList); <------ То тогда всё отрабатывает нормально, но наверное это неправильно. |
|||||
14 | MVC - PhoneBook - UserSQL - Methods |
|
|||
Мы продолжаем создание телефонной книжки в рамках знакомства с шаблоном проектирования: MVC. На этом уроке мы создадим базу данных на движке sqlite, использовав удобное для этого приложение: sqliteexpert.com. Отчёт отправил: 10100. Александр Заскотченко Выполнено за 15 мин. [Показать отчёт] Научился: -- Сложности: ничего Комментарии: всё норм |
|||||
15 | MVC - PhoneBook - UserSQL - Queries |
|
|||
Мы продолжаем создание телефонной книжки в рамках знакомства с шаблоном проектирования: MVC. На этом уроке мы выясним, какие именно sql-запросы необходимы для каждого метода. Отчёт отправил: 10100. Александр Заскотченко Выполнено за 10 мин. [Показать отчёт] Научился: вспомнил SQL запросы Сложности: вспомнить Комментарии: всё норм, в консоли как-то привычнее работать с базой |
|||||
16 | MVC - PhoneBook - UserSQL - Connect |
|
|||
Мы продолжаем создание телефонной книжки в рамках знакомства с шаблоном проектирования: MVC. На этом уроке мы реализуем класс UserSQL() на основе шаблона проектирования: ActiveRecord, для работы с базой данных. Отчёт отправил: 10100. Александр Заскотченко Выполнено за 20 мин. [Показать отчёт] Научился: подключаться и создавать запросы к БД в java Сложности: ничего Комментарии: Думаю, что подключение к БД стоит вынести в отдельный класс и сделать по шаблону Singltone. Как мне помнится говорили, что этот шаблон часто применяют для создания подключений к БД. |
|||||
17 | MVC - PhoneBook - UserSQL - Singleton |
|
|||
Мы продолжаем создание телефонной книжки в рамках знакомства с шаблоном проектирования: MVC. На этом уроке мы воспользуемся ещё одним шаблоном проектирования: Singleton. Отчёт отправил: 10100. Александр Заскотченко Выполнено за 20 мин. [Показать отчёт] Научился: повторил Singletone Сложности: ничего Комментарии: всё норм |
|||||
18 | MVC - PhoneBook - UserSQL - CRUD |
|
|||
Мы продолжаем создание телефонной книжки в рамках знакомства с шаблоном проектирования: MVC. На этом уроке мы доработаем класс UserSQL. Отчёт отправил: 10100. Александр Заскотченко Выполнено за 20 мин. [Показать отчёт] Научился: повторил то, что уже немного подзабыл Сложности: ничего Комментарии: всё норм |
|||||
19 | MVC - PhoneBook - UserListSQL - Select |
|
|||
Мы продолжаем создание телефонной книжки в рамках знакомства с шаблоном проектирования: MVC. На этом уроке мы реализуем класс UserListSQL, для получения списка всех пользователей. Отчёт отправил: 10100. Александр Заскотченко Выполнено за 12 мин. [Показать отчёт] Научился: -- Сложности: ничего Комментарии: всё норм |
|||||
20 | MVC - PhoneBook - UserSQLTest - DBase |
|
|||
Мы продолжаем создание телефонной книжки в рамках знакомства с шаблоном проектирования: MVC. На этом уроке мы приступим к тестированию нашей программы при помощи JUnit. Отчёт отправил: 10100. Александр Заскотченко Выполнено за 20 мин. [Показать отчёт] Научился: создавать класс для тестирования Сложности: ничего Комментарии: всё норм. как вариант, можно было передавать имя базы данных к которой требуется подключиться в методе getInstance(); |
|||||
21 | MVC - PhoneBook - UserSQLTest - Insert |
|
|||
Мы продолжаем создание телефонной книжки в рамках знакомства с шаблоном проектирования: MVC. На этом уроке мы начинаем писать тесты для класса UserSQL() при помощи JUnit. Отчёт отправил: 10100. Александр Заскотченко Выполнено за 25 мин. [Показать отчёт] Научился: проводить тесты Сложности: ничего Комментарии: всё норм |
|||||
22 | MVC - PhoneBook - UserSQLTest - Select |
|
|||
Мы продолжаем создание телефонной книжки в рамках знакомства с шаблоном проектирования: MVC. На этом уроке мы пошагово изучим работу метода по добавлению записи в БД и продолжим реализацию оставшихся методов для тестирования класса UserSQL(). Отчёт отправил: 10100. Александр Заскотченко Выполнено за 15 мин. [Показать отчёт] Научился: ещё больше узнал про функции для тестирования Сложности: ничего Комментарии: Сделал свой вариант метода updateTest(), а так всё норм |
|||||
23 | MVC - PhoneBook - UserSQLTest - Slashes |
|
|||
Мы продолжаем создание телефонной книжки в рамках знакомства с шаблоном проектирования: MVC. На этом уроке мы реализуем тестирование обновления записей в БД для класса UserSQL(). Отчёт отправил: 10100. Александр Заскотченко Выполнено за 20 мин. [Показать отчёт] Научился: узнал что такое SQL инъекция Сложности: придумать тест для UserListSQL, так ничего в голову такого и не пришло. Комментарии: всё норм |
|||||
24 | MVC - PhoneBook - Model - Ресторанная аналогия |
|
|||
Мы продолжаем создание телефонной книжки в рамках знакомства с шаблоном проектирования: MVC. На этoм ypoкe мы ещё рaз обсyдим рeсторанную аналогию MVC. И приступим к созданию кухни - Модели. Напишем заголовки всех методов. Отчёт отправил: 10100. Александр Заскотченко Выполнено за 15 мин. [Показать отчёт] Научился: -- Сложности: ничего Комментарии: 1. Мне актив рекорд больше напоминает работу повара с меню и рецептами. 2.Я вместо метода updateUser() предложил метод editUser(). И ещё, мне кажется изначально стоило разложить модели, виды и контроллеры по пакетам с соответствующими названиями, проще было бы всё это увязывать в голове. И ещё, вопрос, прочитал тут на одном из ресурсов, что встроенные Observer и Observable на практике применяются очень редко, почему ? Также, когда читал про Swing, узнал, что эта библиотека вся построена по шаблону MVC, но для упрощения реализации при её разработке отказались от отдельного контроллера и совместили совместили его с видом, часто ли такое применяется в реальных программах или это было актуально только для Swinga ? |
|||||
25 | MVC - PhoneBook - Model - Methods |
|
|||
Мы продолжаем создание телефонной книжки в рамках знакомства с шаблоном проектирования: MVC. На этoм ypoкe мы реализуем все методы для нашей модели. Отчёт отправил: 10100. Александр Заскотченко Выполнено за 12 мин. [Показать отчёт] Научился: научился создавать модель Сложности: пока ещё не всё разложил по полочкам. Комментарии: всё норм. |
|||||
26 | MVC - PhoneBook - Controller - Model / ViewList |
|
|||
Мы продолжаем создание телефонной книжки в рамках знакомства с шаблоном проектирования: MVC. На этoм ypoкe мы реализуем контроллер для связи ViewList() с Model(). Отчёт отправил: 10100. Александр Заскотченко Выполнено за 12 мин. [Показать отчёт] Научился: связывать вид с моделью через контроллер Сложности: ничего Комментарии: всё норм |
|||||
27 | MVC - PhoneBook - Controller - Scroller |
|
|||
Мы продолжаем создание телефонной книжки в рамках знакомства с шаблоном проектирования: MVC. На этoм ypoкe мы продолжаем создание контроллера для связи ViewList() с Model(). Отчёт отправил: 10100. Александр Заскотченко Выполнено за 5 мин. [Показать отчёт] Научился: -- Сложности: ничего Комментарии: всё норм |
|||||
28 | MVC - PhoneBook - Controller - Class for Click |
|
|||
Мы продолжаем создание телефонной книжки в рамках знакомства с шаблоном проектирования: MVC. На этом уроке мы создадим ещё один контроллер для формы с отображением карточки пользователя. На этой форме две кнопки, поэтому для создания слушателей мы создадим отдельные внутренние классы. Отчёт отправил: 10100. Александр Заскотченко Выполнено за 12 мин. [Показать отчёт] Научился: -- Сложности: ничего Комментарии: всё норм |
|||||
29 | MVC - PhoneBook - Controller - Buttons |
|
|||
Мы продолжаем создание телефонной книжки в рамках знакомства с шаблоном проектирования: MVC. На этом уроке мы запрограммируем кнопочки. По нажатии кнопки "Добавить" - показать карточку. По нажатии кнопки "Сохранить" - сохранить данные, а также скрыть карточку и обновить список имён на главной форме. Отчёт отправил: 10100. Александр Заскотченко Выполнено за 20 мин. [Показать отчёт] Научился: Добавлять действия к кнопкам. Сложности: ничего Комментарии: всё норм. |
|||||
30 | MVC - PhoneBook - Controller - Select / Update |
|
|||
Мы продолжаем создание телефонной книжки в рамках знакомства с шаблоном проектирования: MVC. На этом уроке мы сделаем открытие карточки по щелчку на записи. Также реализуем сохранение изменений и удаление записей. Создание телефонной книжки практически завершено! Отчёт отправил: 10100. Александр Заскотченко Выполнено за 30 мин. [Показать отчёт] Научился: многому :) Сложности: не запутаться Комментарии: всё норм, но честно я запутался и делал на уроке всё автоматом, всё таки надо как-то более структурировать информацию.Поэтому я буду пересматривать все уроки заново с зарисовкой схемы создания всей программы. |
|||||
31 | MVC - PhoneBook - Search - Message |
|
|||
Мы начинаем создание поиска по телефонной книжке. Начнём с переноса текстовых сообщения в отдельное поле. Для этого потребуется создать панель, чтобы всё поместилось. Также добавим побольше разных записей, чтобы было среди чего искать. Отчёт отправил: 10100. Александр Заскотченко Выполнено за 10 мин. [Показать отчёт] Научился: работать со свойствами JLabel Сложности: ничего Комментарии: Изменил цвет шрифта метки и поменял цвет фона. С фоном есть небольшой прикол, а заключается он в том, что даже если цвет фона установлен, фон у JLabel не отображается. Для того, чтобы JLabel стал показывать фон необходимо вызвать метод setOpaque и передать туда true. Тем самым мы скажем JLabel, что хотим сделать непрозрачным его фон. |
|||||
32 | MVC - PhoneBook - Search - Select LIKE |
|
|||
На этом уроке мы обсудим два способа, как сделать поиск. Мы напишем запрос для фильтрации записей в нашей телефонной книжке. Отчёт отправил: 10100. Александр Заскотченко Выполнено за 11 мин. [Показать отчёт] Сложности: ответ на второй вопрос Комментарии: всё норм.Полазил я в интернете, но всё же поиск по БД лучше всего сделать с помощью запроса к БД. |
|||||
33 | MVC - PhoneBook - Search - Listener |
|
|||
На этом уроке мы создадим слушателя, который будет реагировать на изменение текста в строке поиска. Отчёт отправил: 10100. Александр Заскотченко Выполнено за 13 мин. [Показать отчёт] Научился: создавать слушателя для текстового поля Сложности: ничего Комментарии: всё норм |
|||||
34 | MVC - PhoneBook - Search - Finish |
|
|||
На этом уроке мы .... ЗАКОНЧИМ создание телефонной книжки! Мы допишем функцию поиска по базе и протестируем её. Отчёт отправил: 10100. Александр Заскотченко Выполнено за 15 мин. [Показать отчёт] Научился: сделали поиск с фильтром Сложности: опять я запутался :) Комментарии: всё норм, буду пересматривать все уроки только без тестов, а то они меня немного сбили. |
|||||
35 | ФИНАЛЬНЫЙ УРОК |
без видео |
|||
Ты молодец! Поздравляю с завершением создания телефонной книжки! Запиши видеообзор созданной программы и напиши отзыв об этом видеокурсе. Отчёт отправил: 10100. Александр Заскотченко Выполнено за 10 мин. [Показать отчёт] Научился: Записывать действия на экране. Сложности: ничего Комментарии: Курс хороший, но немного запутанный, хотя шаблон MVC сам по себе путанный. Курс рекомендую к прохождению. Пройти лучше в три этапа. 1. Пройти повторяя всё за учителем и стараясь понять всё. 2.Просмотреть все уроки с начала, не повторяя, а вдумываясь во всё происходящее и выстраивая связь между всеми действиями в программе, можно рисовать схему по ходу. 3.Попробовать написать эту программу самостоятельно пользуясь схемой из второго этапа, но уже разбив по отдельным папкам модель, вид, контроллёр. Прийти к окончательному пониманию MVC. Видеообзор: _T8iSIfVYFE |
|||||
36 | VIP - MVC - PhoneBook - Tripple Click |
|
|||
На этом дополнительном вип-уроке мы сделаем открытие карточек более привычным и удобным - по двойному щелчку и по нажатию клавишы Enter. Отчёт отправил: 10100. Александр Заскотченко Выполнено за 15 мин. [Показать отчёт] Научился: сделали выбор из списка по клавише ENTER и по двойному клику. Сложности: ничего Комментарии: всё норм |
|||||
37 | VIP - MVC - PhoneBook - JModal |
|
|||
На этом коротком вип-уроке мы сделаем форму карточки модальным окном. Это означает, что нельзя будет переключиться в основное окно, пока карточка открыта. Отчёт отправил: 10100. Александр Заскотченко Выполнено за 5 мин. [Показать отчёт] Научился: переделали окно карточки из обычного в модальное диалоговое Сложности: ничего Комментарии: всё норм |
|||||
38 | VIP - MVC - PhoneBook - Error Checking |
|
|||
На этом уроке мы вынесем обработку ошибок на более высокий уровень. Добавим в Представление функционал отображения ошибок из базы данных. Отчёт отправил: 10100. Александр Заскотченко Выполнено за 20 мин. [Показать отчёт] Научился: обрабатывать ошибки и сообщать о них Сложности: ничего Комментарии: Следующий курс будет MVC + JavaFX, для себя уже начал изучать JavaFX и там MVC уже заложен в концепцию создания программы с использованием JavaFX. Как теперь сделать из всего, что мы написали запускаемый файл , типа как .exe ? |
|||||
39 | VIP - MVC - PhoneBook - UML |
|
|||
Схему проекта проще всего составить, когда программа уже написана. А ещё проще это сделать, когда под рукой есть хороший инструмент. На этом уроке мы создадим UML схему нашего проекта с использованием программы Code 2 UML sourceforge.net/projects/code2uml САМОСТОЯТЕЛЬНОЕ ЗАДАНИЕ 1. Пройти курс по созданию UI на JavaFX. 2. Создать новые представления ViewCardFX, ViewListFX на JavaFX. 3. Написать контроллеры для связи новых представлений с моделью. Прочуствовать всю мощь MVC - как была изменён вид программы без изменения модели. Отчёт отправил: 10100. Александр Заскотченко Выполнено за 15 мин. [Показать отчёт] Научился: создавать UML диаграмму с помощью программы Code 2 UML Сложности: ничего Комментарии: Следующий курс JavaFX. Вообще, мне кажется, что надо было сразу с JavaFX начинать, т.к там MVC представлен более явно. А так, конечно же курс крутой. |
|||||
Итого: 39 видеоуроков |
6 час. 53 мин. 5 тестов |
13 чел. | |||
Финалисты: Алексей В., Сергей Соколов, Елена, Новопашин Владимир, Фомичева Наталья, Tekashnik, Александр, Александр Заскотченко, Иван Воронин, Сергей Тирпиц, Yefim, Anatoli, Tom . |