ここ最近、Mac版の占星術ソフト開発のためswiftと格闘しているのですが。 これ厳しいですなあ。 何が厳しいかというと、以下3点。

swiftが3になった

先日XCodeがバージョンアップされ、swift3が出回りました。 が、インターネット上のソースコードは1か2しか基本ありません。 そのためswift3で動かなくなった部分もちらほら。

ObjectiveCのコードも混ざっている

これこれ、こういう機能はどう書けばいいんだっけ、と思ってみてみるとObjectiveCのコードだったりして、そのままswiftで書いても動かない。 これもなかなかに困らせてくれる。 書き方がぜんぜん違うわけじゃないから検索しづらいんですよねえ。

iOSばかりでMacOS用の書き方が無い

だいたい同じで書けるっぽいのですが、UIKitとかOSXでは使えないため、UIBezierPathとかUI系関数が使えない。 そのためNS系関数で書かないといけないです。 しかしあっちを見てもこっちを見てもiOS用のサンプルコードばかりで、非常にしんどい。

書籍もない

書籍で出ているものはやっぱりiOSばかりだし、古いバージョンのswiftで書かれていたり。 そのままじゃ動かなかったりするコードも多い。

というわけで

もう数年すれば安定してくるとは思うものの、これからswiftをやろうという人は気をつけないとしんどい目にあいますよ。 やっぱりxamarinで書くべきだったかなあ。 とりあえず最初のバージョンはこのまま突き進んで、早めに移植させたほうがいいかもしれないですな。 xamarinでMacOSもやったことないから戸惑う可能性はあるけど、C#は好きな言語だし。