Android, uygulama yazılımı değil, çok katmanlı bir mobil işletim sistemidir ve kapsamlı bir geliştirme süreci içerir.
Mobil dünyada en çok kullanılan işletim sistemlerinden biri olan Android, çoğu zaman yalnızca bir uygulama yazılımıymış gibi algılansa da, aslında bundan çok daha fazlasını ifade eder. Bu yazıda Android’in bir uygulama yazılımı mı yoksa işletim sistemi mi olduğu sorusuna netlik kazandıracak, işletim sistemi mimarisini açıklayacak ve Android uygulama geliştirme sürecini detaylarıyla ele alacağız.
Android, Google tarafından geliştirilen ve açık kaynak kodlu yapısıyla dikkat çeken bir mobil işletim sistemidir. Android, yalnızca bir uygulama değil, Linux tabanlı bir işletim sistemi mimarisi üzerine inşa edilmiştir. Bu yapı, mobil cihazlarda sistemin donanım seviyesinden kullanıcı arayüzüne kadar tüm katmanlarıyla birlikte çalışmasını sağlar.
Ancak Android yalnızca işletim sisteminden ibaret değildir. Google tarafından sağlanan Google Play Hizmetleri, Google uygulamaları gibi bileşenler sayesinde, Android aynı zamanda zengin bir uygulama ekosistemini de destekler. Bu bağlamda Android’i sadece bir uygulama yazılımı olarak tanımlamak, eksik bir yaklaşım olur.
Android’in mimarisi, dört ana katmandan oluşur. Her katman, sistemin belirli bir işlevini yerine getirir ve geliştiricilere esneklik sunar:
En alt katman olan Linux çekirdeği, Android cihazların donanımı ile işletim sistemi arasındaki iletişimi sağlar. Bellek yönetimi, işlem yönetimi, güç yönetimi ve sürücüler gibi temel görevlerden sorumludur.
HAL (Hardware Abstraction Layer), çekirdek ile donanım bileşenleri arasındaki iletişimi kolaylaştıran bir arayüz sunar. Bu sayede Android, farklı donanım üreticilerine kolayca uyum sağlar.
Android 5.0’dan itibaren kullanılan Android Runtime (ART), uygulamaların çalıştırılmasında önemli rol oynar. Java tabanlı uygulamalar burada Ahead-of-Time (AOT) derleme yöntemiyle daha hızlı ve verimli çalıştırılır. Ayrıca C/C++ tabanlı yerel kütüphaneler de bu katmanda yer alır.
Bu katman, geliştiricilerin Android uygulamaları oluşturmak için kullandıkları Activity Manager, Window Manager, Content Provider gibi bileşenleri içerir. Android’in uygulama mimarisi bu çerçeve üzerinden çalışır.
En üst katmanda ise yerleşik Android uygulamaları (Telefon, Mesajlar, Kamera gibi) ve kullanıcı tarafından yüklenen üçüncü taraf uygulamalar bulunur. Bu uygulamalar, önceki katmanlarla entegre biçimde çalışır.
Android için uygulama geliştirme süreci belirli adımlar ve araçlar ile sistematik bir biçimde ilerler. Bu süreç şu temel aşamalardan oluşur:
Uygulamanın yapısal mimarisi belirlenir. Bu noktada MVC, MVVM gibi yazılım mimari desenlerinden biri tercih edilir. Kullanıcı arayüzü (UI) ve iş mantığı (logic) net şekilde ayrıştırılır.
Android Studio ile birlikte gelen emülatörler ve fiziksel cihaz testleri sayesinde uygulama farklı ekran boyutlarında ve işletim sistemi sürümlerinde test edilir. JUnit ve Espresso gibi test kütüphaneleri kullanılır.
Uygulama tamamlandıktan sonra APK (Android Package) veya AAB (Android App Bundle) formatında paketlenir. Sonrasında Google Play Console üzerinden Google Play’e yüklenerek kullanıcılarla buluşturulur.
Android, bir uygulama yazılımından çok daha fazlası olup, donanım seviyesinden uygulama katmanına kadar kapsamlı bir işletim sistemi mimarisine sahiptir. Uygulama geliştirme süreci de bu mimarinin sunduğu olanaklar çerçevesinde şekillenir. Açık kaynak yapısı, geniş geliştirici topluluğu ve Google’ın sunduğu güçlü araçlar sayesinde Android, mobil dünyada hâlen en çok tercih edilen platformlardan biridir.