仕事でiOSのテストアプリのリファクタリングをあてがわれている。
そのアプリの中で、UITextFieldとUILabelが合わせて100個ほど設置されているUIViewControllがあり、それをソースで列挙して初期化する、というようなことをやっている箇所に出くわす。
インデント含めて150行ほどのソースを見て、頭がクラクラする。
これは何とかならんのか、と調べてみると、Outlet Collectionという、自分が欲しかったそのものズバリな機能があることを知る。
アウトレットコレクション(Outlet Collection)を利用する | calmscape://ソフトウェア開発部
コントロールをグループ化して配列にする、というもの。
以前から、Outlet Collectionという文は見かけていたのだが、こうやって使うのか・・・。
コードはほぼ10分の1になり、リファクタリングらしいリファクタリングができてスッキリするとともに、このような機能が準備されていたことに感動し、しばらく放心してしまう。
まだまだ勉強である。