iOS

Hello Swift

Bu yazıda sizlere Swift kullanarak basit bir Hello world uygulaması geliştireceğim. Bildiğiniz gibi Apple geçen hafta düzenlediği konferansta yeni bir yazılım dili duyurmuştu. "Daha kolay" bir dil olarak lanse edilen Swift, gerçekten de Objective C'ye göre birçok kolaylık getirse de yeni başlayanlar için ...

Ozan Uysal |

11.06.2014

Bu yazıda sizlere Swift kullanarak basit bir Hello world uygulaması geliştireceğim. Bildiğiniz gibi Apple geçen hafta düzenlediği konferansta yeni bir yazılım dili duyurmuştu. "Daha kolay" bir dil olarak lanse edilen Swift, gerçekten de Objective C'ye göre birçok kolaylık getirse de yeni başlayanlar için çok da kolay bir dil sayılmaz. Farklı bir syntax'a sahip olması (neredeyse Scala'ya benzeyen), deneyimli iOS geliştiricilerin bile belli bir geçiş dönemi yaşayacağını gösteriyor.

Swift ile beraber Xcode da ufak bir değişim geçirmişe benziyor. Bir önceki sürüme göre daha sade bir görünüme sahip olan Xcode, eylül ayında gelecek iPhone'ların yeni ekran boyutlarının da sinyallerini veriyor. Özellikle Storyboard ve Simulatör araçları bu ekran boyutlarıyla ilgili çeşitli izler taşıyor. Tabii gerçek boyutların ne olacağını ancak Beta sürümlerden gerçek sürümlere geçtiğimizde görebileceğiz.

Şimdi hızlıca bir "Hello World" uygulaması ile Swift kullanarak nasıl uygulama geliştireceğimizi görelim;

Yeni proje oluşturma sihirbazı Xcode 6'da biraz sadeleşmiş. Biz buradan tek ekranlı bir uygulama oluşturma için derslerimizde de anlatıldığı gibi Single View Application seçeneğini seçiyoruz.

Proje detay ekranı ise Xcode 5 ile aynı ancak tek farkla. Artık programlama dilini seçebiliyoruz. Önümüzdeki yıllarda tıpkı ARC seçimi gibi yok olacağını düşündüğüm bu özellik, Swift diline geçiş döneminde geliştiricilere kolaylık olması amacıyla konulmuş olmalı. Burada projemizin adını ve geliştirme dilini seçip projeyi oluşturuyoruz.

Swift projesinde ilk gözümüze çarpan artık .h ve .m dosyalarının olmaması. Swift dilinde sınıflar .swift uzantılı bir dosya ile tanımlanıyorlar. Syntax'da ise belirgin bir sadeleşme ve bir o kadar da farklılık göze çarpıyor.

İlk fark ettiğimiz değişiklik fonksiyon tanımlamalarında görünüyor. Artık fonksiyonlarımızı func fonksiyonAdı(değişkenAdı : DeğişkenSınıfı) şeklinde tanımlıyoruz. İkinci ve en büyük değişiklik ise değişken tanımlamalarında. Değişkenleri var değişkenAdı : DeğişkenSınıfı syntax'ı ile belirliyoruz.

Şimdi ViewController.swift dosyasına girelim ve bir adet UILabel ile IBAction tipinde bir fonksiyon oluşturalım;

[cpp]

//  ViewController.swift

//  HelloSwift

import UIKit

class ViewController: UIViewController {

    @IBOutlet

    var helloLabel : UILabel

    @IBAction

    func pressMe() {

        helloLabel.text = "Merhaba Swift!"

    }

    override func viewDidLoad() {

        super.viewDidLoad()

        // Do any additional setup after loading the view, typically from a nib.

    }

    override func didReceiveMemoryWarning() {

        super.didReceiveMemoryWarning()

        // Dispose of any resources that can be recreated.

    }

}[/cpp]

Storyboard'da ise yine eskisi gibi ekrana sürükle bırak yaparak görselleri yerleştiriyoruz. Ekranın boyutlarını belirlemek içinse Storyboard'ın alt kısmında gelen genişlik ve yükseklik ayarlama sihirbazından faydalanıyoruz. 

@IBAction ve @IBOutlet anotasyonları sayesinde Storyboard'da eskiden olduğu gibi görsel - değişken eşleştirmelerini kolaylık yapabiliyoruz. Yukarıdaki ekran görüntüsünde UILabel öğesine helloLabel değişkeni atanıyor. Yine aynı şekilde UIButton görselinin Touch Up Inside etkinliğine pressMe aksiyonu tanımlandıktan sonra burada işimiz bitmiş oluyor.

Uygulamamızı çalıştırdığımızda düğmeye bastıktan sonra aşağıdaki ekranı görürüz;

"Hello world" uygulamamız burada bitiyor. Swift dili ile ilgili daha detaylı eğitimlerde görüşmek üzere!

 

Ozan Uysal |

11.06.2014

Yorumlar

Veysel KOPARAL
22.11.2014 - 12:30

İncelemek isterseniz Türkçe Eğitim Seti 

https://www.udemy.com/swift-ile-iphone-uygulama-gelistirme-temelleri

Perihan Yavuzcan
13.06.2014 - 12:52

Çok faydalı bir blog yazısı! Paylaşımlarınız için teşekkürler... Swift eğitimini de merakla bekliyoruz. :)

samet
13.06.2014 - 02:09
Windows işletim sistemi destekliyor mu?
Mehmet Akif AKTAŞ
13.06.2014 - 01:10

Umarım arayüz gibi dilin kendi yapısı da sadedir. Swift eğitim yazı ve videolarınızı bekliyoruz.

Emir Beytekin
15.06.2014 - 09:20

iOS' a yeni başlıyorum, objective C öğrenmeme gerek var mı yoksa swift ile başlayabilir miyim ?

alper kılıç
16.06.2014 - 09:13

selam arkadaşlar yaklaşık 1 haftadır swift le uğraşıyorum. Kolay bir dil (Objective C ye göre) Yukarıda ki sorulara yanıt vereyim. 

- Windows işletim sisteminde denemedim ama (ben Mac book kullanıyorum) ama sanırım çalışmaz. çünkü mac taraflı bir uygulama olduğunu düşünüyorum.

- dilin kendi yapısı sade ve kendisi koymanız gereken syntax ları ya da hatalarda neyi eksik yazdığınızı belirten uyarılar var. Bu da yazılımcıya büyük kolaylıklar sağlıyor. Ayrıca çok gelişmiş bir kitapçığı mevcut bunu da "ibook" tan ücretsiz indirebilirsiniz. 

- Objective C ye hiç bulaşmadan bu dili öğrenebilirsiniz.  Objective C ye oranla oldukça sadeleştirilmiş.

 

Seren
18.06.2014 - 09:54

Şuanda daha çok android ile ilgilensem de IOS da ilerde istediğim birşey. Ve bu gibi dillerin çıkması da güzel bir kolaylaştırma sağlamış. Bunun eğitimlerini de bekleriz :)