iOS開発ツールのXcodeの使い方やiPhone開発についての学習メモ

新しいプログラミング言語「swift」を使ってiOS開発をしていくことになったので学習メモを残しておきます。

・よく出てくる「NS」はNextSTEPの略称。スティーブ・ジョブズがAppleの他に立ち上げたNeXT社が開発したOSの名前がNextSTEPでその名残りらしい

・シミュレーターの日本語表記を直すには、Edit scheme→Run→Arguments Passed On Launchに、-AppleLanguages (ja) と登録すればOK

・command + R でシミュレーター起動

・シミュレーターの向きを変えたりするにはメニューのHardwareから。ショートカットキーを覚えると捗る

・optionキーを押しながらクリックで日本指でのジェスチャができる

・command + 数字で画面左のナビゲータのメニューを変更できる。command + 0でナビゲータを非表示

・ストーリーボードはダブルクリックで画面の拡大縮小ができるので全体の把握に便利

・ストーリーボードで配置物の位置を調節したりすることを「制約をつける」というらしい

・何か変更を加えた際は右下のアイコンの「Update Frames」をしないと正確なプレビューができない

・ボタンは自動でサイズが決まるので縦横サイズ未入力でもOK

・画面遷移はButtonからControlキーを押しながらドラッグして遷移先のViewController上で離せばOK(セグエというらしい)

・画面遷移の考え方としては「行き」は上記でOKだが、元の画面に「戻る」場合は、現在画面を落とす、という考え方

・Webのようにすべての画面が存在して行き来するのではなく、遷移のたびに作っては削除、という流れと推察

・「戻る」場合は、それ用の関数を先に作り、作業領域上部の「Exitボタン」までControlキーを押しながらドラッグして関連付けする

・NavigationControllerを使うと画面上部に「Back」のように自動で戻るボタンを追加してくれる(最初の画面をクリックしてからじゃないとおかしくなった)

・commandキーを押しながらプロパティやメソッドをクリックすると宣言元へ飛べる

・メソッドは第一引数以外は外部引数名と内部引数名が一致することが条件。これは文章としてコードを見た時に英語の文法に近くなって可読性があがるから

・Swiftでは他言語のように定数でも大文字にはせずに小文字のまま書く

・クラスは多言語と同じく慣習に従って頭を大文字にする

・なぜクラスからインスタンスを生成する際にvar taiyaki = Taiyaki()のように関数実行のように()がつくかというと、実行時にイニシャライザと呼ばれる関数が実行されるから

・UI部品間の関連づけを取る簡単な方法は、一方をcontrolキーを押しながらもう一方にドラッグ&ドロップすると配置についてのメニューが表示される

・IBOutletやIBActionのIBは「Interface builder」の略

・optionキーを押しながらクラス名をダブルクリックでクラスの定義情報

・optionalとは、よくあるフォームの「必須項目でないもの」を明示する仕組みだと思えば良い。日本だと必須項目に印をよくつけるが、逆にオプション項目に印をつける作業がoptionalで、こうすることで何も無い状態を許容=nilが使えるようになる。

・optional型 = nilを取り得る型 と理解して良い

・extensionを利用して実装されていないプロパティやメソッドを追加(例:UISliderの左だけでなく右に残り時間を表示したい場合はremainingValueみたいなそういうプロパティをextensionで追加)

・command + クリック、option + クリック、option + ダブルクリックで各種機能

・列挙型とは予め要素数がわかっている定数の集合のこと