January 17, 2017

UIViewControllerをstoryboardから生成する時のデメリットを緩和する

最近Storyboardの肩身が狭い感じになってきましたが、流石にautolayoutを全部コードで書くなんて苦行はしたくない…全て切り替えるには少しつらい。 そんな時にUIViewControllerをstoryboardから生成する場合のデメリットとそれを少し緩和する方法を書いてみます。 ちなみに自分はStoryboardは使うが遷移はSegueを使わない派です。 ... Read more

January 4, 2017

RxSwiftで`.map { _ in }` が面倒になったら

よくRxSwiftを使っていると、流れてきた値を使わずにVoidとして次に流す時なんかに、 map { _ in } と書くことがあります。 public var viewWillAppear: Observable<Void> { return sentMessage(#selector(UIViewController.viewWillAppear(_:))) .map { _ in } // { _ in () } や { _ in Void() } でも同様 .shareReplay(1) } ただ、これ毎回書くのも面倒になってきたり、ダサいなぁ…って思ってきたら、 // ※toplevelで定義すること // 明示的にVoidを返すと丁寧に定義した場合 public func void<T>(_: T) -> Void { return Void() } // 省略した場合 public func void<T>(_: T) {} toplevel関数として void を定義してあげて、 public var viewWillAppear: Observable<Void> { return sentMessage(#selector(UIViewController.viewWillAppear(_:))) .map(void) .shareReplay(1) } こんな感じで使ってあげるとちょっぴり幸せになれるかも。 ... Read more

January 3, 2017

2017年の目標

今年の12/31にこの1年がんばれたのか振り返ることができるように目標を立ててみました。 2016年よりもgithubに草を生やす 月4回はblog更新する(週1ペース) star1000以上のOSSにPRを出してmergeしてもらう githubのリポジトリのstar累計1000を超える 自転車一人旅をする 自分で作ってるアプリをストアに出す 月2回以上はゴールドジムに通って体つくりに励む 朝型生活にシフトする(重要) 出来る限り自炊して食費を抑える よし。

written by sgr-ksmt