كيفية كتابة REST API بلغة Kotlin في 30 دقيقة: عملياً

مدرب بايثون أونلاين للمبتدئين

تعلم Python بسهولة دون إرهاق نظري. حل مهام عملية مع التحقق التلقائي واكتب الكود مباشرة في المتصفح.

ابدأ الدورة

كيفية كتابة REST API بلغة Kotlin في 30 دقيقة: عملياً

Kotlin هي لغة برمجة حديثة تكتسب شعبية سريعة في تطوير backend. بفضل بناء الجملة المختصر، والتوافق الكامل مع Java، والأدوات القوية مثل إطار العمل Ktor، يصبح إنشاء REST API عملية سريعة وممتعة. في هذه المقالة، سنعرض عملياً كيفية كتابة REST API بسيط ولكن متكامل بلغة Kotlin في غضون نصف ساعة حرفياً. ستتعلم كيفية إعداد المشروع، وإنشاء endpoints، ومعالجة JSON، وتشغيل الخادم.

المقالة موجهة للمطورين الذين لديهم معرفة أساسية بـ Kotlin، ولكنها لا تتطلب معرفة عميقة بتطوير backend. جميع الأكواد ستكون مصحوبة بشروحات مفصلة.



1. إعداد المشروع وإضافة التبعيات

في البداية، سنحتاج إلى إنشاء مشروع Kotlin جديد. سنستخدم Gradle - نظام البناء الأكثر شيوعاً لـ Kotlin. إذا كنت تستخدم IntelliJ IDEA، اختر "New Project" -> "Kotlin" -> "JVM | IDEA". وإلا، قم بإنشاء مجلد المشروع يدوياً.

أولاً، افتح ملف build.gradle.kts وأضف التبعيات التالية لـ Ktor وتسلسل JSON:

plugins {    kotlin("jvm") version "1.9.22"    kotlin("plugin.serialization") version "1.9.22"    application}

repositories { mavenCentral()}

dependencies { implementation("io.ktor:ktor-server-core:2.3.7") implementation("io.ktor:ktor-server-netty:2.3.7") implementation("io.ktor:ktor-server-content-negotiation:2.3.7") implementation("io.ktor:ktor-serialization-kotlinx-json:2.3.7") implementation("ch.qos.logback:logback-classic:1.4.14")}

application { mainClass.set("ApplicationKt")}

بعد مزامنة Gradle، نكون جاهزين لكتابة الكود. لاحظ أننا نستخدم إضافة kotlinx.serialization للعمل مع JSON - وهي الطريقة القياسية في Kotlin.



2. إنشاء نموذج البيانات والملف الرئيسي للخادم

لـ REST API، نحتاج إلى نموذج بيانات. ليكن قائمة مهام بسيطة (ToDo). قم بإنشاء ملف Todo.kt:

import kotlinx.serialization.Serializable

@Serializabledata class Todo( val id: Int, val title: String, val completed: Boolean = false)

الآن، لننشئ الملف الرئيسي Application.kt (أو Main.kt). فيه سنقوم بإعداد الخادم وتشغيله:

import io.ktor.server.engine.*import io.ktor.server.netty.*import io.ktor.server.application.*import io.ktor.server.routing.*import io.ktor.server.response.*import io.ktor.server.request.*import io.ktor.serialization.kotlinx.json.*import io.ktor.server.plugins.contentnegotiation.*

fun main() { embeddedServer(Netty, port = 8080, host = "0.0.0.0") { configureSerialization() configureRouting() }.start(wait = true)}

fun Application.configureSerialization() { install(ContentNegotiation) { json() }}

fun Application.configureRouting() { routing { get("/") { call.respondText("Hello, REST API on Kotlin!") } }}

هذا الكود يشغل الخادم على المنفذ 8080. قمنا بتوصيل وحدة ContentNegotiation للتسلسل/إلغاء التسلسل التلقائي لـ JSON. قم بتشغيل التطبيق - يجب أن ترى في المتصفح على العنوان http://localhost:8080 رسالة ترحيبية.



3. تنفيذ endpoints CRUD (Create, Read, Update, Delete)

الآن، دعنا نضيف مسارات REST كاملة لإدارة المهام. سنستخدم قائمة mutableListOf لتخزين البيانات في الذاكرة (في مشروع حقيقي، ستستبدلها بقاعدة بيانات).

لننشئ ملف TodoRepository.kt:

import kotlinx.coroutines.sync.Muteximport kotlinx.coroutines.sync.withLock

class TodoRepositor

المدونات

توصيات الكتب