0Pricing
Swift Academy · レッスン

遅延プロパティと計算プロパティ

遅延プロパティと計算プロパティ

「遅延プロパティと計算プロパティ」はCoddyKit上の無料Swift Academyレッスンです。 これはレッスン1/1です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはSwift Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Swift Academyコースには全1レッスンが含まれています。

導入

こんにちは。

前のレッスンでは、格納プロパティについて学びました。プロパティには、lazyプロパティや計算プロパティも定義できます。

前のセクションで扱ったのは、格納プロパティのデータを保存することです。

それ以外にも、プロパティを計算プロパティやlazyプロパティとして定義できます。

Lazyプロパティ

Lazyプロパティ

プロパティの値を、初めて使用するまで生成する必要がない場合は、lazyな格納プロパティを使用できます。

プロパティの値を初めて使用するまで生成しない場合は、lazyな格納プロパティとして使用できます。そのため、オブジェクトの生成にコストがかかり、最初は必要ない場合は、そのオブジェクトが初めて使用される時点まで生成を遅らせることで、不要なリソース消費やパフォーマンスの低下を防げます。格納プロパティをlazyな格納プロパティにするには、lazy修飾子を付ける必要があります。

class Person {
    lazy var name: String = "Name"
    var age:Int = 0
    private var _lastName:String = ""
    func profile() -> String {
        return "I'm \(self.name) and I'm \(self.age) years old."
    }

}

var p = Person()

p.name = "Coddy"
p.age = 10

print(p.profile())

計算プロパティ

計算プロパティ

計算プロパティは入力を受け取り、新しい結果を返します。一見すると関数のように動作すると思うかもしれません。しかし、計算プロパティは通常のプロパティと同じようにドット記法で使用します。

次の例では、メソッドと計算プロパティの違いをよりよく理解できます。

続き

格納プロパティに加えて、クラス、構造体、列挙型には、実際には値を保存しない計算プロパティも定義できます。

計算プロパティは、getterとオプションのsetterを提供し、他のプロパティや値を間接的に取得・設定します。

例

プロパティ宣言内にget { }を定義すると、そのプロパティは計算プロパティになります。また、プロパティにアクセスすると必ず宣言されたget{}関数が呼び出されるため、初期値を持たせることはできません。

class Person {
    lazy var name: String = "Name"
    var age:Int = 0
    private var _lastName:String = ""

    var lastName:String{
    get {
        return _lastName
    }
    set {
        _lastName = newValue
    }
    }

    var profile:String{
    get{
        return "I'm \(self.name) and I'm \(self.age) years old."
    }
    }

}

var p = Person()

p.name = "Matt"
p.age = 40


/*
Normally, if it was a method, we would call it with the p.profile () method.
However, since it is propery, it was enough to call it with .profile.
*/

p.profile

おめでとうございます

おめでとうございます 🎉

このレッスンでは、Swiftの遅延プロパティと計算プロパティについて学びました。

次のレッスンでお会いしましょう。

遅延プロパティと計算プロパティ — イラスト6

よくある質問

「遅延プロパティと計算プロパティ」レッスンは無料ですか?

はい。「遅延プロパティと計算プロパティ」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Swift Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Swift Academyコースには全1レッスンが含まれています。

「遅延プロパティと計算プロパティ」で何を学びますか?

遅延プロパティと計算プロパティ ブラウザで直接実行するハンズオンコードでSwift Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

Swift Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのSwift Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン1/1です。

「遅延プロパティと計算プロパティ」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このSwift Academyレッスンでコードを書いて実行できますか?

はい。すべてのSwift Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

← Swift Academyに戻る