できるだけ枯れた開発ツールを使うのが基本方針の私ですが、開発マシンのMacBook Airに、Xcode 6.1.1を導入しました。最大の理由は、Mac用のツールを作るのに、Swiftを使いたかったからです。MacアプリでSwiftが使えるのはXcode 6.1からなので、今までメインで使っていたXcode 6.0.1ではダメなのです。
以前の投稿で、1つ前のバージョンXcode 6.1を、試験マシンにインストールした話を書きました。いろいろと問題があって、速攻で失格となりましたが。それだけに、改良版の6.1.1には不安があります。試験マシンで大丈夫そうだったので、開発マシンも切り替える決断をしました。やっぱり、普段使っている開発マシンじゃないと、開発効率が悪すぎて困ります。
開発マシンに入れた理由が、もう1つあります。iPadアプリ開発の本番用を仕上げて一段落していて、切り替えて激しくテストするのには、一番良いタイミングだったことです。今は、空いている時間を見付けて、今まで作った機能のライブラリ化を進めています。こんなときこそ、テストとしては最適でしょう。
最終的にダメだったとしても、Xcode 6.0.1を再インストールして戻せますから、気持ち的にはラクです。戻す作業も、試験マシンで何回か試しているので経験済みですし。
過去に作った機能のライブラリ化では、このブログで紹介済みのiOS実験専用アプリを使っています。それをビルドしてみたら、コンパイルエラーが何個か出ました。オプショナルの扱いが少し変わっているようで、変数名の後ろに「!」を追加してエラーを消しました。
Xcode 6.1を試したときも同じようなエラーが出たので、コンパイラーが使うAPIの定義が、6.1から少しずつ改訂されているのでしょうね。間違いを訂正していることも考えられ、新しいAPI定義のほうが正しいでしょうから、できるだけ新しい開発ツールで開発するほうが良いでしょう。ツールのバグを抜きにすれば。
AppleサイトのAPI資料を何度も見ていますが、あるiOSのバージョンから使えなくなったメソッドなども含まれていて、どのバージョンから使えなくなったのか明示されています。今後も、APIの変更は続くでしょう。
同じSwiftコードでも、Xcodeのバージョンによって、エラーの出方が異なります。正確には、Xcodeのバージョンではなくて、コンパイル設定で指定されているSDKのバージョンですが。ちなみに、Xcode 6.1.1では、iOSアプリのデフォルト設定として、「Latest iOS (iOS 8.1)」となっていました。
このブログでも、いくつかのソースコードを公開しています。どれもXcode 6.0.1で開発しました。一部の投稿では、Xcodeのバージョンを明示していますが、何も記述していない投稿もあります。今後は、XcodeとSDKの両方のバージョン番号を明示する必要があるでしょうね。また、これまで書いたものにも、バージョン表記を付けておかなくては。
0 件のコメント:
コメントを投稿