Android işletim sistemine mobil uygulama geliştirirken kullanılacak en temel programlama dili Java'dır. Java ile ilgili genel bilgilere buradan ulaşabilirsiniz.
Android tüm bileşenleriyle son derece geniş bir ekosistemdir. Bu ekosistemin anlatımında aşağıdaki başlıklar temel alınmıştır:
Android’e Giriş 1 eğitiminde, temel Java bilgisine sahip olmanız ve basit Java uygulamalarını bilgisayarınızda çalıştırabilmeniz hedeflenmektedir. Java dünyasıyla ilk kez tanışacaklar için hem dilin temel kavramları hem de uygulamaya yönelik kod örnekleriyle birlikte bir anlatım esas alınmıştır.
Android’e Giriş 2 eğitiminde, Android platformunun detaylarına ve geliştirme ortamına değinilmiştir. Platform özelinde bilgiler, cihazların özellikleri ve Android için geliştirme ortamının kurulumu yer almaktadır.
Android işletim sistemine mobil uygulama geliştirirken kullanılacak en temel programlama dili Java'dır. Java ile ilgili genel bilgilere buradan ulaşabilirsiniz.
Android tüm bileşenleriyle son derece geniş bir ekosistemdir. Bu ekosistemin anlatımında aşağıdaki başlıklar temel alınmıştır:
Android’e Giriş 1 eğitiminde, temel Java bilgisine sahip olmanız ve basit Java uygulamalarını bilgisayarınızda çalıştırabilmeniz hedeflenmektedir. Java dünyasıyla ilk kez tanışacaklar için hem dilin temel kavramları hem de uygulamaya yönelik kod örnekleriyle birlikte bir anlatım esas alınmıştır.
Android’e Giriş 2 eğitiminde, Android platformunun detaylarına ve geliştirme ortamına değinilmiştir. Platform özelinde bilgiler, cihazların özellikleri ve Android için geliştirme ortamının kurulumu yer almaktadır.
Android mimarisinin linux çekirdeğine extradan yaptığı bazı değişiklikler anlatıldı ayrıca android de linux un init fonksiyonunun çalışma mantığı ve yaşam döngüsü anlatıldı.
Android, Google, Open Handset Alliance ve özgür yazılım topluluğu tarafından geliştirilen, Linux tabanlı, mobil cihaz ve cep telefonları için geliştirilmekte olan, açık kaynak kodlu bir mobil işletim sistemidir. Android, aygıtların fonksiyonelliğini genişleten uygulamalar yazan geniş bir geliştirici grubuna sahiptir. Android için halihazırda 1 milyondan fazla uygulama bulunmaktadır. Google Play Store ise, Android işletim sistemi uygulamalarının çeşitli sitelerden indirilebilmesinin yanı sıra, Google tarafından işletilen kurumsal uygulama mağazasıdır. Geliştiriciler, ilk olarak aygıtı, Google’ın Java kütüphanesi aracılığıyla kontrol ederek Java dilinde yazmışlardır.
Android Üzerinde Adobe Flex ve AIR ile Yazılım GeliştirmeMuharrem Tac
19 Şubat 2011 tarihinde İTÜ ARI - 1 Teknokent'te düzenlenen Google Technology User Group toplantısında sunduğum Android üzeerinde Adobe Flex ve AIR ile Yazılım Geliştirme sunumu.
Türkiye Bilişim Derneği İstanbul Şubesi tarafından düzenlenen 3. İstanbul Bilişim Konferansı sona erdi.
Marmara Üniversitesi Nişantaşı Kampüsü Erdal İnönü Bilim ve Kültür Merkezi'nde 29-30-31 Mayıs tarihleri arasında düzenlenen ve sektörün önemli konularının tartışıldığı konferansta "Bilişimde Yönetişim" enine boyuna tartışıldı.
Sayın Ümit Vardar'ın Netbeans ve Sayın Kıvanç Erdem Oracle Yazılım Araçları sunumunu yaptığı Yazılım Araçları oturumunda ben de Eclipse anlatmaya çalıştım.
Android mimarisinin linux çekirdeğine extradan yaptığı bazı değişiklikler anlatıldı ayrıca android de linux un init fonksiyonunun çalışma mantığı ve yaşam döngüsü anlatıldı.
Android, Google, Open Handset Alliance ve özgür yazılım topluluğu tarafından geliştirilen, Linux tabanlı, mobil cihaz ve cep telefonları için geliştirilmekte olan, açık kaynak kodlu bir mobil işletim sistemidir. Android, aygıtların fonksiyonelliğini genişleten uygulamalar yazan geniş bir geliştirici grubuna sahiptir. Android için halihazırda 1 milyondan fazla uygulama bulunmaktadır. Google Play Store ise, Android işletim sistemi uygulamalarının çeşitli sitelerden indirilebilmesinin yanı sıra, Google tarafından işletilen kurumsal uygulama mağazasıdır. Geliştiriciler, ilk olarak aygıtı, Google’ın Java kütüphanesi aracılığıyla kontrol ederek Java dilinde yazmışlardır.
Android Üzerinde Adobe Flex ve AIR ile Yazılım GeliştirmeMuharrem Tac
19 Şubat 2011 tarihinde İTÜ ARI - 1 Teknokent'te düzenlenen Google Technology User Group toplantısında sunduğum Android üzeerinde Adobe Flex ve AIR ile Yazılım Geliştirme sunumu.
Türkiye Bilişim Derneği İstanbul Şubesi tarafından düzenlenen 3. İstanbul Bilişim Konferansı sona erdi.
Marmara Üniversitesi Nişantaşı Kampüsü Erdal İnönü Bilim ve Kültür Merkezi'nde 29-30-31 Mayıs tarihleri arasında düzenlenen ve sektörün önemli konularının tartışıldığı konferansta "Bilişimde Yönetişim" enine boyuna tartışıldı.
Sayın Ümit Vardar'ın Netbeans ve Sayın Kıvanç Erdem Oracle Yazılım Araçları sunumunu yaptığı Yazılım Araçları oturumunda ben de Eclipse anlatmaya çalıştım.
1. Android, Linux çekirdeğini kullanan bir
işletim sistemidir. Google, Open Handset
Alliance ve özgür yazılım toplulukları
tarafından geliştirilmektedir.
2. Bu platformda uygulamalar Android Yazılım Geliştirme Kiti
(SDK) kullanarak Java dilinde yazılır. Bu SDK yazılımcıya hata ayıklayıcı,
yazılım kütüphaneleri ve emülatör gibi yardımcı araçlar sunar.
Android güç kullanımını en aza indirmek ve hafızayı yeterli
kullanabilmek için çeşitli yöntemler kullanır. Kullanılmayan
uygulamaların bekleme moduna alınması; yetersiz hafıza durumunda
uzun süredir aktif olmayan uygulamaların kapatılması bu yöntemlerden
bazılarıdır.
3. Android Mimarisi
• Linux Çekirdeği
• Kütüphaneler
• Android çalışma zamanı (runtime)
• Uygulama geliştirme çatısı
• Uygulamalar katmanı
4. Temel Yapı (Linux Çekirdeği)
Linux çekirdeğinin doğrudan kaynak sağladığı
yapılar security (güvenlik), memory ve process (hafıza ve süreç)
kontrolü, dosyalama ve bağlantı için I/O işlemleri ve cihaz
sürücüleridir. Çekirdekte Android için özelleştirilmiş başlıca alanlar
ise güç kontrolü, paylaşılan hafıza, low memory killer ve süreçler
arası iletişim içindir.
5. Kütüphaneler
Kütüphaneler bölümünde C ile yazılmış sistem kütüphaneleri, internet
tarayıcısı (browser) motorlarının çalışması için Webkit, görüntüleme
kontrolünü yapan Surface Manager, grafik işlemleri için OpenGL, ses
ve video işlemleri için gereken Media Framework, veri yapıları
kontrolü ve düzenlenmesi için SQLite gibi yapılar bulunur.
6. Çalışma Zamanı (Runtime)
Linux çekirdeğindeki kütüphanelerin Java ile birleştiği
bölümdür. İki önemli bileşeni vardır. Bunlar temel Java
kütüphaneleri ve Dalvik Sanal (Virtual) Makinesi'dir.
7. Dalvik Sanal Makinası: Uygulamalar Dalvik Sanal Makinesi
tarafından çalıştırılır. Temel çalışma mekanizmasını anlamak
Android projelerinin yaşam döngüsünü anlamak açısından
önemlidir. Java ile yazılan uygulamalar alınır, Java kodları
derlenerek bytecode dosyalarına çevrilir. Bu dosyalar dex
dosyasına çevrilerek Dalvik Sanal Makinesi'nin çalıştıracağı
şekle sokar. Dalvik ortamı düşük işlemci gücü, az RAM ve sınırlı
batarya koşullarına göre tasarlanmıştır.
8. Uygulama Geliştirme Çatısı: Androidde uygulamaların yönetimi
Application Framework tarafında gerçekleştirilir. Bu katmanın
görevleri arasında; uygulamaya ait kaynakların yönetimi,
uygulamalar arası veri paylaşımının yönetimi, uygulamaların
yaşam döngülerinin yönetilmesi gibi önemli uygulamalar vardır.
Ayrıca uygulamanın donanım isteklerinin de yönetilmesini
gerçekleştirir.
9. Uygulamalar Katmanı
Uygulamalar Katmanı işletim sisteminin kullanıcıya
görünen yüzüdür de denebilir. Bu katmanda kullanıcı
tanımlı uygulamalar bulunur. Android uygulamalarının
tamamına yakını Java programlama diliyle geliştirilir.
11. Android Studio Tanıyalım
Gradle tabanlı, esnek proje inşa sistemi.
Farklı özellik ve sürümlere göre çoklu APK çıktısı.
Temel proje şablonlarıyla hızlı ve kolay proje üretimi.
Ekran tasarımlarını kolaylaştıran sürükle-bırak özellikli zengin editör.
Uygulamanın performansı, kullanılabilirliği, farklı sürümlerde
çalışabilirliğinin kontrol edilebileceği test araçları.
Kolay ve güvenli APK imzalanması.
Ek uğraşa gerek kalmadan Google hizmetlerini uygulamaya
ekleyebilme.
12. Activity Kavramı
Activity sınıfı tarafından oluşturulan nesneler uygulama içinde
kullanılan ekranları temsil ederler. Uygulamanızdaki her
Activity'yi AndroidManifest.xml'de tanımlamalısınız. Eğer yeni
Activity, AndroidManifest dosyasında tanımlı değilse
uygulamamız çökecektir.
Her uygulamanın LAUNCHER olarak tanımlı bir Activity sınıfı
olmalıdır. Bu şekilde tanımlanmış bir Activity, uygulama ilk
açıldığında otomatik olarak harekete geçer ve kullanıcının
karşısına çıkan ilk ekran olur.
13. Layout Kavramı
Android uygulamalarında ekran tasarımları res klasörü altında
bulunan layout dosyaları ile belirlenir. Bu dosyalar xml formatında
hazırlanan dosyalardır ve Android uygulamalarına özel etiketler
kullanarak görsel öğelerin yerleşimlerini ve özelliklerini bildirirler.
Bir ekranın görünümü genellikle iki farklı yerleşim tipi kullanılarak
belirlenir. Bunlar RelativeLayout ve LinearLayout olarak ikiye ayrılır.
LinearLayout yerleşimi kullanıldığında öğeler sırayla ekrana dizilirler ve
ekrandaki yerleşimleri ekranın en tepesinden en altına doğru sırayla
gerçekleşir.
RelativeLayout görsel öğeleri diğer öğelere göre referans alarak
dizer. RelativeLayout tasarımında ilk eklenen öğe ekranın en tepesinde
yer alır.