- 更新日: 2015年9月25日
- Swift & iOS
Xcode7.0アップデートで遭遇した課題2つ
先日 Xcode 7.0 にバージョンをアップデートしたのですけど、その時に問題というか課題に2つ遭遇した。1つは Xcode 7 へのアップデートで 同時に Swift のバージョンが 1.2 から 2.0 に上がるので、「Convert to Latest Swift Syntax」(Swift 2.0 へのシンタックスに修正)しなければならない。もう1つは以前にも遭遇したことがあったのですけど、XVim が動かなくなりました。
— 環境 —
Mac OS X Yosemite 10.10.5
Xcode 7.0(アップデート後)
Swift 2.0(アップデート後)
Convert to Latest Swift Syntax
Xcode 7.0 へのアップデート後、Xcode でプロジェクトを起動すると以下の「Convert to Latest Swift Syntax?」ダイアログが表示されます。
「Convert to Latest Swift Syntax」(最新の Swift シンタックスへの変更)は、Edit メニュー内からも実行できるので、後から作業する場合は Cancel しても OK です。私は時間があったので、「Convert」をクリックして修正作業をそのまま行いました。修正箇所を分かりやすく diff 表示してくれるので、確認をして保存するだけ。覚えている分で修正が多かったのは…
・NSError を使っている箇所を do ~ try ~ catch に変更
・println() を print() に変更
・不変の変数には var じゃなくて let 使え
・キャスト(as)まわりでの修正
・split(), count() などよく使うメソッドのシンタックス修正
・NSRegularExpression(正規表現)まわりの修正
などです。小規模なアプリですけど修正箇所が30箇所以上ありました。「Convert to Latest Swift Syntax」の作業終了後にビルドしたところ、ランタイム(実行時)のエラーもいくつか発生しましたのでそれら修正も行いました。
この Swift 1.2 から Swift 2.0 へのアップデートでの修正については、走り書きのメモを残しているので、まとめたらブログに書こうと思います。
XVim をアップデートしてインストールやり直し
Xcode 7 アップデート時に遭遇した課題のもう1つが、XVim が動かなくなってしまったこと。これを修正するには、git clone で入れているので、git pull で XVim のソースを最新にした後に make。
1 2 3 4 5 6 7 |
$ cd ~/Library/Application\ Support/Xcode/plugins/XVim $ git pull $ make ... ** BUILD SUCCEEDED ** |
その後 Xcode を起動しなおして、表示されるダイアログで「Load Bundle」をクリックする。ここ注意で、間違って「Skip Bundle」をクリックしないように。
過去記事を探してみたところ、以前にも全く同じ作業をしていました。
Xcodeアップデート(6.3.2)でXVimプラグインが動かなくなったので対応 | EasyRamble
Xcode 7 へのアップデートは以上のような感じで、割とスムーズに行けた印象です。「Convert to Latest Swift Syntax」が優秀でちょっと感動。コンパイラのチェックで自動修正できない分のランタイムエラーの修正にいくつか手間取りましたけど。Swift 2.0 の文法・シンタックスも良くなっていますし、Xcode 7.0 のコンパイラ・ビルド時間もとても改善されておりこちらも感動しました。
- Swift & iOS の関連記事
- WKWebView/UIWebViewでウェブページが真っ白
- Unityのインストールと初期設定
- WKWebView/UIWebViewでNavigation Barの下にウェブページが隠れるのを回避
- SwiftでArray(配列)などをシャッフル
- Navigation Controllerで画面遷移させるSwiftコード
- Swiftでタップ/スワイプのイベント処理実装・UITapGestureRecognizerとUISwipeGestureRecognizer
- UIPageViewController画面下部のUIPageControlを非表示にする
- Swiftのバージョン確認・REPL実行
- 正規のXcodeかどうかチェック(XcodeGhostマルウェア騒動)
- WKWebViewでtarget=”_blank”のリンクを開く(Swift)
Leave Your Message!