おばんです、田中です。
インターンも残り二日となりました。
自分の担当する部分もラストスパートです。たぶん。なにもなければ。
今日はなかなかにもくもくと作業をしていたのですが、メンターの森田さんとライブラリについてなどお話をしました。
とりあえずAwesomeSwiftとTrendingSwiftRepositoriesは見ておくと勉強になるというアドバイスをいただきました。
AwesomeSwiftは文字通りすごいライブラリまとめみたいなものらしいです。
森田さんのSwiftyDropも載っているのでぜひ!
とりあえず仙台に帰ったらこのあたりを見ながら勉強します。
今日もまた以前と同じようにプロジェクトのちょっとコアな部分の修正をしていたのですが、その中で出てきた書き方に少し苦戦しました。
どこかというとクロージャを使ってクラス間で処理の移譲を行っているところでした。
クロージャを変数に入れてオブジェクト化し、別クラスのプロパティに渡してそのクラスの任意の場所でそのクロージャを発火させるという流れ。
これがどこで処理を保持していて呼び出しているのかが若干読みづらいかと思ったのですが、慣れると使えそうな考え方だなと思ったり。
なによりうまく書かれていたのが、その移譲するオブジェクトのメモリ管理。クロージャの内容が別クラスの方から元クラスで呼べるメソッドを呼び出すという中身で、オブジェクトの破棄に気を使わないといけないなと思ったけれど、自分が今まで知っていたdelegateやKVOによるメソッド呼び出しとはまた違うやり方が知れてとても面白かったです。
このあたりは特徴的だったのであとでまとめ直します。
0 件のコメント:
コメントを投稿