絶品ゆどうふのタレ

ふと気づいたことを綴るだけのメモ

Kyobashi.swift #1 参加したメモ

http://kyobashi-swift.connpass.com/event/23712/

第1回めだったので、雰囲気も含めてメモメモ

まとめ

  • おにくおいしいです。 リクルートマーケティングパートナーズ さん++
  • 会場が大変にしゃれおつ!
  • drinkup的に、お酒飲みながら。ゆるふわ。
  • みんな軽いLTな感じで、ハードルの上がっている昨今では発表しやすいかも。

以下、聞きながらとったメモ。スライドは上のイベントページを参照のこと


既存プロジェクトにSwiftLintを導入した話

  • Githubが公開してるSwiftのコーディングスタイルガイドに沿っているかチェックしてくれる
  • 導入するのは簡単

  • 今回はチームでいかに導入したかの話

    • チームで合意形成、まずはdisableにしてから徐々に。
    • auto-correctがそこそこやってくれる

ExtraView

  • StoryboardのViewControllerの外側に作れるViewのこと

    • View単体で作れる
  • たとえば: SectionHeader

    • コードで作ったり
    • xibで作ったり
    • やりづらい
  • せっかくならすべての要素を1つのStoryboardで管理したい
    • 整理がついてイメージが作りやすいので、めっちゃ便利

ReSwift

OSSから学ぶSwift実践テクニック

  • Alamofire
    • URLStringConvertible
      • String風に見えるけどじつは違う
      • NSURLでもStringでもなんでも渡せる型
    • extensionをつかってProtocol毎にグルーピングして書くとわかりやすい
    • メソッドチェーンでリクエストを使いやすく
      • 大量のオプションでも見やすく書ける

Nearby Messages API

  • Wifi, BLE, 超音波などで近距離通信できる
  • 100kB以内のデータをやり取りできる
    • (超音波使うのはトークンの交換ぐらいっぽい)

NSError

  • Swift 2.0から導入された新しいエラーハンドリング方式
    • Exceptiionてきなもの
  • Cocoaフレームワーク内のエラーもどんどんこれに置き換わっている

  • NSErrorに存在した詳細なエラー情報がない

  • 定義は空っぽ

  • FriendlyErrorType

  • NSErrorとの共存

DI in Swift

  • DIとは

  • 依存オブジェクトをコンストラクタから差し込む

  • 配線の問題

    • 何かのオブジェクトがほしい時、依存するインスタンスも作らなければいけない
  • Swinject

    • 動的DI
  • Swiftにおける静的なDI
    • Cake Patternっぽいものを使ったDI
    • Protocol Extensionを使ってやってる
    • 読むのはややこしくなる。。。