ليس سراً أن معظم الأدبيات التقنية في العالم مكتوبة باللغة الإنجليزية. وتطوير Java ليس استثناءً هنا - فجزء كبير من المواد إما غير متوفر باللغة الروسية على الإطلاق، أو يتم ترجمته بطريقة تجعل من الأفضل تعلمه باستخدام ترجمة Google. سيكون من دواعي سرور مجتمع جافا الناطق باللغة الروسية بأكمله أن الكتاب الأكثر شهرة حول هذا الموضوع "Java Persistence API with Hibernate" تمت ترجمته إلى اللغة الروسية منذ حوالي ستة أشهر.
إذا كنت تريد أن تصبح مطور Java، فسيتعين عليك يومًا ما أن تتعلم كيفية استخدام Hibernate . بالطبع، هناك استثناءات لأي قاعدة، كل هذا يتوقف على المشروع المحدد، وما إلى ذلك. ولكن إذا نظرت إلى حياتك المهنية على المدى الطويل، فستجد بالتأكيد هذه المكتبة في العمل الحقيقي. بدون مبالغة، يمكن تسمية الكتاب المقدم في المقال بالأساسي: فهو الدليل الرئيسي للإسبات من بين كل ما كتب عن هذه التكنولوجيا. يتم شرح ذلك بسهولة تامة، لأنه من بين مؤلفيه مؤسس مشروع Hibernate، Gavin King، وChristian Bauer، عضو فريق تطوير Hibernate. بالنسبة لي شخصيًا، كان هذا بمثابة نوع من الضامن للجودة: من يجيد البحث في التكنولوجيا إن لم يكن منشئوها :) ومن ناحية أخرى، ليس الحال دائمًا أن يكون متخصصًا جيدًا أو حتى مبتكرًا لمنتج ما. يمكن للتكنولوجيا كتابة كتاب تعليمي سهل الفهم. ومهما كان القول، فإن المهارات الشخصية والقدرة على التدريس ليس لهما أي علاقة تقريبًا ببعضهما البعض. ومن الأمثلة على ذلك "فن البرمجة" الأسطوري من تأليف كنوث أو "لغة البرمجة C++" من منشئها بيارن ستروستروب. وإذا كان من المستحيل إنكار أعلى مستوى من المعرفة للمؤلفين، فإن كتبهم، بعبارة ملطفة، صعبة القراءة. لحسن الحظ، قام مبدعو Hibernate ومؤلفو هذا الكتاب بإنشاء منتج مفهوم تمامًا من وجهة نظر المبرمج المبتدئ. لمن هذا الكتاب: مثل معظم الكتب المشابهة، يقول الملخص أنه "للجميع"، بما في ذلك أولئك الذين يتعلمون السبات من الصفر. في الواقع، لا يزال من الأفضل أن يكون لديك بعض الاستعدادات الأولية في شكل تقنيات ذات صلة. فيما يلي قائمة بالأشياء التي ستجعل حياتك أسهل بكثير عند قراءة هذا الكتاب.
إذا كنت لا تعرف ما هي قواعد البيانات العلائقية، فلن تتمكن من إنشاء جدول أو كتابة حتى استعلام SELECT بسيط، وما إلى ذلك. - من الأفضل أن تبدأ بهذا. بالمناسبة، سيكون هذا مفيدًا لأولئك الذين يخططون للمشاركة في تدريب JavaRush. ابدأ بـ SQL، ثم قم بالإسبات لاحقًا. لحسن الحظ، تم كتابة Head-First ممتازًا بلغة SQL (حسب ذوقي، أحد أفضل HeadFirst في السلسلة بأكملها).
جي دي بي سي . التكنولوجيا ليست جديدة على الإطلاق، لكن العديد من المطورين ذوي الخبرة ما زالوا يفضلونها على السبات.
بعد ذلك، سيكون من الجيد أن تقرأ (على الأقل بشكل سطحي) ما هو ORM ولماذا هو مطلوب . بعد كل شيء، السبات هو في المقام الأول ORM، أي شيء يحول كائنات Java إلى سجلات قاعدة بيانات (والعكس صحيح).
على سبيل المثال، لديك فئة مستخدم، وفئة تلقائية، وكل مستخدم لديه قائمة بسياراته القائمة<Auto>.
كيف يتم تسجيل كل هذا في قاعدة بيانات بحيث يتم الحفاظ على الاتصالات بين المستخدمين وأجهزتهم؟ بعد كل شيء، هناك مستخدم واحد فقط، ولكن يمكن أن يكون لديه العديد من الأجهزة: / كيف يمكننا حذف جميع أجهزة المستخدم تلقائيًا من قاعدة البيانات إذا قمنا بحذف المستخدم نفسه (أي منع قاعدة البيانات من تخزين الأجهزة "اليتيمة")؟ السبات يعرف فقط كيف :)
بالإضافة إلى ذلك، لدى Java تطبيقها الخاص لنموذج ORM - Java Persistence API ، أو ببساطة JPA. وقد تمت مناقشته أيضًا في الكتاب، ولكن من الأفضل أن تقرأه أولاً. لا تحتاج إلى قراءة الكثير من الأدبيات حول هذا الموضوع: إذا كنت تعرف ما هو POJO، والكيان، وما هي المتطلبات التي تنطبق على الكيان، فسيكون ذلك جيدًا جدًا.
إذا لم تكن على دراية بتنسيق XML ، فقد حان الوقت للتعرف عليه قبل قراءة هذا الكتاب. في كثير من الأحيان، تتم كتابة ملفات تكوين السبات (وكذلك الربيع) بتنسيق XML، وإذا كان ذلك يرعبك، فستكون قراءة الكتاب أكثر صعوبة.
إذا كنت معتادًا على أنماط التصميم (على الأقل من خلال مهام JavaRush)، فيمكنك القراءة عن نمط DAO وسبب الحاجة إليه. من السهل جدًا تنفيذ DAO باستخدام Hibernate. بالمناسبة، سيقوم المشاركون في التدريب بإنشاء "daos" عند كتابة مهمة اختبار (وفي المشروع نفسه أيضًا). وفي العمل الحقيقي، يعد إنشائها مهمة روتينية، لذا لن يكون الأمر غير ضروري.
التعارف الأولي مع كل ما سبق سوف يبسط دراستك إلى حد كبير (وفي العمل، كما يقولون، أمر لا بد منه). في الختام - القليل من IMHO عن مزايا وعيوب الكتاب. الايجابيات:
ترجمة جيدة جدًا من الإنجليزية . لا أعتقد أن الأمر يستحق الكتابة بشكل منفصل عن أهمية هذه النقطة. بالطبع، سيكون الأصل دائمًا أفضل، وإذا كنت تعرف اللغة الإنجليزية بمستوى كافٍ، فمن الأفضل قراءتها. ومع ذلك، بالنسبة لأولئك الذين لم يتقنوا اللغة الإنجليزية بعد، ولكنهم لا يريدون التوقف عن الدراسة لهذا السبب، فهذا خيار ممتاز.
تغطية واسعة جدا للموضوعات . تم وصف جميع "الدواخل" للمكتبة تقريبًا. عن شيء ما بقدر كبير من التفصيل، عن شيء أكثر اقتصادا. لكن بشكل عام، تبين أن التغطية كانت جيدة جدًا.
لغة بسيطة ومفهومة .
من السلبيات، يمكنني فقط تسليط الضوء على الأمثلة. في رأيي، يمكن أن تكون أبسط وأكثر إيجازا. ونظرًا لحجم المعلومات الجديدة التي سقطت على القارئ، فقد يكون من الصعب على المبتدئ أن يجمع كل شيء ويجعله يعمل. ناهيك عن فهم ما يحدث في الكود. يمكنني أن أوصي شخصيًا بعدم إزعاج الأمثلة من GitHub وكتابتها بنفسك. وسوف تتقن الأمر، وسيكون فهمك أفضل بكثير. والأفضل من ذلك، بعد قراءة الفصل التالي، قم بتنفيذ بعض المهام بنفسك. سيكون هذا أكثر إنتاجية، حتى لو كانت المهمة بسيطة للغاية. هل يستحق شراء الكتاب؟ قطعا نعم. علاوة على ذلك، فإن تداوله الورقي يبلغ 200 نسخة فقط :) بناءً على مواد هذا الكتاب، كتبت بسهولة مقالتي الأولى عن حبراهبر. وفي رأيي، يجب على إدارة JavaRush بالتأكيد إضافتها إلى قائمة جوائز مسابقتها :) شكرًا لك على اهتمامك، ونتمنى لك حظًا سعيدًا في دراستك!
GO TO FULL VERSION