JavaRush /Java blogi /Random-UZ /Qo'g'irchoqlar uchun kutish rejimi. "Java Persistence API...

Qo'g'irchoqlar uchun kutish rejimi. "Java Persistence API and Hibernate" kitobining sharhi

Guruhda nashr etilgan
Hech kimga sir emaski, dunyodagi eng texnik adabiyotlar ingliz tilida yozilgan. Java rivojlanishi ham bundan mustasno emas - materiallarning katta qismi rus tilida umuman mavjud emas yoki Google translate-dan foydalanishni o'rganish yaxshiroq bo'lgan tarzda tarjima qilingan. Taxminan olti oy oldin ushbu mavzu bo'yicha eng mashhur "Java Persistence API with Hibernate" kitobining rus tiliga tarjima qilingani butun rus tilida so'zlashuvchi Java hamjamiyatini yanada xursand qiladi.
Qo'g'irchoqlar uchun kutish rejimi.  Kitob sharhi
Agar siz Java dasturchisi bo'lishni istasangiz - bir kun siz Hibernate dan foydalanishni o'rganishingiz kerak bo'ladi . Albatta, har qanday qoidadan istisnolar mavjud, barchasi aniq loyihaga bog'liq va hokazo. Ammo agar siz o'z martabangizga uzoq muddatli nazar tashlasangiz, haqiqiy ishda siz ushbu kutubxonaga duch kelasiz. Mubolag'asiz, maqolada keltirilgan kitobni fundamental deb atash mumkin: bu texnologiya haqida yozilgan barcha narsalar orasida Hibernate uchun asosiy qo'llanma. Bu juda oson tushuntiriladi, chunki uning mualliflari orasida Hibernate loyihasining asoschisi Gavin King va Hibarnate ishlab chiqish jamoasi a'zosi Kristian Bauer bor. Shaxsan men uchun bu darhol sifatning o'ziga xos kafolati bo'lib xizmat qildi: kim texnologiyani ishlab chiquvchilari bo'lmasa ham, uni aylanib o'tishni yaxshi biladi :) Boshqa tomondan, har doim ham yaxshi mutaxassis yoki hatto texnologiyani yaratuvchisi bo'lishi mumkin emas. texnologiya oson tushunarli o'quv kitobini yozishi mumkin. Nima bo'lishidan qat'iy nazar, shaxsiy mahorat va o'qitish qobiliyati bir-biri bilan deyarli bog'liq emas. Misol tariqasida Knutning afsonaviy "Dasturlash san'ati" yoki uning yaratuvchisi Bjarne Stroustrupning "C++ dasturlash tili" ni keltirish mumkin. Mualliflarning oliy bilim darajasini inkor etib bo‘lmasa, ularning kitoblari, yumshoq qilib aytganda, o‘qish qiyin. Yaxshiyamki, Hibernate yaratuvchilari va ushbu kitob mualliflari yangi boshlovchi dasturchi nuqtai nazaridan juda tushunarli bo'lgan mahsulotni yaratdilar. Bu kitob kim uchun: Ko'pgina shunga o'xshash kitoblar singari, abstraktda aytilishicha, u "hamma uchun", shu jumladan Kutish rejimini noldan o'rganuvchilar uchun. Aslida, tegishli texnologiyalar shaklida oldindan tayyorgarlik ko'rish hali ham yaxshiroqdir. Quyida ushbu kitobni o'qiyotganingizda hayotingizni ancha osonlashtiradigan narsalar ro'yxati keltirilgan.
  1. Agar siz relyatsion ma'lumotlar bazalari nima ekanligini bilmasangiz, jadval yarata olmaysiz yoki oddiy SELECT so'rovini ham yoza olmaysiz va hokazo. - bundan boshlagan ma'qul. Aytgancha, bu JavaRush amaliyotida qatnashishni rejalashtirganlar uchun foydali bo'ladi. SQL bilan boshlang, keyinroq kutish rejimiga o'ting. Yaxshiyamki, SQL-da ajoyib Head-First yozilgan (mening didim uchun, butun seriyadagi eng yaxshi HeadFirstlardan biri).

  2. JDBC . Texnologiya yangilikdan yiroq, biroq ko'plab tajribali ishlab chiquvchilar hali ham uni Kutish rejimini afzal ko'rishadi.

  3. Shundan so'ng, ORM nima va u nima uchun kerakligi haqida (hech bo'lmaganda yuzaki) o'qish yaxshi bo'lar edi . Axir, Hibernate - bu birinchi navbatda ORM, ya'ni Java ob'ektlarini ma'lumotlar bazasi yozuvlariga aylantiradigan narsa (va aksincha).

    Misol uchun, sizda Foydalanuvchi sinfi, Avto sinfi bor va har bir foydalanuvchi o'z avtomobillari List<Auto> avtomashinalari ro'yxatiga ega.

    Bularning barchasini ma'lumotlar bazasiga qanday yozib olish kerak, shunda foydalanuvchilar va ularning mashinalari o'rtasidagi aloqalar saqlanib qoladi? Axir, bitta foydalanuvchi bor, lekin u ko'plab mashinalarga ega bo'lishi mumkin:/ Agar biz foydalanuvchining o'zini o'chirib tashlagan bo'lsak (ya'ni ma'lumotlar bazasida "etim" mashinalarni saqlashni taqiqlasak) qanday qilib barcha foydalanuvchi mashinalarini ma'lumotlar bazasidan avtomatik ravishda o'chirib tashlashimiz mumkin? Hibernate qanday qilishni biladi :)

  4. Bundan tashqari, Java-da ORM modeli - Java Persistence API yoki oddiygina JPA-ning o'ziga xos dasturi mavjud. Bu kitobda ham muhokama qilinadi, lekin avval uni ko'rib chiqish yaxshiroqdir. Mavzu bo'yicha tonnalab adabiyotlarni o'qish shart emas: agar siz POJO, Entity nima ekanligini va Ob'ektga qanday talablar qo'llanilishini bilsangiz, bu juda yaxshi bo'ladi.

  5. Agar siz XML formati bilan tanish bo'lmasangiz , ushbu kitobni o'qishdan oldin u bilan tanishish vaqti keldi. Ko'pincha Hibernate (shuningdek, Spring) konfiguratsiya fayllari XML formatida yoziladi va agar u sizni qo'rqitsa, kitobni o'qish qiyinroq bo'ladi.

  6. Agar siz dizayn naqshlari bilan tanish bo'lsangiz (hech bo'lmaganda JavaRush vazifalaridan), unda siz DAO naqshlari va nima uchun kerakligi haqida o'qishingiz mumkin. DAO-ni Hibernate yordamida amalga oshirish juda oson. Aytgancha, amaliyot ishtirokchilari test topshirig'ini yozishda (va loyihaning o'zida ham) "daos" yaratadilar. Va haqiqiy ishda ularni yaratish odatiy vazifadir, shuning uchun bu ortiqcha bo'lmaydi.

Yuqorida aytilganlarning barchasi bilan oldindan tanishish sizning o'qishingizni sezilarli darajada soddalashtiradi (va ishda, bu, ular aytganidek, bo'lishi kerak). Xulosa - kitobning afzalliklari va kamchiliklari haqida bir oz IMHO. Taroziga soling:
  • Ingliz tilidan juda yaxshi tarjima . Menimcha, bu nuqtaning ahamiyati haqida alohida yozishning hojati yo'q. Albatta, asl nusxa har doim yaxshiroq bo'ladi va agar siz ingliz tilini etarli darajada bilsangiz, uni o'qiganingiz ma'qul. Biroq, ingliz tilini hali yaxshi bilmaydigan, lekin shu sababli o'qishni to'xtatishni istamaydiganlar uchun bu juda yaxshi variant.

  • Mavzularning juda keng qamrovi . Kutubxonaning deyarli barcha "ichkilari" tasvirlangan. Biror narsa haqida batafsilroq, kamroq narsa haqida. Ammo umuman olganda, qamrov juda munosib bo'lib chiqdi.

  • Oddiy va tushunarli til .

Kamchiliklardan men faqat misollarni ajratib ko'rsatishim mumkin . Menimcha, ular oddiyroq va qisqaroq bo'lishi mumkin. O'quvchiga tushgan yangi ma'lumotlarning hajmini hisobga olsak, yangi boshlanuvchilar uchun shunchaki kompilyatsiya qilish va hamma narsani bajarish qiyin bo'lishi mumkin. Kodda nima sodir bo'layotganini tushunish haqida gapirmaslik kerak. Men shaxsan sizga GitHub-dan misollarni klonlash bilan bezovta qilmaslikni va ularni o'zingiz yozishingizni tavsiya qilaman. Va siz buni tushunasiz va sizning tushunishingiz ancha yaxshi bo'ladi. Yaxshisi, keyingi bobni o'qib chiqqandan so'ng, o'zingiz qandaydir vazifani o'ylab toping va amalga oshiring. Vazifa juda oddiy bo'lsa ham, bu ancha samarali bo'ladi. Kitob sotib olishga arziydimi? Albatta ha. Qolaversa, uning qog'oz tiraji bor-yo'g'i 200 nusxada :) Ushbu kitob materiallariga asoslanib, men Habrahabr haqidagi birinchi maqolamni juda oson yozdim. JavaRush ma'muriyati esa, menimcha, buni albatta o'z tanlovi uchun sovrinlar qatoriga qo'shishi kerak :) E'tiboringiz uchun rahmat, o'qishlaringizga omad!
Izohlar
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION