Java Magic. Reflection API та Генерація байт-коду | Відеозапис вебінару

Поделиться
HTML-код
  • Опубликовано: 12 июн 2024
  • 👉 Приєднуйся до Bobocode Community: www.bobocode.com/
    𝙂𝙞𝙩𝙃𝙪𝙗: github.com/bobocode-projects
    Telegram: t.me/bobocode​
    Linkedin: bit.ly/2RWPQF5
    Twitter: bit.ly/3vaQiOl
    𝙋𝙖𝙩𝙧𝙚𝙤𝙣: / bobocode
    Тарас в LinkedIn: bit.ly/2ElWg8J
    Тарас в Twitter: bit.ly/33Pmuwg
    00:00 - Початок
    01:28 - Знайомство у Figma
    02:45 - Порядок денний
    04:08 - Зробіть це перед заняттям
    05:10 - Як навчатись ефективно?
    09:18 - Java Memory Model
    10:42 - Зпровокувати виклик StackOverflowError I OutOfMemoryError (Завдання 1)
    11:20 - Рішення до Завдання 1
    12:26 - Практична робота з Reflection API
    12:34 - JSON-мапери
    18:33 - Реалізувати власний JSON мапер(Завдання 2)
    21:55 - Reflection API
    22:28 - Чому важливо розуміти Reflection API
    25:38 - Як отримати доступ до класу з допомогою Reflection API?
    28:25 - Як отримати доступ до приватних полів?
    33:09 - Дивимось реалізацію власного JSON мапера. Рішення до Завдання 2
    40:28: - 2-га частина.Basic Magic.
    41:01 - Анотації в рефлексії.
    42:38 - Практична частина
    42:58 - Створюємо власну анотацію.
    45:18 - Що зберігає анотація?
    47:46 - Робимо свій ORM
    52:54 - Реалізувати метод find (Завдання 3)
    01:01:51 - Рішення до Завдання 3
    01:07:16 - 3-тя частина. Advanced Magic. Пишемо свій “Spring”.
    01:12:30 - Бібліотека Reflections для сканування пакетів.
    01:14:32 - Закінчити реалізацію власного “Spring” контексту (Завдання 4)
    01:17:28 - Дивимось на реалізацію власного контексту. Рішення до Завдання 4
    01:20:01 - Додаткова магія. Патерн Proxy
    01:22:26 - Бібліотека CGLib для роботи з Proxy.
    01:25:32 - Створення Proxy.
    01:31:14 - Як інджектити залежності: поле, конструктор, сеттер ?
    01:32:03 - Магії немає, все створено людьми.
    01:33:06 - філософія Reflection API
    01:34:03 - Spring JaFu як альтернатива рефлексії
    01:37:05 - Підсумки
    01:38:29 - Q&A
    #opensource #java #education

Комментарии • 25

  • @Bobocode
    @Bobocode  7 месяцев назад

    🙏🏼 Задонатити на Бандеромобіль: send.monobank.ua/jar/3tSN5fDiMv
    💳 Номер картки банки: 5375 4112 0850 2919

  • @user-if4ts7dh5e
    @user-if4ts7dh5e 5 месяцев назад

    Супер пояснення!!

  • @ivani7254
    @ivani7254 7 месяцев назад +1

    дякую за інформативне та корисне відео!

    • @Bobocode
      @Bobocode  7 месяцев назад

      Дякую за підтримку!

  • @baibula
    @baibula 7 месяцев назад +2

    Дякую за відео.)) Про рефлексію є розділ в книжці Bruce Eckel - "On Java 8" десь на сторінок 70.

  • @Lemetrriss
    @Lemetrriss 7 месяцев назад +2

    Дякую, гарний контент, як завжди.

    • @Bobocode
      @Bobocode  7 месяцев назад

      Дякую за підтримку! 😉

  • @NES50
    @NES50 7 месяцев назад +5

    Я писав чи є можливість купити цей запис. Ви не відповіли, а тут він є від вас)❤

    • @Bobocode
      @Bobocode  7 месяцев назад +2

      Привіт! Пробачте, що не відповіли, може лист десь загубився. Як бачите, - всесвіт почув вас! 😉

  • @denis307wfs
    @denis307wfs 7 месяцев назад

    Дуже прості та змістовні пояснення. Дякую за чудовий контент! 🔥

    • @Bobocode
      @Bobocode  7 месяцев назад

      Дякую! 😉

  • @GT-cv3xu
    @GT-cv3xu 3 месяца назад

  • @user-co7ne4xn8m
    @user-co7ne4xn8m 7 месяцев назад

    Тарас! Безмежно дякую! Дуже крутий контент і зрозумілі пояснення! до цього відео я частково теж сприймала sping як якусь не зовсім зрозумілу штуку, зараз все ще раз напишу самостійно, щоб вже остаточно з'явилось відчуття, що все створюють звичайні люди і не з магії, а завдяки своїм знанням і постійній праці! Дякую!!! 🤝

    • @Bobocode
      @Bobocode  7 месяцев назад

      Дякую! Я дуже радий, що це відео розвіяло дух магії і додало вам ще більше впевненості.

  • @eq716
    @eq716 7 месяцев назад +2

  • @Yakob2899
    @Yakob2899 7 месяцев назад +2

    Вітаю! Чи знає хтось канали або education creator-ів по python, які так класно розумілись і пояснювали як Тарас?

    • @Bobocode
      @Bobocode  7 месяцев назад

      Вітаю! На тренувальній програмі Java Ultimate учасники використовують Python, як другу мову. Тому, хто-зна, може і цей канал з часом стане вам в пригоді 😉

  • @alexandr6055
    @alexandr6055 7 месяцев назад +2

    у першій частині, де був json, якщо я в свій ентіті поміщу колекцію або Map, то метод зламається, так?

    • @Bobocode
      @Bobocode  7 месяцев назад +2

      Я думаю, ви вже знаєте відповідь. 🙂 Звичайно, кожен унікальний випадок, наприклад, Map, треба окремо опрацювати.

    • @caffeinejavacode1475
      @caffeinejavacode1475 7 месяцев назад

      @@Bobocode 🔥

  • @lucky_bus
    @lucky_bus 7 месяцев назад

    мені здається чи convertToJsonHelper не враховує можливість масивів у якості полів?

    • @Bobocode
      @Bobocode  7 месяцев назад

      Так, він багато чого не враховує, наприклад, колекції, чи мапи. Всі ці випадки треба доробляли. Цей приклад максимально простий, щоб показати загальну ідею.

  • @Ne_ponIatno
    @Ne_ponIatno 7 месяцев назад

    можливо не туди пишу, але на якому рівні можна опрацьовувати даний матеріал? відчуваю що мені ще рано.

    • @Bobocode
      @Bobocode  7 месяцев назад

      Привіт! Матеріал підготовлено для досвідчених (працюючих) джавістів. Тому, якщо у вас мало досвіду, чи ви початківець, то справді ще рано.