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

پروژه hoplite

sksamuel/hoplite

این یک کتابخانه سبک و قدرتمند به زبان Kotlin است که به راحتی امکان بارگذاری فایل‌های پیکربندی (مثل JSON، YAML، TOML و غیره) را به صورت مستقیم درون Data Classها فراهم می‌کند، بدون نیاز به کدهای اضافی یا پیچیده.

کاربرد:

این کتابخانه برای مدیریت تنظیمات برنامه‌های Kotlin (به خصوص در پروژه‌های Ktor یا Spring Boot) بسیار مناسب است. شما می‌توانید تنظیمات پایگاه داده، توکن‌های API، تنظیمات محیطی و غیره را از فایل‌های خارجی بخوانید و به صورت نوع‌ایمن (type-safe) در دیتا کلاس استفاده کنید.

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

وقتی می‌خواهید از پیکربندی‌های پیچیده بدون دردسر کدنویسی اضافه استفاده کنید، یا وقتی به دنبال یک راه حل تمیز و خوانا برای مدیریت config در پروژه‌های Kotlin هستید. همچنین برای پروژه‌های microservices که نیاز به تفکیک محیط‌های مختلف (dev, prod, test) دارند، عالی است.

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

بارگذاری تنظیمات اتصال به دیتابیس از یک فایل application.yml

خواندن متغیرهای محیطی و فایل‌های .env در کنار فایل‌های JSON

اعتبارسنجی خودکار مقادیر پیکربندی با استفاده از validators داخلی

ترکیب چند منبع تنظیمات (فایل + متغیر محیطی + آرگومان خط فرمان)

  • ##config
  • ##Kotlin
  • ##type
  • ##YAML
  • ##JSON
  • ##TOML
  • ##microservices
  • ##Ktor
  • ##SpringBoot
  • ##hoplite