Başarılı iOS uygulamaları için geliştiricilere tavsiyeler

Başarılı iOS uygulamaları için geliştiricilere tavsiyeler

Açıklama: Yazılımcılara Tavsiyeler başlıklı yazı dizimizde Türkiye internet sektörünün tecrübeli yazılım geliştiricilerini teker teker Webrazzi.com’da konuk edip, kendilerinden genç yazılım geliştiricilere olan tavsiyelerini ve tecrübelerini dinliyoruz.

Konuk yazarımız Sarp Erdağ, App Store’da 5 milyondan fazla indirilen PicLab'ın geliştiricisi Apperto’nun kurucusudur. Erdağ bu yazıda iOS odağında mobil uygulama geliştirmeden bahsedecek.

ios-yazilim-gelistirme-sarp-erdagMobil uygulama geliştirme, Apple iPhone 3G cihazını 2008’de ilk tanıttığından beri büyüyen bir trend olarak ilerlemekte. Piyasadaki ihtiyaç ve talep arttıkça da, yazılım geliştiriciler, ihtiyaçlara daha hızlı cevap verme gereği duymakta. Günde yüzbinlerce dolar ciro yapan popüler oyunları ve milyar dolarlara büyük şirketler tarafından satın alınan start-upları gören girişimciler de, dünyanın dört bir yanında, daha iyi fikirler bulup daha iyi bir şekilde hayata geçirebilmek için yarışmakta.

Mobil uygulama dünyasında başarının formülünü bulmak çok zor. Cihazlar ve işletim sistemleri geliştikçe, yeni yazılım geliştirme araçları ortaya çıktıkça ve yeni uygulama türleri popüler oldukça pazarda yeni fırsatlar doğmakta. Bu fırsatları değerlendirirken ise, yeni geliştirilen ürünler hızla piyasaysa sürülmeli ki, kullanıcılardan en hızlı şekilde geri dönüş alınıp, ürün doğru yönde ilerlesin.

Apperto’daki uzmanlığımız daha çok iOS uygulamaları geliştirmek üzerine olduğu için, bu yazıda iPhone ve iPad uygulamanızı daha hızlı ve kaliteli geliştirebilmek için kişisel olarak ve şirket içinde kullandığımız bazı araç ve yöntemlerden bahsedeceğim.

1- Büyük düşünün, küçük başlayın

Öncelikle tavsiyem, genel yaklaşımınızın “bir an önce piyasaya çıkmak” üzerine olması. Eğer bir şirketin iç işleri için kullanılacak büyük çapta bir yazılım geliştirmiyorsanız ve müşteriniz App Store kullanıcıları ise, geliştirdiğiniz app’in fikir aşamasından başlayıp, tasarlanıp, kodlanması ve App Store’a çıkması 2 aydan uzun sürmemeli. Eğer daha uzun sürüyorsa, bir adım geri atıp tekrar düşünün, çünkü ürününüzü gereğinden fazla özellikle dolduruyor olabilirsiniz. Gerçekten hangi özelliklerin tutacağını bilmeniz çok zor ve bunu anlamanın en iyi yolu bir an önce piyasaya çıkmak. Yeni bir pazarı, yeni bir ürünle denerken aşağıdaki görseli hatırlayın ve mutlaka MVP (Minimum Viable Product) yöntemini kullanın.

buyuk-dusun-kucuk-basla

2 - Open Source’a alışın ve iOS dünyasında neler olup bitiyor takip edin

Her sene Apple’ın yeni ürünlerini tanıttığı WWDC ve keynote etkinliklerine ek olarak, iOS dünyasındaki gelişmeleri alacağınız ManiacDev, MobileTuts vb blogları takip edin. Dave Werver’in her cuma iOS geliştiricilere yönelik oluşturduğu iOS Dev Weekly kaçmamalı, mutlaka üye olun. Mutlaka bir GitHub hesabınız olsun ve günlük bültene üye olun, en popüler açık kaynak kodlu Objective-c repolarının bilgisi emailinize gelsin. CocoaControls, CocoaPods, BinPress gibi ücretsiz ve premium komponentlerin yer aldığı siteleri takip edin. Dünyayı yeniden keşfetmenize gerek yok. Çoğu zaman, sizin ihtiyacınız olan bir kod parçasını ya da kütüphaneyi başka birileri düşünüp geliştirmiş ve open source olarak sunuyor olacaktır. Bunları bulup kendi ürününüzde kullanmaya çalışın.

3 - iOS geliştirmenin temellerini iyi öğrenin

Yazılım geliştirirken karşılaşılan hatalar genellikle dilin temel özelliklerini iyi bilmemekten kaynaklanmakta. Belli bir platform için uygulama geliştirmeyi öğrenirken SDK’yı çözmek ve alışmak işin aslında kolay tarafı. Objective-C, popüler dillerle karşılaştırıldığında oldukça farklılıkları olan bir dil ve bu farkları iyi öğrenmek, doğru yaklaşımları uygulamak gerekiyor. Objective-C ve iOS SDK’e alışmak için bizce en doğru yol Stanford Universitesi’nin derslerini iTunes’dan takip etmek. Yakın zamanda Apple’ın geliştiricilere açtığı iOS7 Tech Talk Videos’u da mutlaka izleyin. Son olarak, app geliştirme öğrenmek için belli bir bütçeniz var ise TreeHouse epey yardımcı olabilir.

treehouse-ios
Treehouse dünya çapında en çok tercih edilen online yazılım eğitim platformlarından biri konumunda.

4- Programlı olun

Eğer programlama yapmak istiyorsanız, “programlı” olmalısınız. Masanız, masaüstünüz, çalışma alanınız düzenli olmalı. Değişkenlere, yazdığınız class’lara verdiğiniz isimler, gruplandırmalarınız belli bir standarda uymalı. Kodlarınız başka biri tarafından görüldüğünde mümkün olan en kolay şekilde anlaşılabiliyor olmalı. Yazdığınız kodlara şöyle bir baktığınızda adeta sanat eseri gibi gözükmeli. Tamam, biraz abarttık belki ama Jobs filminde Steve Jobs’ın, Wozniak ilk Apple bilgisayarların anakartını tasarlarken, transistörlerin eğri durmaması konusundaki takıntısını hatırlayın, başarı detaylarda saklı.

Tabii hem piyasaya hızlı çıkmaya çalışmak, hem de herşeyi uzun uzun düzenleyerek programlamak oldukça zor… Lakin genel olarak, yazdığınız kodlar iyi organize edilmiş ve bakımı kolay yapılacak şekilde olmalı. Eğer kendiniz bir standart getirmekle uğraşmak istemiyorsanız, NYTimes’ın rehberine sadık kalmanızı tavsiye ederim.

sarp-erdag
Sarp Erdağ

5- Bırakın Photoshop'u

Yazılımdan bu kadar bahsettik fakat tasarıma değinmedik. Uygulamanızın güzel gözükmesi, rahat bir arayüze sahip olması, hızlı ve akıcı çalışması, en az yazılımın kalitesi kadar önemli. Biliyorsunuz hiçbir müşteri, arka planda çalışan kodların ne kadar düzenli olduğunu umursayacak değil. Onların ilgilendiği taraf ön yüz. Yeni app’inizin güzel gözükmesi için iyi bir tasarımcıyla çalışıyor olabilirsiniz fakat malesef App Store’da “iyi” olmak yetmiyor. Sadece ve sadece en iyi uygulamalar, arkasındaki ekibi besleyebilecek kadar para kazanabilmekteler. Mobil arayüz tasarlamada da hızlı ve modern olmalısınız. Photoshop, “tasarım” diyince hepimizin alışmış olduğu mükemmel bir araç fakat artık ihtiyacınız için özelleşmiş daha iyi yazılımlar kullanmaya geçmelisiniz. Biz arayüz tasarımlarımızı Sketch ile yapmaya çalışıyoruz ve birlikte çalıştığımız tasarımcıları da buna alıştırıyoruz.

iOS ortamı, mobil uygulama geliştirmek için bizce hala en iyi ortam. İster yeni başlayın, ister hali hazırda başka bir ortamda yazılım geliştiriyor olun, App Store’a kendi ürününüzü koyup milyonlar tarafından kullanılmasını sağlamak büyük bir heyecan. 2014 ve sonrasında ise bizim ön görümüz iOS’un özellikle Internet of Things alanında gelişme göstereceği yönünde. Pek yakında evinizde, otomobilinizde ve günlük olarak kullandığınız cihazların birçoğunda iPhone’unuz ile bir çeşit entegrasyon olacağa benziyor. Apple’ın iOS in the Car lansmanı ve NEST’in yakın zamanda 3.5 milyar dolara satın alınması bu gelişmeye güzel örnekler. O kadar çok fırsat var ki, şu anda bu yazıyı okumanın dışında yapacağınız en iyi şey bir an önce XCode’u açmak. :)