Enviar pesquisa
Carregar
Swift3.0に向けて enumerateを使い始めよう
•
12 gostaram
•
8,281 visualizações
Motoki Narita
Seguir
shibuya.swift #2 での発表内容 http://shibuya-swift.connpass.com/event/21979/
Leia menos
Leia mais
Celular
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 33
Baixar agora
Baixar para ler offline
Recomendados
Enumerate
Enumerate
Motoki Narita
What's new Swift3
What's new Swift3
toyship
Dynamic frameworks tips
Dynamic frameworks tips
Syo Ikeda
Xcode and iTC submission topics
Xcode and iTC submission topics
Syo Ikeda
iOS豆知識ver0.0.5
iOS豆知識ver0.0.5
ppengotsu Name
Custom lintcheckをつくろう
Custom lintcheckをつくろう
Makoto Yamazaki
プログラミング初心者の壁の越え方
プログラミング初心者の壁の越え方
Yuichi Kato
Swift API Design Guidelines (dec 3, 2015)
Swift API Design Guidelines (dec 3, 2015)
Goichi Hirakawa
Recomendados
Enumerate
Enumerate
Motoki Narita
What's new Swift3
What's new Swift3
toyship
Dynamic frameworks tips
Dynamic frameworks tips
Syo Ikeda
Xcode and iTC submission topics
Xcode and iTC submission topics
Syo Ikeda
iOS豆知識ver0.0.5
iOS豆知識ver0.0.5
ppengotsu Name
Custom lintcheckをつくろう
Custom lintcheckをつくろう
Makoto Yamazaki
プログラミング初心者の壁の越え方
プログラミング初心者の壁の越え方
Yuichi Kato
Swift API Design Guidelines (dec 3, 2015)
Swift API Design Guidelines (dec 3, 2015)
Goichi Hirakawa
SwiftにおけるClassとStructの使い分け
SwiftにおけるClassとStructの使い分け
Kazunobu Tasaka
Applicative Functors in Swift
Applicative Functors in Swift
Kazuhiro Sakamoto
Type safety WCSession
Type safety WCSession
Motoki Narita
Objective-CからSwiftへの移行講座
Objective-CからSwiftへの移行講座
teencoders
図書館総合展ネクスト主催フォーラム「アカデミックとリアルの谷を埋める道」基調講演 2011年11月11日
図書館総合展ネクスト主催フォーラム「アカデミックとリアルの谷を埋める道」基調講演 2011年11月11日
Yoji Kiyota
学際領域としての不動産の研究を活性化させるために
学際領域としての不動産の研究を活性化させるために
Yoji Kiyota
Internet Explorer 11 の F12 開発者ツール
Internet Explorer 11 の F12 開発者ツール
Yoshihisa Ozaki
エンタープライズでもできるアジャイル開発
エンタープライズでもできるアジャイル開発
Yoshiyuki Ueda
Sprite kitでの横スクロールジャンプ アクションゲーム開発
Sprite kitでの横スクロールジャンプ アクションゲーム開発
studioshin
正しいプログラミング言語の覚え方
正しいプログラミング言語の覚え方
Kimikazu Kato
スクラム開発について
スクラム開発について
Akio Terayama
アジャイルサムライ~Pythonista道場 #PyLadiesTokyo 1周年記念パーティー 2015/10/24
アジャイルサムライ~Pythonista道場 #PyLadiesTokyo 1周年記念パーティー 2015/10/24
Shinichi Nakagawa
Are you ready? ~これからアジャイル開発をスタートアップするために プラクティスの実践と実感~
Are you ready? ~これからアジャイル開発をスタートアップするために プラクティスの実践と実感~
Akira Ikeda
テクニカルクリエイターの憂鬱
テクニカルクリエイターの憂鬱
Keisuke Imura
Xamarin 概要 @ 「Xamarin」って何? Wエバンジェリストによる特濃「Xamarin」勉強会 Rev2
Xamarin 概要 @ 「Xamarin」って何? Wエバンジェリストによる特濃「Xamarin」勉強会 Rev2
Yoshito Tabuchi
デザイナーがXcodeを使って 開発効率をUPさせた 5つのエピソード + 現場エンジニアのコメント付き
デザイナーがXcodeを使って 開発効率をUPさせた 5つのエピソード + 現場エンジニアのコメント付き
Mayumi Narisawa
強くなるためのプログラミング -プログラミングに関する様々なコンテストとそのはじめ方-#pyconjp
強くなるためのプログラミング -プログラミングに関する様々なコンテストとそのはじめ方-#pyconjp
cocodrips
俺も エクストリームプログラミング入門
俺も エクストリームプログラミング入門
Fumihiko Kinoshita
DMBOKをベースにしたデータマネジメント
DMBOKをベースにしたデータマネジメント
Kent Ishizawa
TLS 1.3 と 0-RTT のこわ〜い話
TLS 1.3 と 0-RTT のこわ〜い話
Kazuho Oku
Nullabilityについて
Nullabilityについて
ishikawa akira
Objective-Cプログラマのためのswift導入法
Objective-Cプログラマのためのswift導入法
Tomoki Hasegawa
Mais conteúdo relacionado
Destaque
SwiftにおけるClassとStructの使い分け
SwiftにおけるClassとStructの使い分け
Kazunobu Tasaka
Applicative Functors in Swift
Applicative Functors in Swift
Kazuhiro Sakamoto
Type safety WCSession
Type safety WCSession
Motoki Narita
Objective-CからSwiftへの移行講座
Objective-CからSwiftへの移行講座
teencoders
図書館総合展ネクスト主催フォーラム「アカデミックとリアルの谷を埋める道」基調講演 2011年11月11日
図書館総合展ネクスト主催フォーラム「アカデミックとリアルの谷を埋める道」基調講演 2011年11月11日
Yoji Kiyota
学際領域としての不動産の研究を活性化させるために
学際領域としての不動産の研究を活性化させるために
Yoji Kiyota
Internet Explorer 11 の F12 開発者ツール
Internet Explorer 11 の F12 開発者ツール
Yoshihisa Ozaki
エンタープライズでもできるアジャイル開発
エンタープライズでもできるアジャイル開発
Yoshiyuki Ueda
Sprite kitでの横スクロールジャンプ アクションゲーム開発
Sprite kitでの横スクロールジャンプ アクションゲーム開発
studioshin
正しいプログラミング言語の覚え方
正しいプログラミング言語の覚え方
Kimikazu Kato
スクラム開発について
スクラム開発について
Akio Terayama
アジャイルサムライ~Pythonista道場 #PyLadiesTokyo 1周年記念パーティー 2015/10/24
アジャイルサムライ~Pythonista道場 #PyLadiesTokyo 1周年記念パーティー 2015/10/24
Shinichi Nakagawa
Are you ready? ~これからアジャイル開発をスタートアップするために プラクティスの実践と実感~
Are you ready? ~これからアジャイル開発をスタートアップするために プラクティスの実践と実感~
Akira Ikeda
テクニカルクリエイターの憂鬱
テクニカルクリエイターの憂鬱
Keisuke Imura
Xamarin 概要 @ 「Xamarin」って何? Wエバンジェリストによる特濃「Xamarin」勉強会 Rev2
Xamarin 概要 @ 「Xamarin」って何? Wエバンジェリストによる特濃「Xamarin」勉強会 Rev2
Yoshito Tabuchi
デザイナーがXcodeを使って 開発効率をUPさせた 5つのエピソード + 現場エンジニアのコメント付き
デザイナーがXcodeを使って 開発効率をUPさせた 5つのエピソード + 現場エンジニアのコメント付き
Mayumi Narisawa
強くなるためのプログラミング -プログラミングに関する様々なコンテストとそのはじめ方-#pyconjp
強くなるためのプログラミング -プログラミングに関する様々なコンテストとそのはじめ方-#pyconjp
cocodrips
俺も エクストリームプログラミング入門
俺も エクストリームプログラミング入門
Fumihiko Kinoshita
DMBOKをベースにしたデータマネジメント
DMBOKをベースにしたデータマネジメント
Kent Ishizawa
TLS 1.3 と 0-RTT のこわ〜い話
TLS 1.3 と 0-RTT のこわ〜い話
Kazuho Oku
Destaque
(20)
SwiftにおけるClassとStructの使い分け
SwiftにおけるClassとStructの使い分け
Applicative Functors in Swift
Applicative Functors in Swift
Type safety WCSession
Type safety WCSession
Objective-CからSwiftへの移行講座
Objective-CからSwiftへの移行講座
図書館総合展ネクスト主催フォーラム「アカデミックとリアルの谷を埋める道」基調講演 2011年11月11日
図書館総合展ネクスト主催フォーラム「アカデミックとリアルの谷を埋める道」基調講演 2011年11月11日
学際領域としての不動産の研究を活性化させるために
学際領域としての不動産の研究を活性化させるために
Internet Explorer 11 の F12 開発者ツール
Internet Explorer 11 の F12 開発者ツール
エンタープライズでもできるアジャイル開発
エンタープライズでもできるアジャイル開発
Sprite kitでの横スクロールジャンプ アクションゲーム開発
Sprite kitでの横スクロールジャンプ アクションゲーム開発
正しいプログラミング言語の覚え方
正しいプログラミング言語の覚え方
スクラム開発について
スクラム開発について
アジャイルサムライ~Pythonista道場 #PyLadiesTokyo 1周年記念パーティー 2015/10/24
アジャイルサムライ~Pythonista道場 #PyLadiesTokyo 1周年記念パーティー 2015/10/24
Are you ready? ~これからアジャイル開発をスタートアップするために プラクティスの実践と実感~
Are you ready? ~これからアジャイル開発をスタートアップするために プラクティスの実践と実感~
テクニカルクリエイターの憂鬱
テクニカルクリエイターの憂鬱
Xamarin 概要 @ 「Xamarin」って何? Wエバンジェリストによる特濃「Xamarin」勉強会 Rev2
Xamarin 概要 @ 「Xamarin」って何? Wエバンジェリストによる特濃「Xamarin」勉強会 Rev2
デザイナーがXcodeを使って 開発効率をUPさせた 5つのエピソード + 現場エンジニアのコメント付き
デザイナーがXcodeを使って 開発効率をUPさせた 5つのエピソード + 現場エンジニアのコメント付き
強くなるためのプログラミング -プログラミングに関する様々なコンテストとそのはじめ方-#pyconjp
強くなるためのプログラミング -プログラミングに関する様々なコンテストとそのはじめ方-#pyconjp
俺も エクストリームプログラミング入門
俺も エクストリームプログラミング入門
DMBOKをベースにしたデータマネジメント
DMBOKをベースにしたデータマネジメント
TLS 1.3 と 0-RTT のこわ〜い話
TLS 1.3 と 0-RTT のこわ〜い話
Semelhante a Swift3.0に向けて enumerateを使い始めよう
Nullabilityについて
Nullabilityについて
ishikawa akira
Objective-Cプログラマのためのswift導入法
Objective-Cプログラマのためのswift導入法
Tomoki Hasegawa
JavaScript on GitHub (#kyotojs)
JavaScript on GitHub (#kyotojs)
y_uuki
WatchKitを実際にさわってみてわかったこと
WatchKitを実際にさわってみてわかったこと
Shuichi Tsutsumi
JavaScript使いのためのTypeScript実践入門
JavaScript使いのためのTypeScript実践入門
Shumpei Shiraishi
How to improve Type-safety in your Objective-C code
How to improve Type-safety in your Objective-C code
Chiharu Nameki
Openshift 20191121
Openshift 20191121
Yasushi Osonoi
pythonでつくるiPhoneアプリ
pythonでつくるiPhoneアプリ
Kazufumi Ohkawa
Fun tech14-alibaba cloud api gateway-swagger
Fun tech14-alibaba cloud api gateway-swagger
AnzaiKumiko
OpenCV 3.0 on iOS
OpenCV 3.0 on iOS
Shuichi Tsutsumi
こだわりのkintone
こだわりのkintone
Yusuke Amano
Klabの梅雨対策
Klabの梅雨対策
Hideyuki TAKEI
既存Objective-CプロジェクトをSwiftに移行した時ハマったこと
既存Objective-CプロジェクトをSwiftに移行した時ハマったこと
apuruni
あじゅーるのつかいかた:WebAPI+Azure->UWP
あじゅーるのつかいかた:WebAPI+Azure->UWP
c-mitsuba
Openshift 20191216
Openshift 20191216
Yasushi Osonoi
ポストJenkins時代のCI戦略
ポストJenkins時代のCI戦略
Hiroshi Maekawa
ポストJenkins時代のCI戦略
ポストJenkins時代のCI戦略
GuildWorks
クラウドセキュリティ基礎 #seccamp
クラウドセキュリティ基礎 #seccamp
Masahiro NAKAYAMA
Twitter API
Twitter API
Hiroshi Tsujimura
自作アプリを Apple Watch対応した話 〜FastCheckin編〜
自作アプリを Apple Watch対応した話 〜FastCheckin編〜
Kosuke Ogawa
Semelhante a Swift3.0に向けて enumerateを使い始めよう
(20)
Nullabilityについて
Nullabilityについて
Objective-Cプログラマのためのswift導入法
Objective-Cプログラマのためのswift導入法
JavaScript on GitHub (#kyotojs)
JavaScript on GitHub (#kyotojs)
WatchKitを実際にさわってみてわかったこと
WatchKitを実際にさわってみてわかったこと
JavaScript使いのためのTypeScript実践入門
JavaScript使いのためのTypeScript実践入門
How to improve Type-safety in your Objective-C code
How to improve Type-safety in your Objective-C code
Openshift 20191121
Openshift 20191121
pythonでつくるiPhoneアプリ
pythonでつくるiPhoneアプリ
Fun tech14-alibaba cloud api gateway-swagger
Fun tech14-alibaba cloud api gateway-swagger
OpenCV 3.0 on iOS
OpenCV 3.0 on iOS
こだわりのkintone
こだわりのkintone
Klabの梅雨対策
Klabの梅雨対策
既存Objective-CプロジェクトをSwiftに移行した時ハマったこと
既存Objective-CプロジェクトをSwiftに移行した時ハマったこと
あじゅーるのつかいかた:WebAPI+Azure->UWP
あじゅーるのつかいかた:WebAPI+Azure->UWP
Openshift 20191216
Openshift 20191216
ポストJenkins時代のCI戦略
ポストJenkins時代のCI戦略
ポストJenkins時代のCI戦略
ポストJenkins時代のCI戦略
クラウドセキュリティ基礎 #seccamp
クラウドセキュリティ基礎 #seccamp
Twitter API
Twitter API
自作アプリを Apple Watch対応した話 〜FastCheckin編〜
自作アプリを Apple Watch対応した話 〜FastCheckin編〜
Mais de Motoki Narita
NullabilityとジェネリクスでswiftからObjective-Cのコードを使いやすくする
NullabilityとジェネリクスでswiftからObjective-Cのコードを使いやすくする
Motoki Narita
できることから始めるOss活動
できることから始めるOss活動
Motoki Narita
About Swift-Clean
About Swift-Clean
Motoki Narita
Swift bondさわってみた
Swift bondさわってみた
Motoki Narita
watchOS2 tips
watchOS2 tips
Motoki Narita
個人で開発したアプリがベスト新着に選ばれた話
個人で開発したアプリがベスト新着に選ばれた話
Motoki Narita
Xcode tips
Xcode tips
Motoki Narita
watchOS1 to watchOS2
watchOS1 to watchOS2
Motoki Narita
Complication
Complication
Motoki Narita
Watch connectivity
Watch connectivity
Motoki Narita
Optionalの使い方 第1回 Swift勉強会@ネクスト
Optionalの使い方 第1回 Swift勉強会@ネクスト
Motoki Narita
Mais de Motoki Narita
(11)
NullabilityとジェネリクスでswiftからObjective-Cのコードを使いやすくする
NullabilityとジェネリクスでswiftからObjective-Cのコードを使いやすくする
できることから始めるOss活動
できることから始めるOss活動
About Swift-Clean
About Swift-Clean
Swift bondさわってみた
Swift bondさわってみた
watchOS2 tips
watchOS2 tips
個人で開発したアプリがベスト新着に選ばれた話
個人で開発したアプリがベスト新着に選ばれた話
Xcode tips
Xcode tips
watchOS1 to watchOS2
watchOS1 to watchOS2
Complication
Complication
Watch connectivity
Watch connectivity
Optionalの使い方 第1回 Swift勉強会@ネクスト
Optionalの使い方 第1回 Swift勉強会@ネクスト
Swift3.0に向けて enumerateを使い始めよう
1.
2.
自己紹介 • @mo_to_44 • 株式会社ネクストで HOME
Sという 不動産検索アプリのiOSエンジニアをやっています
3.
個人でもアプリ作ってます リボカメ -
Revolver Camera • リボルバーを模したUI • フィルターをリアルタイムで 切り替え、確認できる • Apple Watch対応
4.
swift-evolution https://github.com/apple/swift-evolution
5.
Swift 3.0 proposal •
https://github.com/apple/swift-evolution/tree/ master/proposals から見ることができる • 0004 と 0007 が気になった
6.
0004: Remove the
++ and -- operators Status: Accepted
7.
0007: Remove C-style
for-loops with conditions and incrementers Status: Under review (December 7, 2015 -- December 10, 2015)
8.
Today
9.
10.
11.
0007: Remove C-style
for-loops with conditions and incrementers Status: Accepted
12.
と、いうことで
13.
こんなんが書けなくなる😱
14.
困りそうなこと
15.
あんまりない😜 for-in, forEach, map,
filter よりどりみどり
16.
Swift Advent Calendar
2015 2日目にまとめました http://qiita.com/mo_to_44/items/cf83b22cb34921580a52
17.
ちょっと困りそうなこと • 配列内の要素のindexを取得したい • indexが奇数の要素だけ取得したい などなど などなど、indexによってデータを取得、更新したり、 indexが配列を操作する際に重要な場合
18.
indexが奇数の要素だけ取得 1. 空の配列 newArray
を用意 2. for-inで各要素のindexを取得 3. indexが奇数の要素を newArray に追加
19.
長っ
20.
こんな時に
21.
enumerateが使える
22.
enumerate • SequenceType Protocolに定義されている •
indexと要素のペア(タプル)の配列を取得するこ とができる
23.
indexが奇数の要素だけ取得 enumerate使用版 1. 空の配列 newArray
を用意 2. enumerateを使用し、indexと要素のタ プルの配列のfor-inを回す 3. indexが奇数の要素を newArray に追加
24.
まだちょっと長い
25.
indexが奇数の要素だけ取得 enumerate使って1行に 1. enumerateを使用し、indexが奇数のタ プルをfilterで絞り込み 2. mapで要素のみを取り出す
26.
(index, element) $0.0 $0.1 タプルの要素へのアクセス
27.
indexが奇数の要素だけ取得 enumerate使って1行に 1. enumerateを使用し、indexが奇数のタ プルをfilterで絞り込み 2. mapで要素のみを取り出す
28.
シンプル 👍
29.
まとめ
30.
enumerate • SequenceTypeのExtensionで定義されている • index
と 要素のペア(タプル)の配列を取得できる
31.
Swift 3.0 • ++
と -- がなくなる • C言語スタイルのfor文がなくなる
32.
Swift 3.0に向けて • C言語スタイルのfor文ではなく、enumerateを積極 的に使っていく •
同様に ++ や -- も使わないようにする • swift-evolution/proposal に目を通して、なくなる かもしれない文法はなるべく使わないようにする
33.
おわり
Baixar agora