読者です 読者をやめる 読者になる 読者になる

Swiftで遊ぼう! on Hatena

あしたさぬきblogでやってた初心者オヤジのiOSプログラミング奮闘記がHatenaに来ました

Swiftで遊ぼう! - 925 - Introduction to to iOS 10, Xcode 8 and Swift 3

Developing iOS 10 Apps with Swift - Free Course by Stanford on iTunes U

スタンフォード大学のポール先生のiOS講義が始まりました。

ある程度Swiftの勉強をしている人は勉強するいいチャンスです。

私のように2度途中で挫折している人にもいいでしょう。そうです私は3度目のチャレンジになりますが、こういう人は少ないかも。

さっそく最初の講義を聴いています。

Introduction to to iOS 10, Xcode 8 and Swift 3

iOSの開発環境の基本的な説明から入って、すぐに「Calculator」プロジェクトがスタートします。

Xcodeの簡単な説明から入って、UIButtonをViewの上に設置してボタンのタイトルを「7」にします。ViewController.swiftに「Ctrl + ドラッグ」して、@IBActionを設置して「関数」の説明をします。

クリックした時の挙動をコンソールで確認した後にViewにUILabeを設置して、ボタンをクリックしてラベルに表示をさせます。

そしてオペランド(演算子)の「π」の挙動の制御をします。コントロールフローの基本的な説明をする中で、オプショナルの説明が入ります。今まで繰り返し勉強した内容なので頭に簡単に入ってきます。

そして、このデモの最も重要な説明は、「Computed Properties(計算型プロパティ)」でしょう。

計算機のラベルに表示する数字は「String型」ですが、コードで扱う数字は「Double型」です。そのため計算して表示する時にString型からDouble型に、Double型からString型に、常に変換をしなければなりません。それを簡略化するために計算型プロパティを使用します。

let operand = Double(display.text!)!
display.text = String(sqrt(operand))

この多重変換をすっきりさせるために次のような計算プロパティを用意します。

var displayValue: Double {
        
    get {
        return Double(display.text!)!
    }

    set {
        display.text = String(newValue)
    }
        
}

これを使用したら最初のコードがシンプルになります。

let operand = displayValue
displayValue = sqrt(operand)

すっきりしました。これで講義1は終了です。