注意: この記事は1年以上前に掲載されたものです。情報が古い場合がありますのでお気を付け下さい。
Objective-CとSwiftは、どちらもApple製品向けアプリを開発するのに主要な位置を占めている言語で、どちらもCocoa Frameworkを使っているが、それぞれ意外と違いがあるようだ。わたしが両方使ってみて気になったところなどを書いてみたい。
Objective-Cは良くも悪くもC言語からの拡張である。このことはC言語の機能もほぼそのまま使える上に、C++との親和性も確保されており、Objective-C++としてC++とも比較的容易に連携させることも出来る利点がある。
一方で、独特な記法をしなければならない気持ち悪さやCに起因するポインター問題およびメモリーリーク問題など、あまり安全な言語とは言えない状況である。
SwiftはObjective-Cと比べれば初心者でも安全に利用できるようになっている。enumやクラスの定義、メソッドなどもかなりモダンで綺麗にまとまっている。
一方で、C言語やC++とは言語仕様が根本的に変わっているため、ブリッジを使わないとCやC++の機能を使えないという点では不便を強いられる。
今後は基本的にはSwiftを使い、C++との連携が必要になったときなどでObjective-Cを使うというようになるのだろうか?
思ったよりもObjective-CとSwiftは違ったものになっている。
ウェブマスター。本ブログでITを中心にいろいろな情報や意見などを提供しています。主にスマートフォン向けアプリやウェブアプリの開発を携わっています。ご用の方はコメントかコンタクトフォームにて。