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
