Bu yazımda çok basit bir iPhone uygulamasının nasıl yazılacağını anlatacağım. Göstereceğim örnek uygulamanın yapacağı tek şey aynı daha önce yazdığım Android ile ilgili yazıda olduğu gibi, ekranda bir tuş gösterip, tuşa basıldığında kullanıcıya bir mesaj göstermek. Dolayısı ile bu yazının, Android için yazdığım öteki yazının iPhone versiyonu olduğunu söyleyebilirim. Ancak burada anlatmam gereken daha fazla şey olacak çünkü her ne kadar iOS Android'den çok daha iyi ve programcı dostu bir işletim sistemi olsa da, daha önce Mac OSX için yazılım geliştirmemiş olan kişilere tamamen Fransız gelecek bir ortam. Bunun iki temel sebebi var. Biri iPhone uygulamaları geliştirirken Windows veya Linux kullanıcılarının tamamen yabancıolduğu Objective-C dilini kullanmak zorunda olmak. Diğeri de yazılım geliştirme ortamı olarak Visual Studio ve Eclipse'ten çok farklı bir şekilde çalışan XCode IDE'sinin kullanılması.
Göstereğim uygulamanın kendi bir pek işe yarar bir şey yapmıyor belki ancak iOS ortamına giriş yapmak için yeterli olduğunu düşünüyorum. Bu yazımda objective-c dilini anlatmak gibi bir amacım yok, ancak yine de yeri geldiğinde çok kullanılan bazı yapıların ne anlama geldiği hakkında kısa açıklamalar yapacağım. Bu yazıyı okuduktan sonra aşağıdaki soruların cevaplarını almış olacaksınız.
- iPhone uygulamaları geliştirmek için hangi yazılım ve donanıma ihtiyaç vardır?
- XCode ile bir iPhone projesi nasıl oluşturulur?
- Bir iPhone projesi hangi klasör ve dosyaları içerir ve bunların işlevi nedir?
- Interface Builder kullanılarak nasıl arayüz tasarlanır?
- Arayüz ile kod arasında nasıl bağlantı kurulur?
- Tuşa basmak gibi basit olaylar nasıl karşılanır?
- Kullanıcıya bir mesaj en kolay nasıl gösterilir?
- iPhone simülatörü nasıl kullanılır?
-
Bu cevaplar, iPhone programlama ile ilgili Türkçe bilginin neredeyse hiç olmadığı bu zamanda iPhone uygulamaları geliştirmeye başlangıç yapmak için yeterli olacaktır. Eğer vakit bulabilirsem gelecekte farklı arayüz bileşenlerinin nasıl kullanıldıklarını, cihaz içerisine nasıl kalıcı veriler tutulacağını ve ivme sensörü, GPS, pusula gibi donanımların nasıl kullanılacağını örnekler ile gösteren yazılar yazmayı planlıyorum.