Тёмный

МФТИ Core Java 2020 Лекция 12 

Ivan Ponomarev
Подписаться 2,6 тыс.
Просмотров 6 тыс.
50% 1

Аннотации
Рефлексия
Singleton (anti)pattern

Опубликовано:

 

1 окт 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 11   
@statuxia
@statuxia Год назад
0:08 - Планы на лекцию 0:28 - Немного о прошлой лекции про аннотации 1:34 - Где можно использовать аннотации 1:42 - Использование аннотаций в декларациях 1:59 - Примеры использования аннотации в декларациях 2:25 - Анотирование пакетов - в package-info.java 3:16 - Аннотирование использование типов 4:08 - Java 8+: аннотирование использования типа в this 5:06 - Знакомые стандартные (встроенные в язык) аннотации 7:00 - Стандартные (встроенные в язык) аннотации 8:18 - Аннотации управляются аннотациями 9:04 - Target 9:36 - RetentionPolicy 13:04 - Другие мета-аннотации 14:43 - Рефлексия (Reflection API) 16:48 - Класс Class параметризован 18:37 - Class literals 19:16 - Class literals - примеры 21:38 - NB: странные имена классов-массивов 23:13 - Динамический способ получения мета-класса 25:17 - Загрузка ресурсных файлов 27:36 - Что еще мы можем делать? Анализ возможностей класса и взаимодействие с элементами клсасса 28:37 - Получение членов класса 29:30 - Доступ к элементам 32:01 - Анализ аннотаций в runtime 33:08 - Рефлексия и Generics 34:36 - ReflectionUtils 35:57 - Класс с аннотированными полями 36:26 - Разбор примеров сериализации класса в JSON 38:25 - Как можно было бы сделать (JsonSerializer) 41:31 - В стандартных задачах писать самому не надо. Есть Jackson 44:18 - Пример с контроллером 45:35 - Как сделать красиво 49:43 - Как работает CommandDispatcherTest (через Mockito) 55:05 - Как писать программу на Java (архитектура) 58:52 - Реальная "слоистая" архитектура серверного приложения 59:21 - Попытка №1, нативная. "Пусть объекты сами создают себе то, что им надо" 1:02:10 - Попытка №2. Выложим ссылку на единичный объект в статическое поле. 1:04:02 - Мы только что изобрели дизайн-паттер singleton (одиночка) 1:04:49 - Singleton Pattern 1:06:26 - Синглетонирование: подход №1 1:07:25 - Подход №2, если Singleton тяжелый и мы его создаем только один раз. 1:09:00 - Подход №3 ?! (volatile) 1:11:03 - Подход №4 ?! ?! (synchronized) 1:13:03 - Подход №5 ?! ?! ?! (intrinsic lock объекта lock) 1:16:06 - Подход №6... (Хорошо, но можно лучше!) 1:17:41 - Подход №7. Код из книги "Effective Java, 3rd edition" 1:21:44 - Единственно Верный Ленивый Потокобезопасный Синглетон 1:23:22 - Подход №8 - Короткий и правильный код.
@statuxia
@statuxia Год назад
Привет тому, кто читает этот комментарий. Это таймкоды, которые я ставил для себя, когда разбирал лекции. Я решил поделиться ими со всеми. Возможно они кому-то помогут. Спасибо за внимание.
@Ren-z5m3t
@Ren-z5m3t 5 месяцев назад
Интересная система. Сильнейшие лекции, умнейший лектор, но вместо темы лекции - просто её номер. Причём даже в лекции про рефлексию неизменная "...Core Java 2020". Только название МФТИ спасает, поскольку МФТИ - сила! Просто изменив названия каждой лекции принесёте огромную пользу русскоговорящему человечеству. Лекции ДСП на RU-vid - весьма неожиданно
@wildjoe6259
@wildjoe6259 3 года назад
Хм... даже Spring в дальнейшем планируете рассмотреть? Очень здорово, спасибо!
@inponomarev
@inponomarev 3 года назад
Да, в следующую среду как раз начнём. Осталось всего 2 или 3 лекции, и все они будут направлены на то, чтобы дать фундаментальное понимание того, как устроен механизм dependency injection вообще и как и работает Spring в частности
@artemief
@artemief 8 месяцев назад
@@inponomarev Добрый день, Подскажите, пожалуйста, почему singleton подход номер 8 потокобезопасный? (1:23:20) никак не получается понять
@andreykatskin818
@andreykatskin818 5 месяцев назад
шок контент про Рефлексию ) и я слышал про Mokito -1й - это коктейль, 2й-это инструмент !)
@artemief
@artemief 8 месяцев назад
Добрый день, @inponomarev Подскажите, пожалуйста, почему singleton подход номер 8 потокобезопасный? (1:23:20) никак не получается понять
@inponomarev
@inponomarev 8 месяцев назад
В силу того, что мы здесь полагаемся на инициализацию класса, а создатели JVM позаботились о том, чтобы инициализация класса была бы синхронизирована. В JLS docs.oracle.com/javase/specs/jls/se8/html/jls-12.html#jls-12.4 сказано: "The implementation of the Java Virtual Machine is responsible for taking care of synchronization and recursive initialization"
@inponomarev
@inponomarev 8 месяцев назад
Т. е. там вся синхронизация уже реализована за нас, остаётся только пользоваться :-)
@artemief
@artemief 8 месяцев назад
@@inponomarev Большое спасибо! очень интересный курс ❤🔥
Далее
МФТИ Core Java 2020 Лекция 13
1:27:58
Просмотров 5 тыс.
МФТИ Core Java 2020 Лекция 10
1:09:41
Просмотров 6 тыс.
# Rural Funny Life Wang Ge
00:18
Просмотров 760 тыс.
Kafka Streams: лекция 3 2022-10-26
1:19:41
Просмотров 1,8 тыс.
06.01.  Serialization
1:09:06
Просмотров 185
МФТИ Core Java 2020 Лекция 11
1:24:32
Просмотров 6 тыс.
МФТИ Core Java 2020 Лекция 14
1:24:56
Просмотров 5 тыс.
Kafka Streams: лекция  1 2022-10-10
1:06:00
Просмотров 10 тыс.
Kafka Streams: лекция 2 2022-10-17
1:22:06
Просмотров 3,5 тыс.