Swift : スズキの自動車、オートバイも製造しているメーカ故N/Aで良く回りそう。。。ではなくPG言語らしくない紛らわしい名前です。Xcodeのメイン言語、C#/Javaより少しシンプルでちょっとVB6っぽい感じもします。やりたいことからコードの書き方の解説、ゼロからの解説WEB記事は多数ありますが、当方は他言語と違うとこだけ端的知りたい。それらをまとめてみました。
特別な記号や表現
変数の末尾の「 ? 」 | nullを許可するの意。非許可変数間で直接値は渡せないので要注意。 |
引数の前の「 _ 」 | 省略が可能な引数を示す。C++のようにデフォルト引数値があるのかは知らないです。 |
関数の「 ) 」に続く「->」 | リターン値の型。世界標準に反しています。C# の「=>」ように特殊なのかと思いましたがそうではなかった。 |
nil | NULL/nullの意。連想つきますがWEB検索すると他の用語が沢山でてきます。 |
@State | 値が変化するクラスメンバ変数 |
var | 変数宣言。これはなぜか普通。 |
let | 定数宣言。VB6のLetプロパティとは違う。 |
print()等への改行コード | MAC上で “¥n” では改行コードと扱われず、「\」のキー位置ほ探して「\n」を打つ必要がある。 |
Framework(?)
大きく2つあるようです。100%互換は無いようで、WEB記事を見るときはどちらで書いてあるか確認する必要があります。
SwiftUI | 最近のヤツらしい。 |
Swift Storyboard | シナリオっぽいネーミングなので部分機能かと勘違いしています。 |
コード構造(SwiftUI)
- まず画面クラスがStructで始まり困惑する。
- 行末の「 ; 」はない。
- 画面定義と処理部が混在する構造。
- Namespace はあるのかよくわからない。
- switch は defalut 無いとビルドエラーとなる。
- スクリプト言語っぽいが、文字列に数値を結合するときは明示的に変換( String(数値) )が必要。
- new は無い模様。
IDE
- まず GUIを選択するToolBox をどこから開くの分からない。画面エディタの少し離れた右上隅の小さな「+」をクリックするのですがこんなの分からない。 Visual Stduioも Adnroid Stduio もメニューや明らかに分かるアイコンが設置されている。あえて隠している?
- GUIのプロパティが全て表示されない。何のプロパティがあるか別で調べないといけない。
- 自動メンバ表示は一応ある。
- 標準のメソッドやプロパティのヘルプが素早く呼び出せない。マウスオーバしてもヒント的なものが表示されない。
- 日本語化されていない。
- vi modeが標準装備されている。VS for MACのプラグインは日本語入力が狂いますが、こちらは割と使えます。 たた基本操作程度で、 : コマンド などは未対応は多いです。
中々慣れを要します。随時更新中です。