Swift / Xcode playground

今一番ホットなプログラム言語といえば、Swiftではないでしょうか。iPhone,Macの開発言語として、従来のObjective-Cに変わるものです。
現在Swiftは、iPhoneの開発で使っていますが、先日Swift 1.2 / Xcode 6.3にバージョンアップされたので、テストしてみました。

環境 : Playground / Xcode 6.3 / Mac OSX 10.10.3
Playgourndとは、Swiftをリアルタイムに記述・実行できる開発環境で、結果を数値・グラフで表示できます。データの表示だけでもいろいろと使えそうです。
(従来のObjective-Cにはありませんでした)
swift01

これまでと違うところは、グラフがAssistant Editorの別枠ではなく、Swiftを記述する部分に表示されるようになりました。(Mathematicaとか、DrRacketのような感じになりました) 最新OSのYosemiteが必要なのでバージョンアップしましたが、そのためフラットデザインになっています。
また型チェックが厳しくなり、従来のコードがエラーを出すことがあります。

プログラムは、Swiftの最大の特徴ともいえるOptionalのテストも兼ね、平方根の計算結果のグラフ表示をしました。
一つ目は、通常の方法(マイナスのルートはNaNとなる)、二つ目はマイナスの平方根の場合はnilを返すようにしたものです。 Dobule? というのが通常のDobuleとnilの両方をもつことができる型です。
最後は、Optionalのシンプルな例を記述しました。d:Int? = 3 で、3がラップされており、d!でアンラップされるという特徴がわかります。

参考 : http://qiita.com/koher/items/c6f446bad54442a28bf4

このサイトで詳しく述べられていますが、Union Typeと呼ばれる新しい概念として考えるとOptionalも理解しやすいです。
効果は、コンパイル時にエラーをより多く発見できることでしようか。

このSwift言語、最新の関数型言語の特徴を大きく取り入れたいるにもかかわらず、C言語のポインタも使えるという、時代を大きく跨いでいる仕様になっています。
これは過去の資産をリンクしやすいことを意味します。それだけにMacにとどまらず、他のプラットホームにも展開を期待したいです。

You’re learning Swift anyway.
http://elementscompiler.com/elements/silver/

About

Categories: 未分類 タグ: