メタル系IT日記

メタルを織り交ぜつつIT系を中心とした日記です

Objective-Cの書籍を捨てるのは早すぎる2つの理由(みんな落ち着け)

WWDC2014 で突然発表された新言語

「Swift」

Objective-C/C 言語を使用せずに、iOS, OS X アプリが開発できると、

とても素晴らしいお話ですよね。

個人的には C言語Objective-C は大好きですが...

 

コレまでも Corona SDK での Lua、Unity での js, C# など他の言語によるアプリ開発は可能でしたが、公式開発環境での選択肢が増えるということは、非常に影響が大きいと思います。

Objective-CC言語を 独自の機能で拡張した言語のため、厳密には C言語Objective-C 拡張部分の両方を学習する必要があったり、クラスの作成やインスタンス化が独特だったり(コンストラクタが無い、イニシャライザとかコンビニエンスコンストラクタとか、宣言プロパティとか...)、メソッド名が矢鱈長かったりと、とにかく他の言語プログラマーからすると敷居の高い言語であることは間違い無いと思います。

 

で、本題ですが、Swift の発表以来、Objective-C オワコン的な流れが漂っていますが、まだまだ Objective-C の書籍を捨てるのは早すぎると思います。

 

【理由1】Xcode6 はまだリリースされていない。

 Swiftがサポートされるのは Xcode6から。iOS8がリリースされる直前に Xcode6 の正式版もリリースされると思いますので、こちらも今年の秋頃。それまでは基本的にObjective-Cでの開発になると思います。このため Objective-C の書籍を捨てるのは年末の大掃除のタイミングが妥当だと思われます。

 

【理由2】世の中の多くのアプリが Objective-C で書かれている。

 AppStoreでは大量のアプリがリリースされていますが、多くのアプリが Objective-C によって作られています。これらリリース済みアプリもバージョンアップ等していく必要が有りますが、Xcode6 が自動的に Swift にコンバートしてくれる訳ではありません。

自力で Swift にコンバートするとしても Objective-C のスキルは必要になるし、当面は Objective-C のままメンテナンスするケースがほとんどだと思います。

Objective-C プログラマの需要が急に無くなる訳ではありません。

 

という訳で、Objective-C の書籍を捨てるのはまだまだ早すぎると思います。