2014/06/26CoreFoundationを含めてiOSやOSXのAPIのほとんどはNSObjectのサブクラスとして提供されています。そのため新しい画面をSwiftで追加する場合にはUIViewControllerのサブクラスを作るしかありません。UIViewも同じですね。してもNSObjectとは切っても切れません。言い換えればObjective-Cのクラスとは切り離せません。いえ前回のコラムでも書きましたがSwiftは親クラスを持たないクラスを作成する事が出来ますので、プログラミング言語と実行環境(Framework)が分離出来たと言えると思います。その事はiOSやOSX以外の環境でももしかしたらSwiftが主流の開発言語になる可能性も否定出来ないって事だと思います。Objective-CのクラスをSwiftで使う方法です。標準のFrameworkを使うにはimport文でフレームワークを指定してやれば良いだけです。文を追加してやる必要があります。このファイルはObjective-CのプロジェクトにSwiftのソースを追加してやる時に自動的に作成されます。Objective-CのクラスをSwiftで使うための前準備はこれだけです。インスタンス化しかしSwiftとObjective-Cではクラスのインスタンス化の方法が違うので注意する必要があります。メソッドを呼び出す必要はありません。ObjectiveC-Class()これだけです。これだけでObjective-Cのクラスのallocやinitを自動的に呼び出してくれます。クラスによってはinitメソッドに引数を持たせているものもあります。標準Frameworkではそのようなinitメソッドは下記のようなフォーマットになっています。Objective-CのこのようなinitメソッドをSwiftから呼び出す場合には、withのあとの文字列をパラメータ名としたクラス・メソッドに置き換えてくれます。ObjectiveC-Class(param:parameter)iOSでViewを作るような場合で比較してみます。viewRect)これは自分で作ったクラスがWith〜が付いたinitメソッドを持っていても、自動的に変換されます。出てきたSwiftですので、今はやはり取っ付きにくい部分も多くあります。柔軟な開発言語だと思います。使いこなせるようになれば便利じゃないかと感じています。betaでしか使えません。beta版のXcodeでは製品をAppStoreに上げる事は出来ませんが、古いiOSに対応したアプリも作成できるようですので、是非習得しておきたいと思います。*Website上に表示された文字を入力してください。