WatermelonDB: دیتابیسی اپنسورس برای اپلیکیشنهای React و React Native
WatermelonDB نسلی از دیتابیسهای بسیار سریع است که برای توسعهٔ اپلیکیشن با React و React Native میتواند مورد استفاده قرار گیرد به طوری که با ذخیرهسازی دهها هزار رکورد، کماکان از پرفورمنس بالایی برخوردار خواهد بود.
WatermelonDB ابزاری اپنسورس تحت لیسانس MIT است که برای توسعهٔ اپهای اندروید و آیاواس میتواند به کار گرفته شود اما در عین حال اگر قرار است وب اپلیکیشنی با لایبرری ریئکت توسعه دهید، کماکان میتواند مورد استفاده قرار گیرد و این در حالی است که از پایه برای این لایبرری طراحی شده و به سادگی میتواند در کامپوننتهای مختلف ایمپورت شود. از جمله قابلیتهای کلیدی این دیتابیس میتوان به موارد زیر اشاره کرد:
- صرفاً دیتای مورد نیاز فِچ خواهد شد و همین مسئله پرفورمنس را بالا برده است.
- برخوردار از قابلیتهای Multi-threaded و Async میباشد.
- مبتنی بر SQLite و برخوردار از ساختار رابطهای (Relational) است.
یکی از فیچرهای کلیدی WatermelonDB قابلیتی تحت عنوان Lazy Load به این معنی که تا دیتایی درخواست نشود، هرگز لود نخواهد شد که همین مسئله منجر به بالا رفتن سرعت اپهایی میشود که این دیتابیس برای ذخیرهسازی دادههای آنها مورد استفاده قرار گرفته است. قابلیت دیگری تحت عنوان Observable در این دیتابیس وجود دارد که بدان معنا است که به محض تغییر یک رکورد در دیتابیس، کلیهٔ ویوهایی که به نوعی وابسته به آن رکورد هستند به صورت خودکار آپدیت میشوند تا کاربر صرفاً آخرین تغییرات را مشاهده نماید.