6 Ocak 2017 Cuma

Android Programlamada Kendimi Geliştirmem için Tavsiyeleriniz Nelerdir?

Uzun bir zaman önce bizden eğitim almış olan bir öğrencimizden gelen maili ve vermiş olduğum cevabı, aynı düşüncede olan başkalarının da faydalanabilmesi için paylaşıyorum.

"Hocam selamlar, 3 yıl kadar önce Vortex’de Arda Otuk hocamızla beraber vermiş olduğunuz HTML/CSS/Javascript eğitimini almıştım. O zaman lisedeydim belki hatırlarsınız sizi de okulumuzda konuşmacı olarak ağırlamıştık. Ben çalışmaya 19 yaşımda başladım. Yaklaşık 2 yıldır front-end developer olarak çalışıyorum. Bu noktadan sonra mobil programlama ile yoluma devam etmek istiyorum. Kendime en yakın bulduğum alan, Java ile Android uygulamaları geliştirmek. Her ne kadar front-end tarafında Javascript ile bir aşinalığımız olsa da iş mobil uygulamalar geliştirmeye geldiğinde takıldığımız yerler çoğalıyor. Mobil Programlama ve Android Uygulama Geliştirme konusunda kendimi geliştirmem için tavsiyeleriniz nelerdir?"


Mobil uygulama geliştirme, gelir anlamında da heyecan ve zevk anlamında da iyi ve güzel bir alan. Android tarafında son dönemde doygunluğa erişiliyor olmasına rağmen halen daha yapılabilecek çok fazla iş ve geliştirilebilecek çeşitli projeler var. Tabii ki ilk zamanlardaki gibi pazarda büyük bir boşluk yok. Bundan dolayı daha planlı programlı ayağı yere basan projelerle ilerlemek daha uygun olacaktır.

Kimi durumlarda yalnızca Android üzerinde çalışan bir uygulama yeterli olmayacak, Geliştirmekte olduğumuz uygulamanın bir servis üzerinden beslenmesi de gerekecektir. Şu anda zaten front-end geliştirme yaptığınız için tabii ki yeni hedefinize doğru yola çıkarken zaten 1-0 önde başlıyorsunuz. Teknik anlamda bir servis üzerinden beslenen Android Uygulamaları zaten servis üzerinde çalışan back-end uygulamanın bir nevi front-end tarafı olarak tasarlanır.

Hatta şu anki mevcut yeteneklerinizle (HTML / CSS / Javascript), hem Android hem de iOS odaklı uygulamalar geliştirebilirsiniz. Mobil uygulama marketlerinde HTML, CSS ve Javascript ile geliştirilmiş çok sayıda uygulama yer almaktadır. HTML ve CSS ile bir arayüz hazırlayıp, arayüzün üzerinde çalışan Javascript kodlarıyla arka tarafta sunucuya bağlanarak bilgileri oradan alacak şekilde de uygulamalar geliştirebilirsiniz. Cep telefonlarımızda kullandığımız data odaklı bir çok mobil uygulama bu şekilde hazırlanmaktadır.

Bu konuda hızlıca cevap verebilmiş olmak adına birkaç link paylaşıyorum. İşin Java ile Native uygulama geliştirme tarafıyla ilgili ayrıca yazacağım.

HTML 5 ve Mobil Dünya
Mobil Platformlarda Native (Yerel) Uygulama mı? Mobil Web Uygulaması mı?
Hybrid Mobil Uygulama Nedir? Nasıl Geliştirilir?
Mobil Web Uygulamaları Geliştirirken Kullanabileceğimiz Kütüphaneler ve Frameworkler

Sizler de sorularınızı facebook / twitter / e-mail ya da bana ulaşabileceğiniz herhangi bir platformdan gönderebilirsiniz. Vakit buldukça elimden geldiğince cevaplamaya çalışıyorum.

Hocam bu Front-End / Back-End dedikleri nedir?

Hocam bu Front-End / Back-End dedikleri nedir?

Açık Akademi’de eğitimlerimi dinlemiş olan bir öğrencimden “Hocam bu Front-End / Back-End dedikleri nedir?” şeklinde bir soru aldım.


Front-End, kısa bir ifadeyle işin arayüz, yani; görsel taraftaki geliştirme kısmıdır.

Back-End dediğimiz; genellikle sunucuda, kullanıcı ya da ziyaretçinin görmediği ve erişemediği arka tarafta çalışan kodlardır. Yapılacak işe ait veriye erişmek, karmaşık hesaplamaların yapılması gibi işlemleri gerçekleştirmek için kullanılır.

Back-End’i uygulama içerisinde bağımsız bir modül olarak düşünebiliriz. Fakat, bu modül tek başına bir uygulama ortaya çıkartmak için yeterli değildir. Back-End'in yanında bir de kullanıcının uyulamamız ile iletişim kuracağı bir arayüze ihtiyaç var. Günümüzde, artan ihtiyaçlarla birlikte bu arayüz, standart sabit bir tasarım olmaktan çıktı ve çeşitli noktalarda iş mantığı çalıştırması gereken durumlar da ihtiyaç haline geldi. Yani arayüzde sadece tasarım değil programlamaya da ihtiyaç var. Ön taraf, yani kullanıcının gördüğü etkileşimde bulunduğu taraf front-end olarak adlandırılıyor.

Web uygulamaları için düşünecek olursak, ziyaretçinin görüp kullandığı web sayfaları, işin front-end kısmıdır. Bu kısımda Javascript, HTML, CSS kullanılır. Sitemizdeki sayfalara çağrı geldiğinde, sayfanın sunucuda oluşturulması sırasında, veriye erişen, veriyi hazırlayıp sayfayı oluşturan kodların bulunduğu kısım da back-end olarak adlandırılır.

Sizler de sorularınızı facebook / twitter / e-mail ya da bana ulaşabileceğiniz herhangi bir platformdan gönderebilirsiniz. Vakit buldukça elimden geldiğince cevaplamaya çalışıyorum.