Javalin: فریمورکی اپن‌سورس و سبک برای زبان‌های جاوا و کاتلین

Javalin: فریمورکی اپن‌سورس و سبک برای زبان‌های جاوا و کاتلین

Javalin یک فریمورک سبک برای زبان‌های برنامه‌نویسی Kotlin و Java است که مبتنی بر Sparkjava و koa.js اما در اصل با زبان کاتلین پیاده‌سازی شده است اما برخی از اینترفیس‌های آن به زبان جاوا هستند که این کار برای ایجاد یک تجربۀ لذت‌بخش و تقریباً ایده‌آل برای دولوپرهای جاوا و کاتلین بوده است.

اولین کسی باشید که به این سؤال پاسخ می‌دهید

از سویی می‌توان گفت که Javalin بیشتر از اینکه فریمورک باشد یک لایبرری است چرا که نیازی به پیاده‌سازی چیزی نیست و کانسپت‌های بسیار کمی برای یادگیری از جانب دولوپر مورد نیاز هستند. برای مثال، برنامه‌ٔ معروف Hello World در جاوالین با زبان جاوا به صورت زیر است:

public static void main(String[] args) {
    Javalin app = Javalin.start(7000);
    app.get("/", ctx -> ctx.result("Hello World"));
}

و در زبان کاتلین هم به شکل زیر است:

fun main(args: Array) {
    val app = Javalin.start(7000)
    app.get("/") { ctx -> ctx.result("Hello World") }
}

در حقیقت، هدف این پروژه حفظ این هماهنگی بین جاوا و کاتلین است و به طور کلی برخی از ویژگی‌های بازر این فریمورک عبارتند از:

- سبک است و به آسانی می‌توانید آن را یاد بگیرید.
- یک API تقریباً ایده‌آل هم برای جاوا و هم برای کاتلین دارا است.
- دارای سروری با قابلیت شخصی‌سازی است.
- از آبجکت مَپینگ JSON برخوردار است.
- دارای فایل هندلینگی ساده است.
- راهی آسان ذخیره‌سازی آبجکت‌ها در کوکی‌ها دارا است.
- از رندرینگ Markdown پشتیبانی می‌کند.

در پروسهٔ طراحی این ابزار اپن‌سورس، هماهنگی بین کاتلین و جاوا بسیار ضروری بوده است به طوری که وقتی یک پروژه را از جاوا به کاتلین منتقل می‌کنیم، نباید نیازی به تغییرات زیادی باشد و همان‌طور که در مثال بالا می‌بینید، تفاوت‌های بین جاوا و کاتلین بسیار جزئی و ناچیز هستند.