Mobil Programlama – Uygulama Geliştirme

3. Uygulama Geliştirme

Uygulama geliştirme, belirli kuramsal temeller üzerine oturtulmuş yol haritaları ile gerçekleştirilebileceği gibi yazılım dünyasında yer almak isteyen her geliştiricinin kendine göre oluşturduğu farklı metodolojilerden de oluşabilir. Birçok yazılımcının birlikte çalıştığı yazılım projeleri ile tek başınıza geliştirdiğiniz küçük uygulamaların geliştirilme süreçleri arasında önemli farklılıklar da bulunur.

Yukarıda belirtilenlere ek olarak aynı hedef platform için geliştirilen bir uygulamanın mimarisi de çok farklı şekillerde kurgulanabilir. Günümüzde bir mobil uygulama geliştirirken kullanabileceğiniz farklı uygulama geliştirme mimarileri bulunmaktadır. Bunlar içerisinde en çok kabul görenler aşağıda sıralanmıştır:

• Tamamen Web tarayıcıda çalışanlar

• Yerel (native) uygulama olarak geliştirilenler

• Web ve yerel bileşenleri içinde barındıran karma (hibrid) uygulamalar

Uygulamaların Yaşam Döngüleri

Uygulama geliştirme yaşam döngüleri, uygulama geliştirme mimarisinde tercih edilen yönteme göre şekillenir ve bu tercih mobil uygulama geliştirme araçlarının seçimini de etkiler.

Tamamen Web Tarayıcıda Çalışan Uygulamalar İçin Yaşam Döngüsü

Bu uygulamaların yaşam döngüsü, standart bir Web sitesi geliştirme yaşam döngüsü ile paralellik gösterir ve buna ek olarak mobil ortamlar için sunulmuş ek yazılım kütüphanelerinin kullanımlarını da içerir.

HTML5 (HTML, CSS3, JavaScript) kullanılarak geliştirilen bu mobil uygulamalar mobil cihazlar için geliştirilen tarayıcılar tarafından yorumlanır ve kullanıcılara sunulur. Geliştirme ortamı olarak herhangi bir metin editörü kullanılabilir. Geliştirilen uygulamanın test edilmesi için ise güncel bir tarayıcı yeterli olacaktır.

Yerel (Native) Uygulamalar İçin Yaşam Döngüsü

Bu uygulamaların yaşam döngüsü, tamamen hedef platforma yönelik olarak uygulamanın geliştirilmesi süreçlerini içerir. Seçilen hedef platforma (ör.: Androd, iOS, Windows Phone) has geliştirme araçları, yazılım dili ve test ortamları kullanılır.

Hedef platformun tüm özelliklerini kullanabilmesi açısından önemli avantajlar sağlamasına rağmen her bir platforma özel olarak uygulamanın geliştirilmesi (kodlanması) gerekmektedir. Geliştirme ortamları çoğunlukla mobil cihazın işletim sistemine özel olarak geliştirilmiş ortamlardır ve test ortamları da yine işletim sistemine özel olarak geliştirilmiş emülatörlerden oluşur.

Bu ders kapsamında kullanılacak yerel geliştirme platformu Android olarak seçilmiştir. Bunun nedeni, Android platformunun geliştirme ortamı olarak kişisel bilgisayarlardaki işletim sistemleri konusunda esnek oluşudur. Mobil cihazlar için geliştirilecek bir Android uygulaması, Linux, Windows ve MacOS işletim sistemleri kullanılarak geliştirilebilir. Bu durum maalesef iOS ve Windows Phone için geçerli değildir. Bu platformlarda yerel geliştirme yapılabilmesi ancak iOS için MacOS, Windows Phone için ise Windows işletim sisteminin kullanılması ile mümkündür.

Web ve Yerel Bileşenleri İçinde Barındıran Karma (Hibrit) Uygulamalar İçin Yaşam Döngüsü

Bu uygulamaların yaşam döngüsü içerisinde hem Web tarayıcılar için geliştirilen uygulamaların yaşam döngüsü, hem de yerel uygulama geliştirme yaşam döngüsü yer alır. Bu yapının en büyük avantajı, geliştirme sürecinin temel Web teknikleri ile gerçekleştirilebilmesi ve aynı zamanda yerel özelliklerden de faydalanılabilmesidir. Bu aşamada Web geliştirme sürecine hakim olan bir kullanıcının ek bir programlama dili öğrenmesine gerek olmamaktadır. Bununla birlikte sağlanan ek bir avantaj da hedef platform için (ör.: Android ya da iOS) yapılan bir kodlamanın bir diğer platform için de yeniden kodlama yapılmaksızın kullanılabilmesidir.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir