はじめに
本記事は どすこい塾 Advent Calendar 2025 の1日目の記事です。
Swiftで引数の末尾にカンマを付けよう、という話です。
環境
- OS:macOS Sequoia 15.6(24G84)
- Swift:6.2.1
Swift 6.1から引数の末尾にカンマを付けられるようになった
前回の記事で紹介した通り、Swift 6.1から引数やタプルなどカンマ区切りのリストにおいて、 末尾にカンマを付けられるようになりました 。
func updateBookFor(
title: String,
description: String, // !!!: 末尾にカンマを付けてビルドが通る
) {
// ...
}
もし知らない方がいたら、それだけでこの記事を書いた意味があるので嬉しいです。
引数の末尾にカンマを付けるメリット・デメリット
引数の末尾にカンマを付けるメリットとデメリットを紹介します。
メリット1: 引数の追加が楽になる
引数の追加時に、今までは最終行の末尾にカンマを付ける作業がありました。
予めカンマが付いているとその作業がなくなり、追加したい引数をただ追加するだけで済みます。
// Before
func updateBookFor(
title: String,
- description: String
+ description: String,
+ author: String
) {
// ...
}
// After
func updateBookFor(
title: String,
description: String,
+ author: String,
) {
// ...
}
細かいですが、これだけで引数の追加がだいぶ楽になります。
メリット2: 差分がわかりやすくなる
メリット1と似ていますが、コードの書き手でなく読み手側のメリットです。
差分が追加の1行のみとなるので、コードレビュー時に差分がわかりやすくなります。
大したことないかもしれませんが、けっこうありがたいです。
デメリット1: Swift 6.1未満でビルドが通らない
末尾にカンマを付けられるようになったのはSwift 6.1からなので、当たり前ですがSwift 6.1未満ではビルドが通りません。
何らかの理由でSwiftのバージョンを上げられない場合はまだ使えません。
他にはデメリットがないと感じます。
おわりに
以上のメリットとデメリットを天秤に掛け、個人的には 引数の末尾にカンマを付けることを推奨します 。
プロジェクトの方針などあると思いますが、ぜひみなさんも引数の末尾にカンマを付けましょう。
以上 どすこい塾 Advent Calendar 2025 の1日目の記事でした。
明日は未定です。