Swiftにはアサーション系のメソッドとして、次の5つのメソッドがあります。 assert assertionFailure precondition preconditionFailure fatalError これらの違いや使い分けについて簡単に紹介します。 Swiftには3つの最適化レベルがある まず、アサーション系メソッドを説明するために必要な、Swiftの最適化レベルについて簡単に説明します。 コマンドラインでswiftc --helpを実行させてみるとわかる通り、Swiftコンパイラには3つの最適化レベルがあることがわかります。 $ /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swiftc --help OVERVIEW: Swift compile
![SwiftでassertとpreconditionとfatalErrorをうまく使い分ける](https://cdn-ak-scissors.b.st-hatena.com/image/square/b4eec0f323024978c709216d50810f7c1966828c/height=288;version=1;width=512/https%3A%2F%2Fblogger.googleusercontent.com%2Fimg%2Fb%2FR29vZ2xl%2FAVvXsEi8gWMgRgX3KyYjwAjWvgzVlGK5gmubdZOWxz9_MwXBY_TpZNg9cKtbpayaKXzL1KSDza6fx6w2vTZwqfzV4Qf0mML6s0yVzSeZjmuU4AMcEkplH4QU6hi5KZ_BUkLl8yzfrBUl3WtJTWU%2Fw1200-h630-p-k-no-nu%2Fassert_methods.png)