今後iPhoneアプリを作るなら Swift と Objective-c のどっちを使った方が良いかという記事です。
まだSwift歴3ヶ月程度で知らない事ばかりですが現状思っている事を書いてみます。
Swift or Objective-c のどっちがいいか
プログラミング経験あるならSwiftが良いと思います。
Swiftが良い理由
私がSwiftを推す理由は短いしファイル数が減るからです。
Objective-cより速度が早いとかnilの扱いが厳密だからとかは二の次でとにかく気持よく書ける所が良いです。
文字列書くのに@
がいらないし;
いらないしSwitch
でbreak
なくていいしヘッダーファイルにメソッド宣言しなくていいしメソッドの引数増やす時にヘッダーと実装の両方を修正しなくていいし他クラスを使いたい時に一々画面最上部にスクロールしてimportしなくていいとか それだけで十分Swiftが良いと思ってます。
Swiftを始める前にあった懸念と今の感想
まだObjective-cに比べて情報が少ないのではないか
Swift使う前は不安だったのですが実際にSwiftやってみるとそこまで困ってないです。
というのも開発してて調べたい事って大抵「テーブルの並び替えに使うメソッドなんだっけ?」とか「カメラ起動するにはどのクラス使うんだっけ?」と言ったAPIに関する事が多いです。
APIの名前や引数等はSwiftでもObjective-cでも大して変わらないので、情報で困る事はほとんどないです。
Objective-cのライブラリを使えないのではないか
ここも不安だったのですが、今の所問題なく使えています。
BridgeファイルでObjective-cのライブラリのヘッダーをインポートするだけで使えました。
Swiftをやる時のデメリット
Swiftの仕様変更
ここは少し工数がかかるかと思います。
試しに既存プロジェクトをXcode7.0で開いたのですが結構エラーが出ていました。
大規模プロジェクトや大人数での開発をしている場合は少し大変だと思います。
Swiftの難易度
Swiftはnil周りが厳密だったりimmutableな変数が簡単に宣言できたりと、堅牢なコードが書けると言われていますがその分覚える事が多いです。
特にInitialize周りがややこしくて自分も未だに理解できてないです。(勉強しないと
プログラミング経験あるならSwiftと書いた理由
「プログラミング経験あるなら」って書いた理由は上で書いた通りSwiftはちょっと難しい部分があるからです。
あと入門書もObjective-cが多かったりするので初めてプログラミングをするならObjective-cもありだと思います。
既存プロジェクトをObjective-cからSwiftに変換する方法
ファイル単位で簡単にSwift化ができるので、徐々にやっていくのが良いのではないかと思ってます。
下は移行した際のメモです。
Objective-cの勉強はした方が良いか
ネットの情報はまだObjective-c
が多いので少しは勉強した方が良いかとは思ってます。
とは言ってもメソッドやクラスの書き方とかプロパティーとか基本的な構文を覚える程度で十分だと思っています。
まとめ
まだまだ勉強を初めたばかりですが、Swiftは書いてて楽しいのでオススメです!
Swiftではじめる iPhoneアプリ開発の教科書 【iOS 8&Xcode 6対応】 教科書シリーズ
- 作者: 森巧尚
- 出版社/メーカー: マイナビ出版
- 発売日: 2014/10/31
- メディア: Kindle版
- この商品を含むブログを見る
- 作者: 荻原剛志
- 出版社/メーカー: SBクリエイティブ
- 発売日: 2014/12/10
- メディア: 大型本
- この商品を含むブログ (2件) を見る