CodeBlanks Logo Icon CodeBlanks

Proje tasarımı

Başlangıç finali mini uygulamasının iskeletini tasarlarsın.

Proje: Görev takip uygulaması

Bu beş derslik başlangıç finalınde öğrendiğin her şeyi birleştiren bir görev takip uygulaması yapacaksın. İlk derste bir Task sınıfı tanımlar ve bir görevi yazdırırsın.

Sonraki derslerde bu temel üstüne görev ekleme, tamamlama, hata yönetimi ve tüm akışı birleştirme katmanları ekleyeceksin. Her ders bir code adımıyla bir parça ekler; başlangıç kodu önceki dersin çözümünü içerir. Bu, gerçek bir uygulamanın nasıl büyüdüğünü gösterir.

Task sınıfı tasarımı

Bir Task sınıfı bir görevin başlığını (title) ve tamamlanma durumunu (done) taşır. Yapıcı başlığı atar, done varsayılan olarak false olur. toString ise durumu okunaklı biçimde gösterir.

class Task(val title: String) {
    var done: Boolean = false
    override fun toString(): String {
        return if (done) "[x] $title" else "[ ] $title"
    }
}

toString tamamlanmışsa [x] başlık, değilse [ ] başlık döndürür. Böylece listeyi yazdırdığında her görevin durumu görünür. Bu sınıf projenin temel taşıdır.

Uygulama Task sınıfını tanımla

Task sınıfını tanımla: val title: String yapıcı parametresi, var done: Boolean = false özelliği ve override fun toString(): String metodu (done ise "[x] ", değilse "[ ] " önekiyle title). main'de val t = Task("Kotlin çalış") oluştur ve println ile yazdır.

Başlangıç kodu

Main.kt
fun main() {
    // Bir Task sınıfı tanımla; bir örnek oluştur ve yazdır
}

Örnek çözüm

Main.kt
class Task(val title: String) {
    var done: Boolean = false
    override fun toString(): String {
        return if (done) "[x] $title" else "[ ] $title"
    }
}

fun main() {
    val t = Task("Kotlin çalış")
    println(t)
}

Beklenen çıktı

[ ] Kotlin çalış

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Bu projede ne yöneteceğiz?

  • Siparişleri
  • Müşterileri
  • Görevleri Doğru cevap
  • Faturaları

Açıklama: proje bir görev takip uygulaması; görevleri ekler ve tamamlarsın.

2 Boşluğu doldur: done özelliği

Soru
class Task(val title: String) {
    var ____: Boolean = false
}
Cevap
class Task(val title: String) {
    var done: Boolean = false
}

Açıklama: var done: Boolean = false ile tamamlanma durumu tanımlanır.

3 Parça ve rol eşleştir

Kavram Anlamı
title Görev adı
done Tamamlandı mı
Task(title) Yapıcı
var Değişebilir

Başlangıç bölümündeki tüm dersler