Глибоко про Функціональне Програмування в Java 🔥
Вставка
- Опубліковано 22 тра 2024
- 👉 Приєднуйся до Bobocode Community: www.bobocode.com/
____________________________________________
𝙋𝙖𝙩𝙧𝙚𝙤𝙣: / bobocode
𝙂𝙞𝙩𝙃𝙪𝙗: github.com/bobocode-projects
Telegram-канал: t.me/bobocode
Linkedin: bit.ly/2RWPQF5
Twitter: bit.ly/3vaQiOl
Тарас в LinkedIn: bit.ly/2ElWg8J
Тарас в Twitter: bit.ly/33Pmuwg
____________________________________________
7-ме заняття тренувальної програми Ultimate Enterprise Java (2021).
УВАГА! Відеозапис не містить активної частини заняття.
00:00 - Нарізка найважливіших моментів
03:14 - Початок
03:22 - План заняття
03:41 - Як еволюціонує Java (JCP, JSR)
08:01 - Чому важливо мати глибокі знання і сильні навики?
10:00 - ЛЯМБДИ
12:07 - Що таке лямбда?
12:44 - Що найважливіше памʼятати про лямбди?
13:33 - Базові функціональні інтерфейси
14:57 - Що робити, коли в коді проблема?
16:05 - invokeDynamic або як працюють лямбди?
18:45 - Розбір байт коду лямбди.
26:42 - ПОСИЛАННЯ НА МЕТОД (Method reference)
27:35 - Основи method reference
27:38 - 1. Посилання на статичний метод через клас
30:00 - 2. Посилання на нестатичний метод через обʼєкт
30:55 - 3. Посилання на нестатичний метод через клас
34:24 - Різні посилання на той самий метод
36:55 - Q&A
43:03 - Детальне пояснення 3-го типу посилання на метод
46:25 - Розбір байткоду посилання на метод (method reference)
48:31 - Функції вищого порядку
54:09 - Композиції функцій
59:23 - Як композувати предикати?
01:01:16 - На сьогодні, мабуть, все :)
#opensource #java #education
👉 Навчання від Bobocode: bit.ly/3IRrJhj
Дякую за відео
Дякую. Дуже цікаве заняття. Дізнавіся глибше про лямбди. Думав, що це лише анонімний клас.
дякую! корисно!
Можете навести приклади best practices використання функціональних інтерфейсів при розробці веб застосунка? Дякую.
1. Віддавати перевагу стандартним інтерфейсам (з пакету java.util.function)
2. Використ. більш конкретний інтерфейс (напр. UnaryOperator замість Function)
3. Використ. спеціальні інтерфейси для примітивів (напр. IntToDoubleFunction замість Function)
4. Створювати свій інтерфесй, якщо це якась важлива абстакція і якщо ви додаєте свій javadoc
5. Ставити @FunctionalInterface якщо створюєте свій інтерфейс
Функціональне програмування найцікавіша штука, яку я коли-небудь бачив.
Клас... Думаю, що попереду у вас ще багато цікавого 😀
дякую :)
ДЗ:
Вправа crazy-lambdas (bit.ly/3JEtdLB)
Дійсно crazy, довелось поламати мозок, дякую за вправи () -> () -> () -> "WELL DONE!" :)
> Де ви ще бачили композицію функцій
Spring WebFlux - RouterFunction, така сама ідея компонування
Як виявляється метод референт досить таки потужна тема🫣
Чому не можна викликати static method на обекті в method reference? Так не працює obj::staticmethod, а так працює obj::nonStaticMethod
На статичні методи потрібно посилатися через клас, а не обʼєкт.