Optionalやnilのこと

そろそろApple Watchの姿もうっすらと見えはじめたか?本日、開発キット「WatchKit」の提供がはじまった。

そんなこんなで、飼主、只今OS Yosemite環境下、Xcode6.1でSwiftのお勉強中。

で、いきなり躓いているのがどうやら「nil」の扱い。Objective-Cではほとんど意識しなかったのだが(というより、飼主の気がそこまで回らない)、Swiftではnilの扱いが厳密になっているようだ。

ここまでの理解だと、nil=「カラ」はダメのようで、変数が空の可能性を「!」や「?」でその取り扱いを明示しなければいけないようなのだね・・・

これを「Optional」などと云うようなのだが、概念的にその雰囲気を理解出来てもコード上にどう記述していけば良いのか、すっきりと理解出来ないのがいつもの飼主。

例えばパラパラアニメを作りたくてとりあえず画像要素の配列をつくってみる。

var imgArray = [

  UIImage(named: “01.png”),

  UIImage(named: “02.png”),

  UIImage(named: “03.png”),

  UIImage(named: “04.png”)

]

これじゃダメで「‘UIImage?’ is not identical to ‘AnyObject’」なんて云われてしまう。

で、配列の中身は「UIImage」クラスで、決して空(=nil)じゃないですよッて「!」ッて云ってやらなくてはいけない。

[UIImage!]ッてね・・・。

var imgArray:[UIImage!] = [

  UIImage(named: “01.png”),

  UIImage(named: “02.png”),

  UIImage(named: “03.png”),

  UIImage(named: “04.png”)

]

Swiftへの道は山あり壁ありだな・・・。

分厚い壁、高い山

青空の広がった本日の金沢方面、朝一番は少しだけ路面が濡れていたものの玄関を出た勢いでフルコースのお散歩、それから徒歩出勤と順調な午前中。

で、一方の飼主、眼前に立ちはだかる壁、できる限りの情報収集とトライ・アンド・エラーの繰り返しで、自力ではどうにもならない現状の確認。

紆余曲折、山あり谷ありの飼主。

さてどうしたものか・・・。

IMG_0387

IMG_0388

IMG_0389

IMG_0392

IMG_0396

IMG_0395

ボス殿ようやく止めに入ります、が・・・
ボス殿ようやく止めに入ります、が・・・

リズム感

青空からご無沙汰の金沢方面、今朝も明け方まで雨が残っていたようで、朝のお散歩はお預けの我家のスリーボロズ、出勤もマイカー通勤、ただ、その後のソラモヨウ、回復とはいかないが、なんとか踏みとどまって今までのところ雨は落ちてこない。

運が良ければ帰りは徒歩帰宅だな・・・。

そんなこんなで、毎日の生活のリズムもイマイチテンポの悪い昨日今日、だからと云うわけでは決してないのだが、飼主のSwift乗り換えプロジェクトもほんの取っ掛かりのところでドテッと躓いてすっ転んだまま、まだ立ち上がれていない状況。

Objective-Cに対して「スッゲーカンタン!!」になったなんて云われてるSwiftだけど、ネット上にシロート向けの情報が少な過ぎる只今、こうなってくるとネックは飼主の英語読解力か・・・?

IMG_0378

IMG_0379

本日も何となくどで〜ッとやり過ごす我家のスリーボロズは飼主の映し鏡・・・?
本日も何となくどで〜ッとやり過ごす我家のスリーボロズは飼主の映し鏡・・・?

早朝出勤

なんとなく乾いた路面を確認して、さてと、朝のお散歩ッと出かけたまでは良かったのだが・・・。

途中で雨!!

あちゃッちゃ〜・・・・

と云うことで、お散歩コースをかすめるお仕事場に緊急避難、なので、我家のスリーボロズ、今朝は7時前からのご出勤と云うことになりましたとさ。

ご苦労様です・・・。

本日早出の我家の重役
本日早出の我家の重役、ご機嫌斜め・・・?