Шаблоны Java. Prototype (Прототип)

  Рет қаралды 29,289

Eugene Suleimanov

Eugene Suleimanov

8 жыл бұрын

Пікірлер: 27
@_DSchannel_
@_DSchannel_ 2 жыл бұрын
Евгений, замечательно объясняете. Благодарю.
@manreaper1238
@manreaper1238 3 жыл бұрын
с дженериком в copyable можно было бы и сразу позвращать Project, вместо Object
@andriikompaniiets4043
@andriikompaniiets4043 3 жыл бұрын
Спасибо. Хорошее видео.
@Andrzej3935
@Andrzej3935 Жыл бұрын
Спасибо!
@azerphoenix
@azerphoenix 3 жыл бұрын
Спасибо за видео. Интересная реализация данного паттерна. По идее данная реализация похожа на пример реализации при помощи конструктора, но в данном случае метод copy() создает копию объекта. Также отмечу, что можно реализовать данный паттерн используя сериализацию объекта.
@Chekist2008
@Chekist2008 4 жыл бұрын
Метод в фабрике setPeoject() оказался лишним?
@ErmalayKa
@ErmalayKa 7 жыл бұрын
А что за UML вы используете? Подскажите - мне понравились диаграммы.
@EugeneSuleimanov
@EugeneSuleimanov 7 жыл бұрын
Добрый день. Для Idea Ultimate - это стандартный плагин. Не входит в Community Edition.
@ErmalayKa
@ErmalayKa 7 жыл бұрын
А для Android Studio можете что-нибудь посоветовать кроме SimpleUMLCE?
@EugeneSuleimanov
@EugeneSuleimanov 7 жыл бұрын
Не работал с Android - подсказать не смогу.
@igoraleksandrovich1498
@igoraleksandrovich1498 3 жыл бұрын
В принципе можно обойтись и без фабрики, и даже без метода клонирования, просто создав конструктор, который на входе принимает объект, с которого нужно снять копию.
@kcheban
@kcheban 3 жыл бұрын
Во многих случаях клиентский код, создающий копии объекта, работает только с интерфейсом объекта. Потому конструкторы ему недоступны. И выбор у него - либо фабрика, либо прототип
@anastasiapryakhina7151
@anastasiapryakhina7151 7 жыл бұрын
не понимаю, а где классы, экземпляры которых нужно создать определяются во время использования программы?
@EugeneSuleimanov
@EugeneSuleimanov 7 жыл бұрын
Добрый день, Анастасия - не совсем понятен вопрос. Не могли бы вы уточнить, пожалуйста.
@duoduoo6732
@duoduoo6732 2 жыл бұрын
ничего не понятно но очень инетересно
@andriikompaniiets4043
@andriikompaniiets4043 3 жыл бұрын
Я так понимаю, что если через clone делать, то не будет фабрики. А почему обязательно надо, чтобы класс имплементил интерфейс Cloneable, иначе переопределенный метод clone будет исключение выбрасывать при кастовании?
@azerphoenix
@azerphoenix 3 жыл бұрын
При имплементации интерфейса Clonable и реализации метода clone() создается неполная копия объекта (shallow copy), а при такой реализации или при других реализациях данного паттерная создается полная копия (deep copy)
@Ilya_yarets
@Ilya_yarets 3 жыл бұрын
добавьте описание
@user-ow3wy1zn4d
@user-ow3wy1zn4d 3 жыл бұрын
А зачем здесь описание если по названию видео понятно ,что здесь будет.
@yevheniikozhevin5845
@yevheniikozhevin5845 4 жыл бұрын
А зачем создавать интерфейс копибал, если в жаве уже существует метод клон у класса обжект и интерфейс клонабл созданные как раз для этих целей? И в случае использование того что я написал будет достаточно в переопределенном методе клон написать super.clone() с отлавливанием исключения. этого будет достаточно если все поля неизменяемые. в противном случае книга эффективное программирование глава 3.4
@EugeneSuleimanov
@EugeneSuleimanov 4 жыл бұрын
Потому что это учебное видео, в котором мы пытаемся разобраться с тем, как работают шаблоны проектирования. Которые, конечно же, уже могу тбыть реализованы в Java.
@sergeyzakharchenko1706
@sergeyzakharchenko1706 3 жыл бұрын
странно кстати что вы незнаете простого факта что клонирование обьекта даже через переопределенный метод clone() является ужасной практикой. для этого используются конструктор.
@cyrillcheckout
@cyrillcheckout 3 жыл бұрын
@@sergeyzakharchenko1706 можно узнать обоснование "ужасной" практики? в чем непосредственно очевидные минусы? И какие плюсы копирования объекта через конструктор?
@igoraleksandrovich1498
@igoraleksandrovich1498 3 жыл бұрын
Потому что этот способ больше официально не рекомендуется из-за возможных проблем.
@cyrillcheckout
@cyrillcheckout 3 жыл бұрын
@@igoraleksandrovich1498 вы такой лапочка, мое почтение :-) "Официальный источник" - смешно, честно.
Шаблоны Java. FactoryMethod (Фабричный метод)
12:22
Eugene Suleimanov
Рет қаралды 91 М.
ХОТЯ БЫ КИНОДА 2 - официальный фильм
1:35:34
ХОТЯ БЫ В КИНО
Рет қаралды 2,8 МЛН
狼来了的故事你们听过吗?#天使 #小丑 #超人不会飞
00:42
超人不会飞
Рет қаралды 65 МЛН
When someone reclines their seat ✈️
00:21
Adam W
Рет қаралды 21 МЛН
When Steve And His Dog Don'T Give Away To Each Other 😂️
00:21
BigSchool
Рет қаралды 11 МЛН
Factory Method Pattern - Design Patterns (ep 4)
27:21
Christopher Okhravi
Рет қаралды 533 М.
Что такое Kubernetes?
12:49
Eugene Suleimanov
Рет қаралды 7 М.
ЭТО КОНЕЦ StarCraft 2
MEDOED
Рет қаралды 303
Введение в шаблоны проектирования
4:36
Eugene Suleimanov
Рет қаралды 31 М.
Шаблоны Java. Visitor (Посетитель)
9:54
Eugene Suleimanov
Рет қаралды 14 М.
Паттерн "прототип" на языке C#
20:34
Дмитрий Нестерук
Рет қаралды 17 М.
ХОТЯ БЫ КИНОДА 2 - официальный фильм
1:35:34
ХОТЯ БЫ В КИНО
Рет қаралды 2,8 МЛН