情報系人間のブログ

プログラミング、開発に関することを書いていきます。

名言アドベントカレンダー

名言アドベントカレンダー23日目の記事です。

紹介する名言はこちらです。

Twitterなのでダルビッシュ選手は軽い気持ちで投稿したかもしれません。
ですが非常に重い言葉だと思います。

ただ長時間やる事が目的の練習や疲れて練習した感がでるだけの練習(スポーツの場合の脳筋的な?)ではなく何が目的でなぜこの練習をするのか、何を意識しながら練習すれば良いのかを考えてやろうという事でしょうか。

「努力は嘘をつかない」や「努力は必ず報われる」といった努力論とダルビッシュ選手の努力論。
どうなんですかねぇ。

EventSearch

EventSearchはイベントを検索できるアプリです。
以下の4つのサービスに対応しています。

  • connpass
  • Doorkeeper
  • ATND
  • Zusaar

機能

  • キーワード、日付検索
  • イベントストック
  • イベント開催地表示

使い方

画面上部のEventSearchボタンをタップすると検索することができます。

f:id:reida:20151213202407p:plain

検索結果をロングタップするとストックすることができます。

f:id:reida:20151213202526p:plain

検索するサービスを選択可能です。

f:id:reida:20151213202527p:plain

その他

指定された日付から一年後までのイベントが検索結果として表示されます。
それ以降を検索したい場合は検索条件の日付欄でに知りたい日付の一年前以降を設定し検索してださい。

MKMapViewでバルーン(callout)を最初から表示する

MKMapViewでバルーン(callout)を最初から表示する方法です。
MKMapViewのデリゲートメソッド

mapView(_:didAddAnnotationViews:)

内で追加したannotationのcalloutを表示するだけです。例では最後に追加したMKAnnotationViewのannotationのcalloutを表示しています。

func mapView(mapView: MKMapView, didAddAnnotationViews views: [MKAnnotationView]) {
    if let annotation = views.last?.annotation {
        mapView.selectAnnotation(annotation, animated: true)
    }
}

Rxの関数を図で見る

ReactiveProgrammingを導入するためにはmap,filter等の様々な関数を理解する必要があるのでコストが高いです。
それぞれの関数がどういった動作をするのかはまずは公式をみるべしです。

ReactiveX - Operators

こちらのサイトでは公式の図にあるObservableを自分で動かす事ができます。
少し理解しやすくなっていると思います。なによりおもしろい。rxmarbles.com