تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
Db4o
#1





التاريخ 
يعود مصطلح نظام قاعدة البيانات وجوه المنحى إلى حوالي عام 1985 ، على الرغم من أن التطورات البحثية الأولى في هذا المجال بدأت خلال منتصف 1970. 
تم إنشاء أول أنظمة إدارة قواعد بيانات الكائنات التجارية في أوائل التسعينيات ؛ وأضاف هؤلاء مفهوم قاعدة البيانات الأصلية مدفوعة الثبات في مجال التنمية وجوه المنحى.

لوحظت الموجة الثانية من النمو في العقد الأول من القرن الحادي والعشرين ، عندما ظهرت في السوق قواعد بيانات موجهة للكائنات مكتوبة بالكامل بلغة موجهة للكائنات . db4o هو أحد أمثلة هذه الأنظمة المكتوبة بالكامل في Java و C #.

بدأ مشروع db4o في عام 2000 من قبل المهندس المعماري كارل روزنبرغر في عام 2001. تم استخدامه في تطبيقات المؤسسات والأكاديمية قبل إعلانها التجاري في عام 2004 من قبل شركة خاصة تم إنشاؤها حديثًا Db4objects Inc.

في عام 2008 ، تم شراء db4o بواسطة شركة Versant ، التي قامت بتسويقه كبرمجيات مفتوحة المصدر ثنائية الترخيص: تجارية ورخصة جنو العمومية (GPL).

نظرة عامة 
يمثل db4o نموذج قاعدة بيانات وجوه المنحى . أحد أهدافها الرئيسية هو توفير واجهة سهلة وأصلية لاستمرار لغات البرمجة الموجهة للكائنات . 
لا يتطلب التطوير باستخدام قاعدة بيانات db4o إنشاء نموذج بيانات منفصل ، ويحدد نموذج فئة التطبيق بنية البيانات. يحاول db4o تجنب عدم تطابق كائن / مقاومة العلائقية عن طريق إزالة الطبقة العلائقية من مشروع برنامج. تمت كتابة db4o بلغة Java و .NET ويوفر واجهات برمجة التطبيقات المعنية. 
يمكن تشغيله على أي نظام تشغيل يدعم Java أو .NET. يتم تقديمه بموجب تراخيص بما في ذلك GPL ، و db4o Opensource Compatibility License (dOCL) ، ورخصة تجارية لاستخدامها في البرامج الاحتكارية.

يمكن للمطورين الذين يستخدمون قواعد البيانات العلائقية عرض db40 كأداة مكملة. 
يمكن تنفيذ تبادل البيانات db4o-RDBMS باستخدام نظام النسخ المتماثل db4o (dRS). 
يمكن أيضًا استخدام dRS للانتقال بين تقنيات الكائنات (db4o) والتقنية ( RDBMS ).
كما يمكن تشغيل قاعدة البيانات المدمجة db4o في عملية التطبيق. يتم توزيعه كمكتبة

الميزات 
قاعدة بيانات مكونة من سطر واحد 
يحتوي db4o على وظيفة لتخزين أي كائن:

كود :
objectContainer . store ( new  SomeClass ())؛


لا يتطلب SomeClass هنا أي تطبيقات واجهة أو تعليقات توضيحية أو سمات مضافة. 
يمكن أن يكون أي فئة تطبيق بما في ذلك فئات الجهات الخارجية الموجودة في المكتبات المرجعية.
يتم حفظ كل كائنات المجال (بما في ذلك المجموعات) تلقائيًا. 
يمكن معالجة الحالات الخاصة من خلال كتابة معالجات النوع المخصص. 

مدمج 
تم تصميم db4o ليتم تضمينه في العملاء أو مكونات البرامج الأخرى غير مرئية للمستخدم النهائي. وبالتالي ، فإن db4o لا يحتاج إلى أي آلية تثبيت منفصلة ، ولكنه يأتي كملف مكتبة واحد بمساحة حوالي 670 كيلو بايت في إصدار .NET وحوالي 1 ميغابايت في إصدار Java.

وضع خادم العميل 
يسمح إصدار العميل / الخادم db4o بالاتصال بين تطبيقات العميل والتطبيقات من جانب الخادم. 
يستخدم TCP / IP للاتصال بخادم العميل ويسمح بتكوين رقم المنفذ. 
يتم تنفيذ الاتصالات من خلال الرسائل.

نظرًا لميزة يشار إليها باسم "الانعكاس العام" ، يمكن أن يعمل db4o دون تنفيذ الفئات الثابتة على الخادم. ومع ذلك ، فإن هذا الوضع لديه قيود. 

مخطط التطور الديناميكي 
يدعم db4o تطور مخطط الكائن التلقائي لتغييرات طراز الفئة الأساسية (حذف / إضافة اسم الحقل). تعديلات نموذج الفصل الأكثر تعقيدًا ، مثل تغيير اسم الحقل ، وتغيير نوع الحقل ، ونقل التسلسل الهرمي ليست آليا ، ولكن يمكن أتمتة من خلال كتابة برنامج تحديث الأداة المساعدة الصغيرة.

يمكن عرض هذه الميزة كميزة على النموذج العلائقي ، حيث يؤدي أي تغيير في المخطط إلى مراجعة التعليمات البرمجية يدويًا وترقيتها لمطابقة تغييرات المخطط.

استفسار 
بدلاً من استخدام واجهات برمجة التطبيقات المستندة إلى سلسلة (مثل SQL و OQL و JDOQL و EJB QL و SODA) ، تتيح Native Queries (NQ) للمطورين استخدام لغة البرمجة نفسها (مثل Java أو C # أو VB.NET) الوصول إلى قاعدة البيانات وبالتالي تجنب تبديل سياق ثابت يخفض الإنتاجية بين لغة البرمجة وواجهة برمجة تطبيقات الوصول إلى البيانات. توفر Native Queries أيضًا أمانًا للنوع ، بالإضافة إلى إزالة الحاجة إلى التعقيم ضد حقن الشفرة (انظر حقن SQL ).

LINQ 
تم دمج دعم LINQ بشكل كامل في db4o لـ .NET الإصدار 3.5. تتيح LINQ إنشاء استعلامات موجهة للكائنات بأي تعقيد مع الاستفادة من التحقق من وقت الترجمة وتكامل IDE Intellisense وإعادة التجهيز الآلي.

نظرًا للتكامل مع بعض المكتبات مفتوحة المصدر ، تتيح db4o أيضًا استعلامات LINQ المحسّنة على Compact Framework.

يمكن استخدام LINQ ضد تخزين البيانات العلائقية والكائنات ، وبالتالي توفير جسر بينهما. يمكن أيضًا استخدامه كطبقة تجريدية ، مما يتيح التبديل بسهولة بين تكنولوجيا قاعدة البيانات الأساسية.

رابط لتحميل
db4o (database for objects) 7.2

 https://db4o-database-for-objects.soft112.com/
الرد
تم الشكر بواسطة: sendbad100 , asemshahen5 , أمجد وضاح


التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم