وب‌سرویس مجید

پروژه doobie

typelevel/doobie

کاربرد:

یک لایه جی‌جی‌دی‌بی‌سی (JDBC) عملیاتی برای زبان اسکالا که به صورت تابعی کار می‌کنه و به توسعه‌دهندگان کمک می‌کنه تا با پایگاه‌های داده رابطه‌ای به شکل امن و خوانا تعامل داشته باشن.

در چه شرایطی بهتره استفاده شود؟

وقتی می‌خوای بدون از دست دادن کنترل، کدهای کار با دیتابیس رو به صورت تابعی و خالص بنویسی. این ابزار زمانی عالیه که تو یک پروژه اسکالای تابعی (Functional Programming) کار می‌کنی و می‌خوای از قابلیت‌های نوع (type safety) و مدیریت خطا به صورت عملیاتی استفاده کنی.

چند مثال از موارد استفاده

- نوشتن کوئری‌های امن که در زمان کامپایل چک می‌شن

- اتصال به دیتابیس‌های رابطه‌ای مثل PostgreSQL، MySQL و H2 بدون نوشتن کد خام JDBC

- مدیریت تراکنش‌ها به صورت تابعی و قابل تست

- استفاده در کنار کتابخانه‌هایی مثل Cats و Cats Effect برای ساخت برنامه‌های غیرمسدودساز (asynchronous)

  • ##functional
  • ##scala
  • ##doobie
  • ##jdbc
  • ##typed
  • ##database
  • ##cats
  • ##type
  • ##fp
  • ##backend