Swiftこんにちは、@akio0911です。SwiftのCodableで後からキーを追加した場合の挙動についてメモっておこうと思います。旧バージョンでJSONを出力するまずはnameプロパティだけを持つPersonというstructを作り、そのインスタンスをJSON形式にエンコードしてみます。{print(error.localizedDescription)}実行結果は以下のようになります。{"name":"akio"}新バージョンでデコードしてみる(非オプショナル)Personにプロパティage(非オプショナルのInt)を追加し、先ほどエンコードしたJSONを読み込んでみます。{print(error.localizedDescription)}実行結果は以下の通り。JSONの中にageというキーが無いため、エラーとなっています。missing.新バージョンでデコードしてみる(オプショナル)PersonのプロパティageをオプショナルのIntに変更し、先ほどと同じJSONを読み込んでみます。{print(error.localizedDescription)}実行結果は以下の通り。今回はエラーになりませんでしたが、ageの値はnilとなっています。追加したプロパティが非オプショナルだった場合、エラーとなる追加したプロパティがオプショナルだった場合、対応する値はnilとしてデコードされるという挙動になりました。この記事を書いた人あきお(@akio0911)派手髪iOSエンジニア。Twitterアカウントは@akio0911。YouTubeチャンネル「あきおチャンネル」にてiOSアプリ開発講座を公開中。iPhoneレッスンノート」など。iOSアプリ開発をテーマとしたオンラインサロン「アプリ道場サロン」を運営。東京・大阪にてアプリ開発講座「アプリクリエイター道場」を主催。Swift4.1+Xcode9.3対応」NEXT【WWDC2018】iOSエンジニア的に気になる新機能・新APIまとめこんな人がブログを書いています派手髪iOSエンジニアの「あきお」です。Twitterアカウントは@akio0911。YouTubeチャンネル「あきおチャンネル」にてiOSアプリ開発講座を公開中。iOSアプリ開発をテーマとしたオンラインサロン「アプリ道場サロン」を運営。iPhoneレッスンノート」など。未経験者向けのiPhoneアプリ開発講座「アプリクリエイター道場」を東京や大阪などで開講しています。こんにちは、あきお(@akio0911)です。画面遷移後にUITableViewのセルが選択状態のままになってしまうのを防ぐこんにちは、あきお(@akio0911)です。ログイン済み状態でアプリを起動するとナビゲーションバーが表示されない時の対処方法こんにちは、あきお(@akio0911)です。配列を使って冗長なswitchをシンプルにするこんにちは、あきお(@akio0911)です。アプリ道iOSアプリ開発初心者向けに公式ドキュメントの読み方・探し方を解説しますこんばんは、@akio0911です。卵は世界である"鳥は卵の中からぬけ出ようと戦う。生まれようと欲するものは、一つの世界を破壊しなければならない。