Досі Називаєш Hibernate Магією? - Давай Подивимось, що Там Під Капотом ⚙️

  Рет қаралды 2,625

Bobocode

Bobocode

Күн бұрын

✨ Відеозапис вебінару доступний за підпискою Bobocode Community: www.bobocode.com/
00:00 - Початок
01:56 - Основні ідеї ORM
05:17 - Починаємо створювати свій ORM
14:26 - Реалізовуємо findById
27:11 - Object-relational impedance mismatch
32:10 - Список функціоналу ORM
37:00 - Підсумок
🔗 Матеріали
- Devoxx Ukraine 2019: Hibernate the Ripper - Taras Boychuk ( • Devoxx Ukraine 2019: H... )
- Hibernate the Ripper by Taras Boychuk ( • Hibernate the Ripper b... )
- Проєкт Bibernate команди, яка перемогла в 2024-му (github.com/BlyznytsiaOrg/bibe...)
____________________________________________
GitHub: github.com/bobocode-projects
Telegram: t.me/bobocode​
LinkedIn: bit.ly/2RWPQF5
Twitter: bit.ly/3vaQiOl
Patreon: / bobocode
Тарас в LinkedIn: bit.ly/2ElWg8J
Тарас в Twitter: bit.ly/33Pmuwg
____________________________________________
#opensource #java #education #навчання #community #engineer

Пікірлер: 31
@Bobocode
@Bobocode 26 күн бұрын
✨Отримай відеозаписи цього та попередніх вебінарів, а також участь в наступних вебінарах за підпискою Bobocode Community: www.bobocode.com/
@olharudenko
@olharudenko 25 күн бұрын
Тарасе, дякую, що так щиро ділитеся знаннями. Як завжди, цікаве відео 😊
@Bobocode
@Bobocode 25 күн бұрын
Дякую!
@vladyslavh3940
@vladyslavh3940 24 күн бұрын
Крутезний відос. Побільше б такого і про Спрінг теж
@Bobocode
@Bobocode 23 күн бұрын
Дякую!
@mykhailobeheka7216
@mykhailobeheka7216 26 күн бұрын
Застава на відео - топчик😂 Чарівної палички як Гаррі Поттера не вистачає 😂 Про контент - як завжди все чудово "розклав по поличках". Завжди переглядаю сам всі відео і друзям раджу. Дякую!
@Bobocode
@Bobocode 25 күн бұрын
Дякую, Міша!
@therealbadil
@therealbadil 26 күн бұрын
🔥🔥🔥
@vermilinguas
@vermilinguas 25 күн бұрын
Дякую за унікальний контент! Можливо я неуважно шукав, але я не знайшов ні одного англомовного відео, де би імплементували щось із популярних фреймворків
@Bobocode
@Bobocode 25 күн бұрын
До речі, це може звучати пафосно, але в нас колись була така мулька створювати україномовний контент, якому немає аналогів. 😅
@vermilinguas
@vermilinguas 25 күн бұрын
@@Bobocode можу з повною упевненістю сказати, що у вас добре виходить) Взагалі хочу купити консультацію кар'єрну у Тараса коли трохи краще з роботою буде
@Bobocode
@Bobocode 25 күн бұрын
Дякуємо за підтримку!
@feoktant
@feoktant 24 күн бұрын
36:15 Основна проблема Hibernate як раз в тому, що він перевантажений фічами. З цього списку спільного у всіх ORM: CRUD і Mapping. Concurrency Control і Cascade Operations - це фічі баз даних, а не ORM. Caching, Lazy Loading, Dirty Checking - їх неможливо виключити 🤷‍♂ HQL - просто за межами добра і зла, Хібернейт здається єдиний фрейм де таке зробили. JOOQ, Linq, DjangoORM, Slick - зроблено набагато зручніше.
@Bobocode
@Bobocode 23 күн бұрын
Optimistic Concurrency Control - це якраз фіча ORM, для БД - це просто колонка version, а Hibernate мусить запхати її в кожен UPDATE і зробити відповідні перевірки. Pessimistic Concurrency Control - так, це фіча БД, але, наприклад, тобі треба руками додавати до своїх SQL запитів "FOR UPDATE", чи "FOR SHARE", а тут Hibernate робить це за тебе. Cascade Operations - це не заміна фічі БД, а просто можливість робити каскад операції на рівні сутностей (типу зберігаю користувача, збережу ще й його картки...)
@Bobocode
@Bobocode 23 күн бұрын
Погоджуюся з тим, що Hibernate перевантажений фічами, тому надто складний.
@feoktant
@feoktant 23 күн бұрын
@@Bobocode OCC можна зробити і руками) я про це
@feoktant
@feoktant 23 күн бұрын
@@Bobocode я дивуюся, чому Джава девелоперам він продовжує подобатись - маєш тримати купу нюансів в голові, а альтернативи в вакансіях всеодно трапляються рідше. Той же Spring Data, набагато простіший, але менш популярний
@feoktant
@feoktant 24 күн бұрын
27:42 Це виглядає як замість того, щоб вирішити просту задачу з бойлерплейтом, самі собі придумали проблему (ООП), і героїчно її вирішуємо 💪
@Bobocode
@Bobocode 23 күн бұрын
Привіт, Антон. Частково так і виглядає. :) З одного боку, ці фічі часом бувають дуже зручними. З іншого - це дуже складно і в загальному підсумку виникає питання, чи ми щось виграли за рахунок цих складних фіч.
@ruslansemkiv4580
@ruslansemkiv4580 25 күн бұрын
Файно є , лиш музика мішає зосередитися ....(
@pavlo-martsiniv
@pavlo-martsiniv 11 күн бұрын
Лол, музику то за шо)
@axelrod4840
@axelrod4840 25 күн бұрын
19:37 Пити з пластику не рекомендують. Це так, чисто щоб був здоровіший, та записував більше відосів)
@Bobocode
@Bobocode 25 күн бұрын
Все, перестаю пити з пластику і починаю регулярно знімати відео 😀 Тарас
@art-white16
@art-white16 26 күн бұрын
цікавий підхід, але я працюю з Пайтоном. А ви навчаєте тільки Джава програмістів?
@Bobocode
@Bobocode 25 күн бұрын
Не тільки. :) Так історично склалося, що ми займалися курсами для джавістів. Останні роки стараємо фокусуватися все більше на компʼютерний науках і програмній інженерії . Наприклад, в Bobocode Community, ми активно використовуємо три мови: Java, Python, і JS.
@DVBLEX
@DVBLEX 25 күн бұрын
а яку ORM в Python + Django Ви використовуєте ?
@Bobocode
@Bobocode 25 күн бұрын
@@DVBLEX самописну 😂
@ukrainian333
@ukrainian333 25 күн бұрын
@@DVBLEX в Django зазвичай використовують Django ORM =)) Є альтернативи, але рівень їх інтеграції в фреймворк набагато нижче... більше проблем ніж профіту...
@ukrainian333
@ukrainian333 25 күн бұрын
В Python є купа бібліотек інтерфейсів БД, на основі яких побудовано більшість ORM, наприклад psycopg2, asyncpg для PostgreSQL, і т.д... Тобто, в залежності від бази даних використовуєтсья потрібний інтерфейс як нижній рівень взаємодії з SQL, до якого додаються потрібна абстракція, і виходить ORM - Django ORM, SQLAlchemy, Pony ORM, Tortoise ORM, etc. Я про те, що змінюється лише синтаксис мови програмування, суть та ж сама - SQL команди які викликаються та комбінуються за рахунок високорівневих абстракцій, які доступні юзерам.
@eduardpartyka7018
@eduardpartyka7018 25 күн бұрын
22:20 іііііііі шо....
@Bobocode
@Bobocode 22 күн бұрын
іііііі нічо 😂
Что такое Hibernate для Java-разработчика?
14:39
Sergey Nemchinskiy
Рет қаралды 12 М.
Performance - Back to Basics (Valentin Sandu)
38:52
Meet Magento România
Рет қаралды 68
Whyyyy? 😭 #shorts by Leisi Crazy
00:16
Leisi Crazy
Рет қаралды 19 МЛН
2000000❤️⚽️#shorts #thankyou
00:20
あしざるFC
Рет қаралды 15 МЛН
3 wheeler new bike fitting
00:19
Ruhul Shorts
Рет қаралды 31 МЛН
Азы программирования в 1С за 3 часа
3:46:49
IRONSKILLS - Курсы по 1С
Рет қаралды 3,4 МЛН
ПРОГРАМА ТРЕНУВАНЬ НА ВСІ ВИПАДКИ ЖИТТЯ
6:41
10 Повторень
Рет қаралды 24 М.
Whyyyy? 😭 #shorts by Leisi Crazy
00:16
Leisi Crazy
Рет қаралды 19 МЛН