Jetpack Compose: Not Defteri Uygulaması Geliştirme Rehberi

ibrahimcanerdogan
3 min readOct 20, 2024

--

Jetpack Compose, modern ve verimli bir UI oluşturma aracı olarak Android geliştirme dünyasında popülerlik kazanmaya devam ediyor. Geleneksel XML tabanlı UI oluşturma yöntemlerinden farklı olarak, Jetpack Compose, daha sade ve okunabilir bir yapı sunarak, kullanıcı arayüzlerini daha kolay ve hızlı bir şekilde geliştirmenizi sağlıyor. Bu makalede, Jetpack Compose kullanılarak oluşturulan bir not defteri (Notepad) uygulamasını inceleyeceğiz.

➡️ SERTİFİKALI JETPACK COMPOSE KURSU 💯

Uygulamanın Amacı

Notepad uygulaması, kullanıcıların günlük notlarını kaydetmelerine, düzenlemelerine ve silmelerine olanak tanıyan basit ama işlevsel bir Android uygulamasıdır. Kullanıcı dostu bir arayüzle notlar oluşturabilir, kaydedebilir ve ihtiyaç duyduklarında notları düzenleyebilirler. Uygulamanın temel işlevselliği, kullanıcı deneyimini basitleştirmek ve hızlı not almayı sağlamak üzerine odaklanmıştır.

Jetpack Compose’un Avantajları

Jetpack Compose, not defteri gibi veri girişi yoğun uygulamalarda oldukça etkili bir çözümdür. XML tabanlı eski yöntemlerle kıyaslandığında, Jetpack Compose şu avantajları sunar:

  • Daha Az Kod: Geleneksel UI oluşturma yöntemlerine kıyasla, Jetpack Compose daha az kod yazarak aynı UI’yi oluşturmanıza olanak tanır.
  • Kolay Okunabilirlik: UI bileşenleri doğrudan Kotlin dili ile tanımlandığından, kodun okunabilirliği ve sürdürülebilirliği artar.
  • Yeniden Kullanılabilir Bileşenler: Jetpack Compose, farklı ekranlar için yeniden kullanılabilir bileşenler oluşturmanızı sağlar. Bu sayede, aynı bileşeni birden fazla yerde kullanabilir ve uygulamanın tutarlılığını artırabilirsiniz.
  • Animasyonlar ve Tema Desteği: Jetpack Compose, modern animasyonlar ve temalarla uygulamaları daha dinamik hale getirebilmenizi sağlar.

Notepad Uygulamasının Temel Bileşenleri

Notepad uygulaması, Jetpack Compose’un sunduğu temel UI bileşenlerinden faydalanarak geliştirilmiştir. İşte uygulamanın bazı önemli bileşenleri:

  • TextField (Not Alma Alanı): Kullanıcının notlarını girebileceği ve düzenleyebileceği bir TextField bileşeni kullanılmıştır. Bu bileşen, kullanıcıya notlarını hızlı ve kolay bir şekilde yazma imkanı sağlar.
TextField(
value = noteText,
onValueChange = { noteText = it },
label = { Text("Notunuzu Girin") },
modifier = Modifier.fillMaxWidth()
)
  • Not Kaydetme Butonu: Kullanıcıların yazdıkları notu kaydedebilecekleri bir buton eklenmiştir. Bu buton, notun kaydedilmesini ve bir listeye eklenmesini sağlar.
Button(onClick = { saveNote() }) {
Text("Kaydet")
}
  • Notlar Listesi: Kullanıcının daha önce kaydettiği notlar, bir liste içerisinde gösterilir. Bu liste dinamik olarak güncellenir ve kullanıcının notları arasında gezinti yapmasını sağlar.
LazyColumn {
items(noteList) { note ->
Text(note)
}
}
  • Not Düzenleme ve Silme: Kullanıcılar notlarını düzenleyebilir veya silebilir. Bu işlevler, kullanıcının notlarını yönetmesi ve güncellemesi için önemli bileşenlerdir.

Veri Yönetimi

Notepad uygulaması, kullanıcıların notlarını kalıcı olarak saklamasını sağlamak için basit bir veri yönetim sistemi kullanır. Bu aşamada Jetpack Compose’un ViewModel ve LiveData gibi bileşenleri, UI ile veriyi senkronize etmek için kullanılmaktadır. Uygulamada, notların kaydedildiği liste ViewModel tarafından yönetilir ve LiveData aracılığıyla UI bileşenlerine iletilir.

Sonuç

Jetpack Compose ile oluşturulan Notepad uygulaması, basit bir yapıya sahip olmasına rağmen, Jetpack Compose’un gücünü ve esnekliğini ortaya koyan harika bir örnektir. Uygulamanın UI’si, Kotlin dili kullanılarak kısa ve okunabilir bir şekilde geliştirilmiş olup, kullanıcıların hızlı ve kolay bir şekilde not almalarını sağlar. Jetpack Compose, Android uygulama geliştirme sürecini modernize eden ve geliştirme sürecini hızlandıran bir çerçeve olarak ön plana çıkıyor.

Eğer Android uygulama geliştirme ile ilgileniyorsanız, Jetpack Compose’un sunduğu bu yeni yaklaşımları öğrenmek ve projelerinizde kullanmak için harika bir zaman!

Daha fazlası için GITHUB profilimi inceleyebilirsiniz.

Eğitmen;

Merhabalar,

Ben İbrahim Can Erdoğan, Balıkesir Üniversitesi Endüstri mühendisliği bölümünden 2022 senesinde mezun oldum. Java ve Kotlin ile ileri seviye Android uygulamaları geliştiriyorum. Android alanında çalışmalarımı sürdürüyorum. Ayrıca Blockchain teknolojisi ile ilgileniyorum. Şuanda Kotlin ile Android uygulamalar geliştiriyorum. Kariyerimde Yapı Kredi, QNB Finansbank, Ebebek ve LOGO Yazılım gibi Türkiye’nin önde gelen şirketlerinde stajlar gerçekleştirdim. LOGO Yazılım bünyesinde Yazılım Geliştirme Uzmanı olarak Android uygulamaların geliştirilmesine katkı sağladım. Şu anda ebebek bünyesinde Android Yazılım Geliştirme Uzmanı olarak rol almaktayım. Yeni yeni bilgiler öğrenmeye ve bu öğrendiklerimi kullanmaya çalışıyorum. Azmim ve hırsım ile her zaman daha iyisine ulaşmaya ve elimden gelenin her zaman en iyisi yapmaya çalışıyorum.

Teşekkür ederim

Hazır mısınız? Hemen Kaydolun ve Kariyerinizi Yükseltmeye Başlayın!

İbrahim Can Erdoğan

LINKEDIN

YOUTUBE

UDEMY

GITHUB

--

--

ibrahimcanerdogan
ibrahimcanerdogan

Written by ibrahimcanerdogan

Hi, My name is Ibrahim, I am developing ebebek android app within Ebebek. I publish various articles in the field of programming and self-improvement.

No responses yet