eğitsel İletişim ve beden dili -...

12
Android’e Giriş Öğr.Gör. Utku SOBUTAY

Upload: others

Post on 26-Sep-2019

9 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Eğitsel İletişim ve Beden Dili - myo.bartin.edu.trmyo.bartin.edu.tr/usobutay/mobil_programlama/1_Android_Giris.pdf · Androidİşletim Sistemi Hakkında • Android işletim sistemine

Android’e Giriş

Öğr.Gör. Utku SOBUTAY

Page 2: Eğitsel İletişim ve Beden Dili - myo.bartin.edu.trmyo.bartin.edu.tr/usobutay/mobil_programlama/1_Android_Giris.pdf · Androidİşletim Sistemi Hakkında • Android işletim sistemine

Android İşletim Sistemi Hakkında

• Google tarafından geliştirilmiştir.• Dünyada en çok kullanılan mobil işletim sistemidir.• 2018 itibariyle Dünyada Android; %78.65, IOS; %20.12,

Windows; %0.34; Series 40; %0.18, Symbian; %0.1 kullanım oranları vardır..

• Linux çekirdeğini kullanan bir işletim sistemidir.• Açık kaynaklı işletim sistemidir, istediğiniz özellikleri

değiştirip kendi sürümünüzü oluşturabilirsiniz.• 23 Eylül 2008 tarihinde Android 1.0 sürümü yayınlanmıştır.

2018 itibariyle son sürümü Android 9.0 Pie sürümüdür.

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

2

Page 3: Eğitsel İletişim ve Beden Dili - myo.bartin.edu.trmyo.bartin.edu.tr/usobutay/mobil_programlama/1_Android_Giris.pdf · Androidİşletim Sistemi Hakkında • Android işletim sistemine

Android İşletim Sistemi Hakkında

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

3

•2018 Android İşletim Sistemi versiyonlarının kullanım oranları

Page 4: Eğitsel İletişim ve Beden Dili - myo.bartin.edu.trmyo.bartin.edu.tr/usobutay/mobil_programlama/1_Android_Giris.pdf · Androidİşletim Sistemi Hakkında • Android işletim sistemine

Android İşletim Sistemi Hakkında

• Android işletim sistemine program yazabilmek için; Google resmi IDE olarak IntelliJIdea tabanlı Android Studio önermektedir.

• Fakat; Android SDK kurulduktan sonra Netbeans veya Eclipse IDE’lerikullanılabilmektedir.

• Android Studio üzerinden programlama yaparken XML dosya biçimi ve JavaProgramlama dili kullanılır.

• Programlama; MVC (Model View Controller) çatısına benzer biçimdedir.• View; kullanıcıya görsellik sunmak için kullanılır.• Controller; görünmeyen kısımda işleri gerçekleştirmek için kullanılır.• Arayüz tasarlarken, String, Color, Shape gibi bazı belirgin değişkenleri

tanımlarken, İzinler verirken, yazılım bilgilerini verirken XML dosya biçimi kullanılır.

• Alt yapıda yapılacak işler Java programlama dili ile kodlanır.

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

4

Page 5: Eğitsel İletişim ve Beden Dili - myo.bartin.edu.trmyo.bartin.edu.tr/usobutay/mobil_programlama/1_Android_Giris.pdf · Androidİşletim Sistemi Hakkında • Android işletim sistemine

Android MVC

• MVC, çok katmanlı bir yapıdır.• Görseller, veri ve veriyi işleyen katmanlar ayrıdır.• Model: MVC’nin veri katmadır. Veritabanı alanları, String’ler vb. yapılar

tanımlanır. Örneğin; kütüphane otomasyonunda, kitap seri no, adı, yazarı vb.

• View: MVC’nin görsel katmanıdır. Arayüz, arayüz öğreleri tanımlanır. Web için web arayüzü, masaüstü veya mobil için uygun arayüzler.

• Controller: MVC’nin işlem katmanıdır. Tüm işlemlerin, işler bu katmanda gerçekleştirilir. Model ve View arasında köprü oluşturur. Veritabanı işlemleri, arayüzle etkileşim, hesaplamalar, veri aktarı vb. gibi…

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

5

Page 6: Eğitsel İletişim ve Beden Dili - myo.bartin.edu.trmyo.bartin.edu.tr/usobutay/mobil_programlama/1_Android_Giris.pdf · Androidİşletim Sistemi Hakkında • Android işletim sistemine

Android Sistem Mimarisi

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

6

Uygulama Katmanı

Uygulama Çatısı

Android Çalışma Zamanı

Kütüphaneler

Linux Çekirdeği

Page 7: Eğitsel İletişim ve Beden Dili - myo.bartin.edu.trmyo.bartin.edu.tr/usobutay/mobil_programlama/1_Android_Giris.pdf · Androidİşletim Sistemi Hakkında • Android işletim sistemine

Android Sistem Mimarisi

• Linux Çekirdeği : Uygulamaların çalışabilmesi için gerekli sürücüler bulunur.

• Kütüphaneler: C/C++ ile yazılmış çeşitli kütüphaneler bulunmaktadır. Sistem kütüphaneleri (Libc, SSL), medya kütüphaneleri (jpg,mp3,mp4), grafik kütüphaneleri (OpenGL/SGL) bu katmandadır.

• Android Çalışma Zamanı: Bu katmanda Çekirdek kütüphaneler ve Dalvik Sanal Makinesi yer alır.

– Çekirdek Kütüphaneler: Java çekirdek API’leri, veri yapıları, hizmetler, dosya erişimi, ağ ve grafik erişimi için gerekli kütüphaneler vardır.

– Dalvik Sanal Makinesi: Android işletim sistemi JavaME gibi JVM kullanmamaktadır. Onun yerine, tek bir cihazda çoklu işleri yerine getirmeyi sağlayan DVM kullanmaktadır. Thread, bellek yönetimi, güvenlik gibi işleri yerine getirmek için Linux çekirdeğini kullanır.

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

7

Page 8: Eğitsel İletişim ve Beden Dili - myo.bartin.edu.trmyo.bartin.edu.tr/usobutay/mobil_programlama/1_Android_Giris.pdf · Androidİşletim Sistemi Hakkında • Android işletim sistemine

Android Sistem Mimarisi

– Dalvik Sanal Makinesi (devam):• Belleği daha verimli kullanır.• Uygulama taşınabilirliği ve çalıştırılmasını daha tutarlı kılar.• Gömülü ortamlar için tasarlanmıştır.• Java sınıf dosyalarını optimize edilmiş DEX formatına

dönüştürür.• DEX dosyaları Dalvik Bytecode ile çalışır.• Her bir süreç (görev) için ayrı bir Dalvik Sanal Makinesi

Çalıştırır.

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

8

Page 9: Eğitsel İletişim ve Beden Dili - myo.bartin.edu.trmyo.bartin.edu.tr/usobutay/mobil_programlama/1_Android_Giris.pdf · Androidİşletim Sistemi Hakkında • Android işletim sistemine

Android Sistem Mimarisi

• Uygulama Çatısı: Android geliştiricileri için zengin bir platform alt yapısı sunar.– Aktivite Yöneticisi: Aktivitelerin yaşam döngülerini yönetir.– Görünümler: Aktivitelere ait kullanıcı arayüzlerinin

oluşturulmasında kullanılır.– Uyarı Yöneticisi: Bildirimler ve uyarılar için çeşitli işlevler

sağlar.– İçerik Sağlayıcıları: Uygulamaların veri erişimlerini sağlar

(Telefon Rehberi, resim, müzik vb.).– Kaynak Yöneticisi: Diziler, grafikler vb. gibi kodsuz diğer

kaynakları yönetir.• Uygulamalar: Uygulama çatısındaki servisler ve sınıflar kullanılarak

oluşturulan yerel (sms, email, takvim, Google map, telefon rehberi vb.) ve 3.parti uygulamaları kapsar.

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

9

Page 10: Eğitsel İletişim ve Beden Dili - myo.bartin.edu.trmyo.bartin.edu.tr/usobutay/mobil_programlama/1_Android_Giris.pdf · Androidİşletim Sistemi Hakkında • Android işletim sistemine

Android Programlama için Gerekli Araçlar

• Android kodlamak için gerekli araçlar;– JDK (Java Development Kit)– Android Studio (Veya Netbeans, Eclipse benzeri bir IDE)– Android SDK (Android Software Development Kit)

• Android programlamanın temelinde Java programlama dili olduğu için ilk olarak JDK kurulması gerekmektedir.

• Kodlamayı kolaylaştırmak için Android Studio gibi bir IDE kurulmaktadır. Android Studio’yu Google firması referans etmektedir fakat başka IDE’ler de kullanılabilir.

• Android kütüphanelerinin olduğu SDK’da kurulmalıdır. AndroidStudio kurduktan sonra uygun Android SDK’sı da beraberinde kurulmaktadır. Farklı bir IDE kullanılırsa SDK’yı ayrıca kurmak gerekebilir.

• Android SDK’sı, kodlanacak Android işletim sisteminin sürümüne göre seçilip kurulmalıdır.

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

10

Page 11: Eğitsel İletişim ve Beden Dili - myo.bartin.edu.trmyo.bartin.edu.tr/usobutay/mobil_programlama/1_Android_Giris.pdf · Androidİşletim Sistemi Hakkında • Android işletim sistemine

Gerekli Bağlantılar

• JDK https://www.oracle.com/technetwork/java/javase/downloads/index.html

• Android Studio https://developer.android.com/studio/

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

11

Page 12: Eğitsel İletişim ve Beden Dili - myo.bartin.edu.trmyo.bartin.edu.tr/usobutay/mobil_programlama/1_Android_Giris.pdf · Androidİşletim Sistemi Hakkında • Android işletim sistemine

Ders Bitti.Dinlediğiniz için teşekkürler…

•Uzaktan Eğitim Uygulama ve Araştırma Merkezi