Swiftの命名規則とか、基本的な構文をまとめました。
(※随時更新予定です)
Contents
命名規則
1. 変数名
キャメルケースで書く。
キャメルケースとは複数単語の場合、最初の単語を小文字、以降の単語の先頭文字を大文字にする書き方。
- user name → userName
- main image → mainImage
2. クラス名
各単語の先頭文字を大文字にして書く。
class AuthController {
}
3. 関数名
こちらも複数単語になる場合は、キャメルケース。
変数宣言
変数を宣言するときは「var」を使う。
var num
さらに型を明示的に指定する場合は、変数名の右に「:Int」のように書く
var num:Int
定数宣言
定数を宣言するときは「let」を使う。
let tax
さらに型を指定する場合は、変数名の右に「:Int」のように書く
var tax:Int
データ型の種類
Swiftで使う基本のデータ型は以下の7種類。
型名 | 説明 |
Int | 整数 |
Float | 浮動小数点(32ビット) |
Double | 浮動小数点(64ビット) |
String | 文字列 |
Bool | 真偽値(true / false) |
Array | 配列 |
Dictionary | 辞書 |
Optional | nilを許容する場合に使用 |
Dictionary型
PHPで言えば連想配列に相当するもので、配列にキーがついたもののことを言う。
書き方の例は以下
let stopLight = [
"1": "赤",
"2": "青",
"3": "黄"
]
Optional型
値がないことを、Swiftの世界では「nil(ニル)」と言い、変数の値がnilの場合はエラーとなる。
もしnilを許容する必要がある場合に使うデータ型が、このOptional型である。
書き方は次の通り。
var userName: String?
型名の横に「?」を使えることで、Optional型になりnilを許容できる。
ただし、Optional型で用意した変数に値を代入して、print()で出力すると、次のように表示される(Wrapされている状態)。
var userName: String?
userName = "OSAKA TARO"
print(userName)
//出力結果
// Optional("OSAKA TARO")
これを「OSAKA TARO」のようにStringとして出力するには、次のように「!」をつけて出力する(Unwrapという)。
print(userName!)
// 出力結果
// OSAKA TARO
関数の書き方
戻り値(return)がない場合の書き方は次の通り。
// 書き方
func 関数名(引数:引数の型){
//処理内容
}
// 例
func myFunc(name:String){
print("Hello \(name)")
}
// 関数を呼び出す
var name = "OSAKA TARO"
myFunc(name: name) // 関数名(型:値or変数)
戻り値(return)がある場合は次のように書く、
// 書き方
func 関数名(引数:引数の型) -> 戻り値の型{
//処理内容
return value //戻り値
}
// 例
func getPrice(price:Int)->Int{
let tax = 1.08
totalPrice = price * tax
return totalPrice
}
if文の書き方
// 書き方
if 条件 {
// 条件が成立した時の処理
} else if 条件 {
// 条件が成立した時の処理
} else {
// 条件が成立した時の処理
}
//例
if x == 0 {
print("右")
} else if x == 1{
print("左")
}else {
print("エラー")
}
繰り返し文の書き方
1. for文
基本の書き方は次の通り
for 定数 in 条件 {
// 処理
}
// 定数:for文内で使える定数
// 条件:1〜10までとか
条件には何回繰り返したいのかを書く。
0〜10(10を含む)であれば「0…10」、0〜10(10を含まない)であれば「0..<10」のように書く。
配列の要素数分回したい場合は次のように書ける。
for 定数 in 配列 {
// 処理
}
//例
let fruits = ["apple", "orange", "melon"]
for fruit in fruits {
print(fruit)
}
2. while文
while 条件 {
// 処理
}
switch文の書き方
// 書き方
switch 変数 {
case 値1:
//処理
case 値2:
//処理
case 値3:
//処理
default:
//処理
}
// 例
switch color {
case "green":
print("go!")
case "yellow":
print("slow down")
case "red":
print("stop")
default:
print("error")
}
変数と値がマッチする場合、処理を行う。
どれにもマッチしない場合は、defaultの処理。
構造体(struct)の書き方
struct 構造体名 {
//構造体の定義 (プロパティ、メソッド)
}
クラスの書き方
class クラス名 {
//定義 (プロパティ、メソッド)
}
- 構造体は継承ができない。
- クラスでは、プロパティに値が設定されていない場合、initializeが必須。
プロトコルの書き方
プロトコルの定義
protocol プロトコル名 {
//定義
}
構造体にプロトコルを適合させる
struct MyStruct: 適合させるプロトコル名 {
//定義
}
クラスにプロトコルを適合させる
class MyClass: SuperClass, 適合させるプロトコル名 {
//定義
}
クロージャーの書き方
{ (引数) -> 戻り値の型 in
// 処理
}
extensionの書き方
extension 対象の型 {
//追加するメソッドやプロパティを記述
}
Swiftの学習におすすめの動画教材
【iOSアプリ開発】Swiftが学べるおすすめUdemyコース
Swiftの学習におすすめ書籍
(2024/11/22 14:04:54時点 Amazon調べ-詳細)