Application
- Kotlin kursu
- İleri seviye
- Ders 21/83
- 5 dk
Application ve module yapısını öğrenirsin.
Application nedir?
Application, Ktor şunucusunun merkezî noktasıdır. Plugin'ler, routing ve yaşam döngüsü burada bağlanır. Bir Application.module() fonksiyonu ile yapılandırılır.
Örnek: fun Application.module() { install(ContentNegotiation); routing { ... } }. Bu fonksiyon embeddedServer çağrısında modül adıyla bağlanır. module ismi yaygın bir tercihtir; istediğin ad verebilirsin. Birden fazla modül tanımlayıp sırayla bağlamak mümkündür. Bu yapı, sunucu yapılandırmasını parçalara ayırır.
Modül bağlama
Bir modülü embeddedServer çağrısında bağlarsın. Örnek: embeddedServer(Netty, port = 8080, module = Application::module).
Burada module parametresi modül fonksiyonuna referans alır. Varsayılan modül adı module'dür; farklıysa belirtmen gerekir. Modüller, sunucuyu parçalara ayırmak için kullanılır: kimlik doğrulama bir modülde, raporlama başka bir modülde tutulabilir. Bu ayrım, kodun okunaklılığını artırır.
Uygulama Application.module tanımla
fun Application.module() tanımla. main içinde println("Modül hazır") yazdır.
Başlangıç kodu
// Application
// buraya yaz
import io.ktor.server.application.*
fun main() {
}Örnek çözüm
fun Application.module() {
}
fun main() {
println("Modül hazır")
}Beklenen çıktı
Modül hazır
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Application parçalarını eşle
| Kavram | Anlamı |
|---|---|
Application |
Merkezî nokta |
module() |
Yapılandırma |
install |
Plugin ekler |
routing |
Yol tanımı |
2 Application.module() ne işe yarar?
- Yapılandırma taşır Doğru cevap
- Engine seçer
- Sunucuyu başlatır
- HTTP isteği atar
Açıklama: module() plugin ve routing yapılandırmasını taşır.
3 Application.module tanımını tamamla
fun ____.module() {
install(ContentNegotiation)
}
fun Application.module() {
install(ContentNegotiation)
}
Açıklama: fun Application.module() tanımı yapılır.