Page 2
自己紹介
• @mo_to_44
• 株式会社ネクストで HOME’Sという 不動産検索アプリのiOSエンジニアをやっています
Page 3
個人でもアプリ作ってます
リボカメ - Revolver Camera
• リボルバーを模したUI
• フィルターをリアルタイムで切り替え、確認できる
• Apple Watch対応
Page 4
swift-evolutionhttps://github.com/apple/swift-evolution
Page 5
Swift 3.0 proposal
• https://github.com/apple/swift-evolution/tree/master/proposals から見ることができる
• 0004 と 0007 が気になった
Page 6
0004: Remove the ++ and -- operatorsStatus: Accepted
Page 7
0007: Remove C-style for-loops with conditions and incrementers
Status: Under review (December 7, 2015 -- December 10, 2015)
Page 11
0007: Remove C-style for-loops with conditions and incrementers
Status: Accepted
Page 15
あんまりない😜for-in, forEach, map, filter よりどりみどり
Page 16
Swift Advent Calendar 2015 2日目にまとめましたhttp://qiita.com/mo_to_44/items/cf83b22cb34921580a52
Page 17
ちょっと困りそうなこと
• 配列内の要素のindexを取得したい
• indexが奇数の要素だけ取得したい などなど
などなど、indexによってデータを取得、更新したり、indexが配列を操作する際に重要な場合
Page 18
indexが奇数の要素だけ取得
1. 空の配列 newArray を用意 2. for-inで各要素のindexを取得 3. indexが奇数の要素を newArray に追加
Page 22
enumerate
• SequenceType Protocolに定義されている
• indexと要素のペア(タプル)の配列を取得することができる
Page 23
indexが奇数の要素だけ取得enumerate使用版
1. 空の配列 newArray を用意 2. enumerateを使用し、indexと要素のタプルの配列のfor-inを回す
3. indexが奇数の要素を newArray に追加
Page 25
indexが奇数の要素だけ取得enumerate使って1行に
1. enumerateを使用し、indexが奇数のタプルをfilterで絞り込み
2. mapで要素のみを取り出す
Page 26
(index, element)$0.0 $0.1
タプルの要素へのアクセス
Page 27
indexが奇数の要素だけ取得enumerate使って1行に
1. enumerateを使用し、indexが奇数のタプルをfilterで絞り込み
2. mapで要素のみを取り出す
Page 30
enumerate• SequenceTypeのExtensionで定義されている
• index と 要素のペア(タプル)の配列を取得できる
Page 31
Swift 3.0• ++ と -- がなくなる
• C言語スタイルのfor文がなくなる
Page 32
Swift 3.0に向けて• C言語スタイルのfor文ではなく、enumerateを積極的に使っていく
• 同様に ++ や -- も使わないようにする
• swift-evolution/proposal に目を通して、なくなるかもしれない文法はなるべく使わないようにする