1.1 言語の特徴 †
静的型付き言語 †
Swiftは、型注釈で型を指定できる。(型安全性)
1 2 3 |
|
nilの許容性をコントロール可能 †
nilは、「値が存在しない」ことを示す単語。
- 2値論理: true / false
- 3値論理: true / false / nil
基本的に、nilを代入できない。
例外的に、nilを代入できる仕組みとして、Optional型が用意されている。
1 2 3 4 5 |
|
型推論による簡素な記述 †
Swiftには、型推論という機能が用意されており、型注釈を省略しても一応動作する。
(型のエラーが発生した場合は、デバッグ時に型注釈を追記していけばOK)
1 2 3 4 5 |
|
ジェネリクスによる汎用的な記述 †
Swiftには、ジェネリクス(総称型)が用意されている。
ジェネリクスは、関数で扱う引数の型を「型引数」で指定/変更できる機能。
ジェネリクスが使えると、似たような機能を一つのまとめることができるので便利。
1 2 3 4 5 6 7 8 9 10 11 12 |
|
Objective-Cと連携可能 †
macOS向けの「Cocoa」やiOS向けの「Cocoa Touch」は、大部分がObjective-Cで書かれているフレームワーク。
Swiftは、Objective-Cと高い互換性を持っており、SwiftからCocoaやCocoa Touchの資産も利用可能。