Ana içeriğe atla

XCode Bölüm 02 – Sınıflar ve Temel Yapılar

Merhaba,

Bir önceki yazımızda (XCode Bölüm 01) iOS platformunda uygulama geliştirebilmek için kullanılan XCode IDE ‘sine nasıl erişebileceğimizi ve platformun görsel olarak nasıl bir görüntüye sahip olduğunu, projeyi ve emulatörü nasıl çalıştırabileceğimize göz gezdirmiştik.

Bu yazımızda ise pratikte iOS programlanın sınıf dosyalarına ve mimari yapısına göz atıyor olacağız. Yeniden bir proje oluşturmuyor ve bir önceki örneğimizdeki Boş demo projesinden devam ediyorum.
Öncelikle proje içerisinde yer alan sınıf dosyalarının isimlerine göz atalım.

Sınıf Dosyaları (Class Files)

Boş demo projesini oluşturduktan / açtıktan sonra sol bölümde proje dosyalarını görebiliyoruz. (Visual Studio kullanan arkadaşlar var ise Solution Explorer bölümünün görevini yapmaktadır.)

Blogpost1

AppDelegate.h
AppDelegate.m

ViewController.h
ViewController.m

Main.StoryBoard
    Main_iPhone.StoryBoard
    Main_iPad.Storyboard

Şimdi dosyalara göz attığımız da; AppDelegate sınıflarında uygulama seviyesindeki (Application Level) konmutları ekleyebilir ve kullanabiliriz. Bu sınıflar iOS uygulamalarını temsil eder.

AppDelegete sınıfının .m ve .h dosyalarından oluştuğunu göreceğiz. Bu dosyalar C++ kullananlar var ise hatırlayacağınız üzere .h dosyalarında Header file ‘ları (referanslar gibi düşünebilirsiniz) çağırır. .m ise implementasyon (implementation) dosyalarını çağırır.

ViewController adından da anlaşılacağı üzere form üzerinde yer alan objelerin bulunduğu dosyalardır.

Bir de görsel olarak grafikle göstermek gerekirse alt kısımdaki gibi olacaktır.

your_xcode_project_app_flow

Peki AppDelegate ve ViewController dan bahsettik. Ancak Main.Storyboard dosyalarından bahsetmedik. Bu nedir?

StoryBoard

ViewController sınıflarından yararlanan ve görsel objelerimizin bulunduğu bölümdür. Uygulamanın görsel görünümü ile ilgili olarak nesneleri ekleyebileceğimiz, sonuçlarını görebileceğimiz bölümdür.

Main.StoryBoard, ViewController sınıfları ile yönetilebilir kodların kullanılması mümkündür.

Main.StoryBoard, XCode IDE‘sin de InterfaceBuilder alanında yer almaktadır. ViewController.h sınıfı ile referans dosyalarını ve hazırladığımız metodları kullanabilriz.

 

BlogpostPic03 

Görsel olarak görmek gerekirse alt kısımda yer aldığı şekilde olacaktır.
Form üzerine ekleyebileceğimiz kontroller ise IDE ‘nin sağ alt kısmında yer almaktaıdr. Sürükleyip bırakmanız yeterlidir. Form üzerine kontrolleri eklerken hizamaları konusunda IDE yardımcı olmaktadır.

BlogPostPic04

Peki, bu sınıflar birbirleri ile nasıl ilişkili diye aklımıza bir soru takılıyor. Bunu da alt kısımda yer alan basit akış şeması cevaplamaktadır.

your_xcode_project_classes

Şimdi bu kadar konuyu incelediğimizde kafamıza çok geleneksel ama bir o kadar da önemli bir soru takılıyor. Bu uygulamanın objeleri canlı ortamda nasıl çalışıyor.

Uygulamalarınız canlı ortamda diğer bir çok uygulamalar gibi bellek üzerinde oluşmaktadır. Uygulamanın hata vermesi durumunda bellekte kullanmış olduğu alanı serbest bırakmaktadır. Eğer multi tasking bir uygulama geliştiriyor iseniz ise uygulama arka planda bellek kullanmaya devam etmektedir. Ancak farklı uygulamalar ile bu belleği paylaşabilmektedir. (Güzel bir teknoloji :) )

Daha önceden uygulama geliştiriciler eklemiş oldukları referansları ve kullanmış oldukları bellekleri boşaltmak / serbest bırakmaları gerekmekteydi. Daha şu anda güncel kullandığımız IDE lerde otomatik olarak referansları sayıyor ve gerekli temizlik işlemlerini sağlıyor. Sadece projeyi oluştururken Automatic Reference Counting seçeneğinin seçilmiş olması gerekiyor.

Yazımızın burada sonuna geliyoruz. Objective C ‘inin gelişimini ve bunu başımıza kimler sarmış diye merak edenler için wikipedia da yer alan yazıyı okuyabilirsiniz. (Yazının dili Türkçe dir)

http://tr.wikipedia.org/wiki/Objective-C
Umarım yararlı olabilmiştir.

--

TT

Yorumlar

Bu blogdaki popüler yayınlar

SharePoint 2010 - Content Query for Blog Posts

I hope this post will help many of you feel comfortable with using the Content Query Web Part. In this post I will walk you through the process of creating a content query web part and configuring it to show custom field types. I will also give details on how to use XSLT to stylize and format the data being pulled. I will be using the following scenario as an example. Say that you had a site collection with a top level publishing site. This publishing site would display a the most recent blog posts from all blog sites within its own site collection. To solve this problem we will use a Content Query Web Part and a customized ItemStyle.xsl using XSLT. Please note that the “SharePoint Server Publishing Infrastructure” needs to be enabled at the site collection to display the content query web part. Step 1: Add a Content Query Web Part to Page Navigate to the site that you want the blog posts to show up and click on edit page. Under Editing Tools in the Ribb

.Net 3.5 SP1 – Full Install Packages (Tam Kurulum)

.Net Framework 3.5 SP1 ‘i bilgisayarınıza kurmak istediğinizde normal şartlar altında Microsoft ‘un sitesinde 2.7 mb ‘lik bir dosya indirir ve kurulum işlemlerinizi bu dosya üzerinden yaparsınız. Ancak bu indirmiş oluğunuz dosya yaklaşık 220 mb ‘lik veriyi internetten indirerek kurulum yapmaktadır. İnternet çıkışına izin verilmeyen kurumlar ve kuruluşlar için bu durum bir sıkıntı oluşturmaktadır. Bu sebepten ötürü aşağıdaki link yardımı ile tam yükleme paketini indirdikten sonra hiç internet ihtiyacınız olmadan .Net 3.5 SP1 ‘i kurabilmeniz mümkün olacaktır. Link

Microsoft .Net Framework 3.0 & 3.5 Full Download

.Net ile yazılım geliştiricilerin özelliklede Framework 3.x ile geliştirenlerin başlıca sorunu kurulum dosyası hazırladıklarında .Net Framework ‘ü kurmak için internete bağlanmalarıdır. Çünkü kurulum dosyaları 2-3 MB arasıdır. Yavaş internet kullanıcılarında ve kurumsal şirketlerde projelerin çok ama çok geç kurulmasına sebep olmaktadır. Bu sebepten ötürü sizlere .Net 3.x Framework ‘lerin tam kurulabilir paketlerinin linklerini sizlere sunuyorum. Umarım yararlı olur. Microsoft .NET Framework 3.5 Setup 32-bit version (Boyut(Size): ~200MB Microsoft .NET Framework 3.0 Setup 32-bit Version (Boyut(Size): ~50MB) 64-bit Version (Boyut(Size): ~90MB) Herkese iyi çalışmalar, kolay kurumlar diliyorum. :)