最初Xamarinで頑張ろうとしたけどMACが必須と分かって有難味がなくなり、素直にSwiftでアプリを作ることにした。幸い、先輩から古いMACを借りれたので、OSを最新?(Sierra)に上げてXcodeを入れて簡単なアプリを作ってみた。新しいIDE上でのアプリ開発を勉強するには、IDEの操作も併記されたアプリ開発の解説本を買って、本の通りに作る方が理解も進むので、Amazonでの評価も高いYahoo黒帯本を買って試作した。

本気ではじめるiPhoneアプリ作り Xcode 8.x+Swift 3.x対応 (ヤフー黒帯シリーズ)
- 作者: 西磨翁
- 出版社/メーカー: SBクリエイティブ
- 発売日: 2016/12/10
- メディア: 単行本
- この商品を含むブログ (2件) を見る

Swift言語は設計が新しいので、比較的理解しやすいと思うのですが、、ハマリ処の、Optional型、ラップとアンラップ、!と?の違いがよく分からず、、細かい仕様を理解するには、CUIであれこれ実行するのがすぐに反応得られて理解が進む。というわけで、、CUIで対話的にSwiftを動かせるようにUbuntu環境にもSwiftを入れた。
https://swift.org/download/#releases
wget https://swift.org/builds/swift-3.1.1-release/ubuntu1604/swift-3.1.1-RELEASE/swift-3.1.1-RELEASE-ubuntu16.04.tar.gz
正しいインストールは./configureとかで入れているのだろうけど、展開しただけでも動くので、とりあえず展開した場所で./swiftで使ってみることにした。
パーミッションの関係で、素で走らせると、下記のようなエラーが出る
error: Couldn't IRGen expression, no additional error
swiftの環境は勉強のための暫定インストールなので、、root権限で逃げしまう。
ubuntu:~$ sudo /usr/local/swift-3.1.1-RELEASE-ubuntu16.04/usr/bin/swift Welcome to Swift version 3.1.1 (swift-3.1.1-RELEASE). Type :help for assistance. 1> print("hello") hello 2>
多分この記事をじっくり読んで自分でも試せば理解できるはず。。
http://qiita.com/maiki055/items/b24378a3707bd35a31a8
Qiita「どこよりも分かりやすいSwiftの"?"と"!"」maiki055様
あるいは、、Swiftの言語仕様に特化した解説本を読んでみるか。。

Swift実践入門 ── 直感的な文法と安全性を兼ね備えた言語 (WEB+DB PRESS plus)
- 作者: 石川洋資,西山勇世
- 出版社/メーカー: 技術評論社
- 発売日: 2017/02/07
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (4件) を見る
そもそもなぜiPhoneアプリなのか??何を作るのか??
ー>これまでAndroidだったけど、今回iPhoneに乗り換えたから。で、、作りたいのはEchonetLiteの勉強を兼ねて、外から家の家電を操作できる俺HEMSアプリとか。。まあ、、家電のOn/Offぐらいなら、サーバサイドのアプリでGUIとしても十分では?という気もするけど。
これまでSwiftなんて関係ないやと思っていたけど、こうやって使うことになるとは。。先の事は分からいもの。。シミジミ