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 Жыл бұрын
Привет тому, кто читает этот комментарий. Это таймкоды, которые я ставил для себя, когда разбирал лекции. Я решил поделиться ими со всеми. Возможно они кому-то помогут. Спасибо за внимание.
@Ren-z5m3t7 ай бұрын
Интересная система. Сильнейшие лекции, умнейший лектор, но вместо темы лекции - просто её номер. Причём даже в лекции про рефлексию неизменная "...Core Java 2020". Только название МФТИ спасает, поскольку МФТИ - сила! Просто изменив названия каждой лекции принесёте огромную пользу русскоговорящему человечеству. Лекции ДСП на KZbin - весьма неожиданно
@andreykatskin8187 ай бұрын
шок контент про Рефлексию ) и я слышал про Mokito -1й - это коктейль, 2й-это инструмент !)
@artemief10 ай бұрын
Добрый день, @inponomarev Подскажите, пожалуйста, почему singleton подход номер 8 потокобезопасный? (1:23:20) никак не получается понять
@inponomarev10 ай бұрын
В силу того, что мы здесь полагаемся на инициализацию класса, а создатели 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"
@inponomarev10 ай бұрын
Т. е. там вся синхронизация уже реализована за нас, остаётся только пользоваться :-)
@artemief10 ай бұрын
@@inponomarev Большое спасибо! очень интересный курс ❤🔥
@wildjoe62594 жыл бұрын
Хм... даже Spring в дальнейшем планируете рассмотреть? Очень здорово, спасибо!
@inponomarev4 жыл бұрын
Да, в следующую среду как раз начнём. Осталось всего 2 или 3 лекции, и все они будут направлены на то, чтобы дать фундаментальное понимание того, как устроен механизм dependency injection вообще и как и работает Spring в частности
@artemief10 ай бұрын
@@inponomarev Добрый день, Подскажите, пожалуйста, почему singleton подход номер 8 потокобезопасный? (1:23:20) никак не получается понять