# | Название видеоурока | Видео / Тесты | Решило | Рейтинг | Доступ |
---|---|---|---|---|---|
1 |
![]() |
|
|||
Мы начинаем очень интересный шаблон проектирования: MVC. Мы разберёмся, зачем же он нужен и продемонстрируем его работу на нескольких примерах. Отчёт отправил: 11589. Yefim Выполнено за 52 дня 1 час. 28 мин. [Показать отчёт] Научился: Смотреть на прогамму как на шаблон MVC. Сложности: Схему, представленную на экране, лучше назвать MVCU. Так как в этой системе взаимодействуют 4 главных участника: Модель(М), Контроллер(К), Представление-Вид(В) и Пользователь(П). 1. Пользователь смотрит на (В) и реагирует на то, что видит. 2. Его реакция передается (К), а тот передает ее (М). 3. (М) - обрабатывает полученную информацию и возврашает её (К). 4. (К) - передает обновление (В). 5. (В) - меняет сыое представление. Далее все повторяется с п.1. |
|||||
2 | MVC - Counter - ViewConsole |
|
|||
Мы продолжаем знакомство с шаблоном проектирования: MVC. На этом уроке мы начинаем создание первой программы, реализовав базовый функционал вывода информации в консоль. Отчёт отправил: 11589. Yefim Выполнено за 1 час. 12 мин. [Показать отчёт] Научился: Из этого урока никак непонятно в чем преимущество использования шаблона MVC. Возможно, все прояснится потом. Сложности: В моей версии Эклипса кдасс Observer считается устаревшим. На скриншоте видно как это выглядит. Все работает. Но какую опцию из предложенных следует выбрать? |
|||||
3 | MVC - Counter - ViewFrame |
1 тест |
|||
Мы продолжаем знакомство с шаблоном проектирования: MVC. На этом уроке мы создадим ещё одно представление, используя JFrame() с необходимым интерфейсов для возможности использования ActionListener(). Отчёт отправил: 11589. Yefim Выполнено за 1 час. 21 мин. [Показать отчёт] Научился: создавать представление,используя JFrame() с необходимым интерфейсом для возможности применения ActionListener() Сложности: ------------------- |
|||||
4 | MVC - Counter - ModelPlus |
|
|||
Мы продолжаем знакомство с шаблоном проектирования: MVC. На этом уроке мы создадим Модель и продемонстрируем как она работает. Отчёт отправил: 11589. Yefim Выполнено за 20 час. 25 мин. [Показать отчёт] Научился: Создавать Модель и демонстрировать как она работает. Сложности: ------------ |
|||||
5 | MVC - Counter - ControllerPlusFrame |
1 тест |
|||
Мы продолжаем знакомство с шаблоном проектирования: MVC. На этом уроке мы создадим Контроллер, связывающий Модель и Представление. Отчёт отправил: 11589. Yefim Выполнено за 1 час. 30 мин. [Показать отчёт] Научился: Создавать Контроллер, связывающий Модель и Представление. Сложности: -------------- |
|||||
6 | MVC - Counter - ControllerPlusConsole |
|
|||
Мы продолжаем знакомство с шаблоном проектирования: MVC. На этом уроке мы создадим Контроллер для второго Представление, которое мы реализовали в самом начале для вывода в консоль. Отчёт отправил: 11589. Yefim Выполнено за 3 час. 5 мин. [Показать отчёт] Научился: Реализовать класс ControllerPlusConsole() Связывать оба представления, Console и Frame, для параллельного вывода информации. Сложности: ---------------- |
|||||
7 | MVC - Counter - ModelDuplex |
1 тест |
|||
Мы продолжаем знакомство с шаблоном проектирования: MVC. На этом уроке мы создадим ещё одну Модель, которая будет заниматься умножением. Так же переделаем наш код, чтобы он работал с long значениями. Отчёт отправил: 11589. Yefim Выполнено за 2 час. 11 мин. [Показать отчёт] Научился: Реализовывать 2 класса: ModelDuplex extends Observable и ControllerDuplexFrame implements ActionListener, а также модифицировать основной метод main(), используя новые классы. Сложности: ------------------------- |
|||||
8 | MVC - Counter - ControllerDuplex |
|
|||
Мы продолжаем знакомство с шаблоном проектирования: MVC. На этом уроке мы заканчиваем создание первой программы, для демонстрации данного шаблона проектирования. Отчёт отправил: 11589. Yefim Выполнено за 1 час. 30 мин. [Показать отчёт] Научился: Реализовывать класс ControllerDuplexConsole() и модифицировать основной метод main(), используя новый класс. Правильно инициализировать начальное значение параметра при запуске программы. Сложности: ------------ |
|||||
9 |
![]() |
1 тест |
|||
Для более глубокого понимания шаблона проектирования MVC мы напишем на языке Java полноценную прикладную программу "Телефонная книжка". Сначала создадим две формы (JFrame), потом напишем модель и в конце свяжем их через контроллер. В добрый путь!
Отчёт отправил: 11589. Yefim Выполнено за 3 час. 49 мин. [Показать отчёт] Научился: Познакомился с сервером Mockup Сложности: Непонятно, как сохранить проект, чтобы потом его продолжить? |
|||||
10 | MVC - PhoneBook - ViewCard |
|
|||
Мы продолжаем знакомство с шаблоном проектирования: MVC. На этом уроке мы начинаем разработку телефонного справочника, для демонстрации данного шаблона проектирования. Начнём с формы "Карточка пользователя". Отчёт отправил: 11589. Yefim Выполнено за 10 час. 36 мин. [Показать отчёт] Научился: Реализовывать класс ViewCard extends JFrame Сложности: --------- |
|||||
11 | MVC - PhoneBook - User Struct |
1 тест |
|||
Мы продолжаем знакомство с шаблоном проектирования: MVC. На этом уроке мы реализуем передачу данных в нашу форму "Карточка пользователя". Отчёт отправил: 11589. Yefim Выполнено за 5 час. 33 мин. [Показать отчёт] Научился: Реализовывать передачу данных в форму через шаблон Observer. Сложности: ------------ |
|||||
12 | MVC - PhoneBook - ViewList |
|
|||
Мы продолжаем знакомство с шаблоном проектирования: MVC. На этом уроке мы реализуем второй вид "Просмотр/Поиск записей". Отчёт отправил: 11589. Yefim Выполнено за 17 час. 34 мин. [Показать отчёт] Научился: Создавть форму, используя структуру BorderLayout. Сложности: --- |
|||||
13 | MVC - PhoneBook - UserList Struct |
|
|||
Мы продолжаем создание телефонной книжки в рамках знакомства с шаблоном проектирования: MVC. На этом уроке мы реализуем заполнение списка и передачу в форму списка телефонной книги. Отчёт отправил: 11589. Yefim Выполнено за 1 день 21 мин. [Показать отчёт] Научился: Отображать абонентов в списке на форме. Сложности: ------------------- |
|||||
14 | MVC - PhoneBook - UserSQL - Methods |
|
|||
Мы продолжаем создание телефонной книжки в рамках знакомства с шаблоном проектирования: MVC. На этом уроке мы создадим базу данных на движке sqlite, использовав удобное для этого приложение: sqliteexpert.com. Отчёт отправил: 11589. Yefim Выполнено за 1 день 1 час. 30 мин. [Показать отчёт] Научился: Создавать класс UserSQL() с методами insert/select/update/delete() Сложности: --------------- |
|||||
15 | MVC - PhoneBook - UserSQL - Queries |
|
|||
Мы продолжаем создание телефонной книжки в рамках знакомства с шаблоном проектирования: MVC. На этом уроке мы выясним, какие именно sql-запросы необходимы для каждого метода. Отчёт отправил: 11589. Yefim Выполнено за 2 час. 21 мин. [Показать отчёт] Научился: Создавать sql-запросы для методов: insert/select/update/delete() Сложности: Почему-то я не нашел в видео уроке момент создания структуры базы данных. Попытался сделать это самостоятельно. Но видно возникла проблема с указанием свойств поля id. При создании записи в среде вручную возникали проблемы. Это важный момент и ему следовало бы уделить должное внимание. |
|||||
16 | MVC - PhoneBook - UserSQL - Connect |
|
|||
Мы продолжаем создание телефонной книжки в рамках знакомства с шаблоном проектирования: MVC. На этом уроке мы реализуем класс UserSQL() на основе шаблона проектирования: ActiveRecord, для работы с базой данных. Отчёт отправил: 11589. Yefim Выполнено за 37 мин. [Показать отчёт] Научился: Хотел бы научиться работать с базой данных. Но не научился. Сложности: Компиляция проходит нормально, но возникает ошибка: java.lang.ClassNotFoundException: org.sqlite.JDBC Пытался реализовать предложения найденные в интернете, но ничто не помогает. Если кто знает как решить эту проблему, буду очень благодарен. И еще одна просьба. Если уж кому-то хочется отклонить мой отчет, то сделайте это, если уверены, что знаете решение проблемы и готовы рассказать о нём. Удаление отчета лишит других участников сообщества оказать помощь. |
|||||
17 | MVC - PhoneBook - UserSQL - Singleton |
|
|||
Мы продолжаем создание телефонной книжки в рамках знакомства с шаблоном проектирования: MVC. На этом уроке мы воспользуемся ещё одним шаблоном проектирования: Singleton. Отчёт отправил: 11589. Yefim Выполнено за 1 мин. [Показать отчёт] Научился: Реализовывать отдельный класс синглтон DBase(), позволяющий подключаться к базе данных один раз. Сложности: В прошлом отчете я сообщал о проблеме, связанной с подключением к базе данных. Частичное решение проблемы я нашел в интернете в видео уроках Евгения Витольдовича: SQLite - Установка базы, создание таблицы, примеры запросов. https://www.youtube.com/watch?v=VSvzxT_wkGY&feature=emb_rel_pause ----------------- 2. База SQLite - Подключение из Java https://www.youtube.com/watch?v=XnWYNIMTRHY Непонятно, Почему эти уроки не вошли в данный курс? В простейшей программе мне удалось подключиться, в то время как мой Eclipse Version 2018-12-(4.10.0) продолжал сопротивляться. Оказалось, что секрет заключается в следующем: В окне Project Explorer находим свой проект ->MVC-Phonebook->JRE System Library [Java...] далее с помощью правой кнопки мыши находим Build Path->Configure Build Path->открывается окно свойств проекта (см. скриншот). Выбираем вкладку Libraries Далее ->Classpath далее клик Add JARs... и выбираем файл e:\STUDY\SQLite3\sqlite-jdbc-3.30.1.jar далее Apply and Close После чего у меня все заработало. |
|||||
18 | MVC - PhoneBook - UserSQL - CRUD |
|
|||
Мы продолжаем создание телефонной книжки в рамках знакомства с шаблоном проектирования: MVC. На этом уроке мы доработаем класс UserSQL. Отчёт отправил: 11589. Yefim Выполнено за 3 дня 12 час. 6 мин. [Показать отчёт] Научился: Реализовать методы UserSQL().select(),UserSQL().update(),UserSQL().delete() Сложности: ------- |
|||||
19 | MVC - PhoneBook - UserListSQL - Select |
|
|||
Мы продолжаем создание телефонной книжки в рамках знакомства с шаблоном проектирования: MVC. На этом уроке мы реализуем класс UserListSQL, для получения списка всех пользователей. Отчёт отправил: 11589. Yefim Выполнено за 1 день 14 час. 45 мин. [Показать отчёт] Научился: Реализовывать класс UserListSQL(). Сложности: -------------------------------- |
|||||
20 | MVC - PhoneBook - UserSQLTest - DBase |
|
|||
Мы продолжаем создание телефонной книжки в рамках знакомства с шаблоном проектирования: MVC. На этом уроке мы приступим к тестированию нашей программы при помощи JUnit. Отчёт отправил: 11589. Yefim Выполнено за 1 день 11 час. 29 мин. [Показать отчёт] Научился: Познакомился с технологией создания пакетов вообще и для тестирования в частности. Сложности: В разделе Самостоятельная работа заметил опечатку в строке: 4. Создать новый пакет info.videosharp.phonebook.text. должно быть: 4. Создать новый пакет info.videosharp.phonebook.test. |
|||||
21 | MVC - PhoneBook - UserSQLTest - Insert |
|
|||
Мы продолжаем создание телефонной книжки в рамках знакомства с шаблоном проектирования: MVC. На этом уроке мы начинаем писать тесты для класса UserSQL() при помощи JUnit. Отчёт отправил: 11589. Yefim Выполнено за 1 день 6 мин. [Показать отчёт] Научился: Модифицировать класс UserSQL()добавлением два новых конструкторов. Реализовавать проверку добавления записи в БД. Сложности: -------- |
|||||
22 | MVC - PhoneBook - UserSQLTest - Select |
|
|||
Мы продолжаем создание телефонной книжки в рамках знакомства с шаблоном проектирования: MVC. На этом уроке мы пошагово изучим работу метода по добавлению записи в БД и продолжим реализацию оставшихся методов для тестирования класса UserSQL(). Отчёт отправил: 11589. Yefim Выполнено за 5 час. 31 мин. [Показать отчёт] Научился: Научился пользоваться средствами отладки в среде Eclipse. Сложности: ----- |
|||||
23 | MVC - PhoneBook - UserSQLTest - Slashes |
|
|||
Мы продолжаем создание телефонной книжки в рамках знакомства с шаблоном проектирования: MVC. На этом уроке мы реализуем тестирование обновления записей в БД для класса UserSQL(). Отчёт отправил: 11589. Yefim Выполнено за 2 дня 8 час. 14 мин. [Показать отчёт] Научился: Реализовывать метод тестирования обновления записей в БД. Реализовать метод dubslashes() для экранирования апострофов. Сложности: ------------------ |
|||||
24 | MVC - PhoneBook - Model - Ресторанная аналогия |
|
|||
Мы продолжаем создание телефонной книжки в рамках знакомства с шаблоном проектирования: MVC. На этoм ypoкe мы ещё рaз обсyдим рeсторанную аналогию MVC. И приступим к созданию кухни - Модели. Напишем заголовки всех методов. Отчёт отправил: 11589. Yefim Выполнено за 17 час. 19 мин. [Показать отчёт] Научился: Реализовывать класс Model extends Observable с заглушками методов для него. Сложности: ----------------- |
|||||
25 | MVC - PhoneBook - Model - Methods |
|
|||
Мы продолжаем создание телефонной книжки в рамках знакомства с шаблоном проектирования: MVC. На этoм ypoкe мы реализуем все методы для нашей модели. Отчёт отправил: 11589. Yefim Выполнено за 1 час. 27 мин. [Показать отчёт] Научился: Реализовывать методы getAllUsers(), getUserCard(),addUser(), updateUser(),deleteUser() в классе Model(). Сложности: ------------------ |
|||||
26 | MVC - PhoneBook - Controller - Model / ViewList |
|
|||
Мы продолжаем создание телефонной книжки в рамках знакомства с шаблоном проектирования: MVC. На этoм ypoкe мы реализуем контроллер для связи ViewList() с Model(). Отчёт отправил: 11589. Yefim Выполнено за 3 час. 0 мин. [Показать отчёт] Научился: Созвадать класс ControllerModelViewList implements ActionListener. Сложности: ------------------------ |
|||||
27 | MVC - PhoneBook - Controller - Scroller |
|
|||
Мы продолжаем создание телефонной книжки в рамках знакомства с шаблоном проектирования: MVC. На этoм ypoкe мы продолжаем создание контроллера для связи ViewList() с Model(). Отчёт отправил: 11589. Yefim Выполнено за 45 мин. [Показать отчёт] Научился: Отображать всех пользователей. Добавлять прокрутку для списка при помощи JScrollPane. Сложности: -------------------- |
|||||
28 | MVC - PhoneBook - Controller - Class for Click |
|
|||
Мы продолжаем создание телефонной книжки в рамках знакомства с шаблоном проектирования: MVC. На этом уроке мы создадим ещё один контроллер для формы с отображением карточки пользователя. На этой форме две кнопки, поэтому для создания слушателей мы создадим отдельные внутренние классы. Отчёт отправил: 11589. Yefim Выполнено за 2 час. 21 мин. [Показать отчёт] Научился: Cоздавать контроллер для формы с отображением карточки пользователя. Сложности: ------------------- |
|||||
29 | MVC - PhoneBook - Controller - Buttons |
|
|||
Мы продолжаем создание телефонной книжки в рамках знакомства с шаблоном проектирования: MVC. На этом уроке мы запрограммируем кнопочки. По нажатии кнопки "Добавить" - показать карточку. По нажатии кнопки "Сохранить" - сохранить данные, а также скрыть карточку и обновить список имён на главной форме. Отчёт отправил: 11589. Yefim Выполнено за 2 час. 12 мин. [Показать отчёт] Научился: Создавать обработчик кнопок: Add, Save. Создавать отображение / скрытие формы. Обновлять список имён на форме после добавление. Сложности: --------------- |
|||||
30 | MVC - PhoneBook - Controller - Select / Update |
|
|||
Мы продолжаем создание телефонной книжки в рамках знакомства с шаблоном проектирования: MVC. На этом уроке мы сделаем открытие карточки по щелчку на записи. Также реализуем сохранение изменений и удаление записей. Создание телефонной книжки практически завершено! Отчёт отправил: 11589. Yefim Выполнено за 1 день 14 час. 4 мин. [Показать отчёт] Научился: Очень полезный урок и очень информативный. Узнал как правильно обрабатывать событие при клике на элемент списка. Научился программно модифицировать и удалять записи. Самостоятельно удалось предотвращать добавление пустых записей. Сложности: ------------------ |
|||||
31 | MVC - PhoneBook - Search - Message |
|
|||
Мы начинаем создание поиска по телефонной книжке. Начнём с переноса текстовых сообщения в отдельное поле. Для этого потребуется создать панель, чтобы всё поместилось. Также добавим побольше разных записей, чтобы было среди чего искать. Отчёт отправил: 11589. Yefim Выполнено за 6 час. 29 мин. [Показать отчёт] Научился: Создавать и размещать на форме панель с кнопкой и меткой. Сложности: ------------ |
|||||
32 | MVC - PhoneBook - Search - Select LIKE |
|
|||
На этом уроке мы обсудим два способа, как сделать поиск. Мы напишем запрос для фильтрации записей в нашей телефонной книжке. Отчёт отправил: 11589. Yefim Выполнено за 1 час. 6 мин. [Показать отчёт] Научился: Повторил как выполнять SQL-запросы дло поиска Сложности: В консоли у меня не отображаются русские буквы. Кто это знает сообщите. |
|||||
33 | MVC - PhoneBook - Search - Listener |
|
|||
На этом уроке мы создадим слушателя, который будет реагировать на изменение текста в строке поиска. Отчёт отправил: 11589. Yefim Выполнено за 6 час. 1 мин. [Показать отчёт] Научился: Создавать обработчик события изменения текста. Сложности: Не удалось сымитировать срабатывание метода changedUpdate(). |
|||||
34 | MVC - PhoneBook - Search - Finish |
|
|||
На этом уроке мы .... ЗАКОНЧИМ создание телефонной книжки! Мы допишем функцию поиска по базе и протестируем её. Отчёт отправил: 11589. Yefim Выполнено за 1 день 18 час. 50 мин. [Показать отчёт] Научился: Созжавать функцию поиска по базе. Сложности: -------------------- |
|||||
35 | ФИНАЛЬНЫЙ УРОК |
без видео |
|||
Ты молодец! Поздравляю с завершением создания телефонной книжки! Запиши видеообзор созданной программы и напиши отзыв об этом видеокурсе. Отчёт отправил: 11589. Yefim Выполнено за 1 день 20 час. 21 мин. [Показать отчёт] Научился: Шаблон проектирования МВС занимает особое место в списке всех шаблонов проектирования. Я бы даже назвал его Королем шаблонов. В философском смысле здесь явно реализуется принцип "Разделяй и властвуй!" На простейшие примере - Создается телефонная книжка с полноценным функционалом, включающим поисковую систему. Реализацию проекта было предложено выполнять в среде разработке Eclipse. В проекте задействована база данных со своим инструментарием для выполнения самых разнообразных запросов. Подробно рассказано как реализуются эти запросы на языке Java. Во ходу выполнения заданий курса не всё у меня шло гладко. Частично это было связано с тем, что в моем компьютере установлена среда разработки Eclipse более поздней версии. В результате иногда мой код отличался от оригинала из-за того, в новой версии предложенные методы уже считаюся устаревшими. В какой-то момент возникла проблема с подлючением бызы данных. Но в конце концов было найдено решение и я смог продолжить работу. В целом, курс мне очень понравился и был для меня очень полезен. Большое Спасибо автору, Волосатову Евгению Витольдовичу! Сложности: ------------ |
|||||
36 | VIP - MVC - PhoneBook - Tripple Click |
|
|||
На этом дополнительном вип-уроке мы сделаем открытие карточек более привычным и удобным - по двойному щелчку и по нажатию клавишы Enter. Отчёт отправил: 11589. Yefim Выполнено за 15 час. 42 мин. [Показать отчёт] Научился: Реализовывать открытие записи по нажатию клавиши Enter или по двойному щелчку. Сложности: -------------- |
|||||
37 | VIP - MVC - PhoneBook - JModal |
|
|||
На этом коротком вип-уроке мы сделаем форму карточки модальным окном. Это означает, что нельзя будет переключиться в основное окно, пока карточка открыта. Отчёт отправил: 11589. Yefim Выполнено за 19 час. 24 мин. [Показать отчёт] Научился: Реализовывать создание модальных окон. Сложности: ---------------- |
|||||
38 | VIP - MVC - PhoneBook - Error Checking |
|
|||
На этом уроке мы вынесем обработку ошибок на более высокий уровень. Добавим в Представление функционал отображения ошибок из базы данных. Отчёт отправил: 11589. Yefim Выполнено за 1 день 3 час. 27 мин. [Показать отчёт] Научился: Научился обрабатывать ошибки. Сложности: ------- |
|||||
39 | VIP - MVC - PhoneBook - UML |
|
|||
Схему проекта проще всего составить, когда программа уже написана. А ещё проще это сделать, когда под рукой есть хороший инструмент. На этом уроке мы создадим UML схему нашего проекта с использованием программы Code 2 UML sourceforge.net/projects/code2uml САМОСТОЯТЕЛЬНОЕ ЗАДАНИЕ 1. Пройти курс по созданию UI на JavaFX. 2. Создать новые представления ViewCardFX, ViewListFX на JavaFX. 3. Написать контроллеры для связи новых представлений с моделью. Прочуствовать всю мощь MVC - как была изменён вид программы без изменения модели. Отчёт отправил: 11589. Yefim Выполнено за 1 мин. [Показать отчёт] Научился: Создавать UML схему своего проекта с использованием программы Code 2 UML Сложности: ---------------- |
|||||
Итого: 39 видеоуроков |
6 час. 53 мин. 5 тестов |
13 чел. | |||
Финалисты: Алексей В., Сергей Соколов, Елена, Новопашин Владимир, Фомичева Наталья, Tekashnik, Александр, Александр Заскотченко, Иван Воронин, Сергей Тирпиц, Yefim, Anatoli, Tom . |