3. ÜNİTE MOBİL PROGRAMLAMA
Bilgisayar Bilimi Dersi - Mobil uygulama geliştirme süreci ve temel kavramlarla ilgili bilgiler içeren kapsamlı bir rehber.
Mobil Uygulama Geliştirme
Kapsamlı Ünite Özeti ve Geliştirme Rehberi
Mobil Uygulama Geliştirmeye Giriş
İnternet, bilgiye erişim süreçlerinde önemli değişikliklere yol açmıştır. Mobil platformlarda da farklı yazılım çözümleri hayata geçirilmiştir. Bu çözümlerden biri de mobil uygulamalardır.
Mobil Programlamadaki Temel Kavramlar
Mobil programlama, uygulamanın çalışacağı platformun özelliklerine uygun olarak dikkatli bir geliştirme süreci gerektirir. Mobil cihazların sınırlı donanım özellikleri ve kısıtlı enerji kaynakları nedeniyle geleneksel program geliştirme yaklaşımının dışına çıkılması gerekir.
Uygulama Geliştirirken Kullanılan Tasarım Yapıları
Mobil uygulama geliştirirken farklı tasarım yapıları kullanılabilir. Bu yapıların seçiminde uygulamanın kullanımı, hedefi, mobil cihazların özellikleri ve maliyeti gibi faktörler etkilidir. Mobil programlamada yerel geliştirme, Web tabanlı geliştirme ve hibrit geliştirme gibi farklı yapılar bulunur.
Yerel Geliştirme
Platforma özgü dillerle geliştirme
Web Tabanlı
HTML, CSS, JS ile geliştirme
Hibrit Geliştirme
İki yaklaşımın birleşimi
Mobil Donanım
Temel Bileşenler
- İşlemci
- Anakart
- Bellek
- Ekran
- Depolama alanı
Bağlantı Modülleri
- Kablosuz ağ bağlantısı
- Bluetooth
- GPS
- NFC
- USB
- USB Type-C
Mobil cihazlarda ayrıca algılayıcılar (sensörler) bulunur. Bu algılayıcılar, cihazın bulunduğu konumu, yeryüzüne göre aldığı açıyı, ışık koşullarını ve benzeri bilgileri toplayabilir.
Mobil Uygulama Geliştirme Araçları
Mobil uygulama geliştirirken kullanılan araçlar üç kategoriye ayrılır:
1. Yazılım Geliştirme Ortamı
Android Studio, Xcode, Visual Studio
2. Uygulama Test Ortamı
Emülatörler, Test Cihazları
3. Uygulama Yayınlama Platformu
Google Play, App Store
Her kategori içerisinde yer alan araçlar, mobil uygulamanın çalışacağı işletim sistemine göre farklılık gösterebilir.
Mobil İşletim Sistemleri
Mobil işletim sistemi, cihazın en etkin şekilde işletilebilmesi için donanıma özel olarak geliştirilmiş ana yazılımdır. Mobil cihazların donanım yapısındaki farklılıklar, onların geleneksel bilgisayarlarda kullanılan işletim sistemlerini kullanmalarına olanak vermez. Bu nedenle mobil cihazlara özel olarak geliştirilen işletim sistemleri kullanılır.
Günümüzün Mobil İşletim Sistemleri
Android
Google tarafından birçok farklı donanım üreticisinin kullanımına sunulan işletim sistemidir.
iOS
Sadece Apple tarafından üretilen mobil cihazlarda kullanılabilir.
Windows Phone
Microsoft tarafından farklı donanım üreticilerinin kullanımına sunulan işletim sistemidir.
Mobil Cihazlarda Yer Alan Sensörler
Mobil cihazlarda bulunan algılayıcılar, insanlarda bulunan duyu organlarına benzetilebilir. Bu algılayıcılar, cihazın bulunduğu konumu, yeryüzüne göre aldığı açıyı, ışık koşullarını ve benzeri bilgileri toplayabilir.
Emülatörlerin Çalışma Mantıkları
Emülatörler, fiziki donanıma sahip olan cihazların işlevlerini taklit edebilen yazılımlardır. Geliştirilen uygulamaların test edilebilmesi için farklı donanım özelliklerine sahip birçok cihaz yerine bu şekilde yapılandırılabilen yazılımların kullanılması hem zaman hem de bütçeleme açısından önemli avantajlar sağlar.
Emülatör Avantajları
- Farklı cihaz modellerini test etme imkanı
- Zaman ve maliyet tasarrufu
- Hızlı test ve debug imkanı
- Farklı işletim sistemi versiyonlarını test etme
Web Tabanlı Mobil Uygulama Geliştirme
Web tabanlı mobil uygulamalar, HTML, CSS ve JavaScript gibi web teknolojileri kullanılarak oluşturulur. Bu uygulamalar, mobil cihazların web tarayıcılarında çalışır ve herhangi bir işletim sistemine bağımlı değildir. Web tabanlı mobil uygulama geliştirme, diğer uygulama geliştirme yöntemlerine göre daha kolay ve hızlıdır.
Web Tabanlı Mobil Uygulama Geliştirme Araçları
| Araç | Açıklama |
|---|---|
| Adobe Brackets | Açık kaynak kodlu, ücretsiz metin editörü |
| Visual Studio Code | Microsoft tarafından geliştirilen, ücretsiz metin editörü |
| Atom | GitHub tarafından geliştirilen, ücretsiz metin editörü |
| Sublime Text | Ticari bir metin editörü |
Mobil Uygulamada Harici Kütüphanelerin Kullanımı
Mobil uygulama geliştirmede, genellikle harici kütüphaneler kullanılır. Bu kütüphaneler, uygulamanın işlevselliğini ve görünümünü iyileştirmeye yardımcı olur. Ancak, harici kütüphanelerin kullanımı, bazı sorunlara yol açabilir.
İnternet Bağımlılığı
Harici kütüphaneler, genellikle İnternet üzerinden erişilir. Bu nedenle, mobil cihazın İnternet bağlantısının olmaması durumunda, uygulama düzgün şekilde çalışmayabilir.
Güncellemeler
Harici kütüphaneler, sürekli olarak güncellenir. Bu nedenle, uygulamanın güncelliğini koruması için, harici kütüphanelerin de güncellenmesi gerekir.
Güvenlik
Harici kütüphaneler, güvenilir kaynaklardan indirilmelidir. Aksi takdirde, uygulama güvenlik açıklarına sahip olabilir.
Web Tabanlı Mobil Uygulamanın Yerel Bir Uygulama Olarak Paketlenmesi
Mobil uygulamaların Web tabanlı olarak geliştirilmesi her ne kadar süreci hızlandırsa da birtakım sınırlılıkları da beraberinde getirmektedir. Hem Web tabanlı geliştirme ortamının avantajlarından yararlanmak, hem de beraberinde getirdiği sınırlılıkları en aza indirmek için geliştirilen uygulamanın sanki Yerel (Native) bir uygulamaymış gibi paketlenip mobil cihazlara yüklenebilmesi mümkündür.
Paketleme İçin Kullanılan Bulut Platformları
Adobe PhoneGap
Adobe tarafından satın alınan Nitobi firmasının geliştirdiği bir platformdur. Gelişmiş yazılım kütüphaneleriyle avantaj sağlar.
https://phonegap.com/Apache Cordova Projesi
PhoneGap'in kaynak kodlarının Apache Yazılım Vakfı'na devredilmesiyle ortaya çıkmıştır. Açık kaynak kodlu olmasıyla avantajlıdır.
https://cordova.apache.org/Sonuç
Mobil uygulama geliştirme, günümüzde oldukça önemli bir alan haline gelmiştir. Mobil cihazların yaygın kullanımı, mobil uygulamaların talebini artırmıştır. Mobil uygulama geliştirirken, uygulamanın kullanımı, hedefi, mobil cihazların özellikleri ve maliyeti gibi faktörler dikkate alınmalıdır. Ayrıca, mobil uygulama geliştirme araçları ve mobil işletim sistemleri hakkında bilgi sahibi olmak gerekir.
Ek Kaynaklar
Bu kaynaklar, mobil uygulama geliştirme konusunda daha fazla bilgi edinmek isteyenler için faydalı olacaktır.
Bu ünitenin çalışma kağıdını indir PDF olarak tek sayfa özet halinde indir
Yorumlar
Henüz yorum yapılmamış.
Henüz yorum yapılmamış. İlk yorumu siz yapın!