C++ with Cocoa

急にMacOSX上の開発に関する話。

ユーザーインターフェース関係のことをMac上でやろうとすれば

・Cocoa

・Carbon

からどっちか選ばなきゃいけないわけだが、

Cocoa :

.Net Frameworkみたいな雰囲気

オブジェクト指向になってる

Objective-Cで書かれてる

Java bindingも一応程度にはあるが、全機能はサポートされていない

Carbon :

WindowsのAPIみたいな感じ

Cで書かれてる

というわけで、まぁCocoaの方が便利そうだし、Appleもこっちを推奨してるから、きっといいことがあるだろう。

だが、問題はObjective-Cとかいう言語。こんなけ毎日変な言語を習得しているわけだから別に新しい言語を習得してもいいけれど、

やっぱり使い慣れるには時間もかかるし、他の言語で書いたコードが(Cからの移行は楽だろうけど)そのまま利用できないのはうれしくない。

・・・と考えていたのだが、ふと見つけたのがOSX 10.1以降はコンパイラでObjective-C++がサポートされている。

何かと思って調べてみると・・・C++とObjective-Cで相互にクラスを呼び出せるらしい!

ということは。だ。C++からObjective-Cで書かれたCocoaフレームワークを呼び出せる。簡単に言えば、C++でCocoaが使える!

まだちゃんと調べたわけじゃないけど、なんかそういうことらしいです。

でもちょっとネットを漁ると、制限がいろいろ多くて、複雑なことをやるといろいろあるようだ。

もうちょっと調べてみよう。