前回はその中で話題にのぼった StringProtocol
をきっかけに Collection
について意識を傾けていく機会に恵まれましたけれど、自分が少し捉え違えて話を進めていた感があったのと、これまであまり意識して見てこなかったことも登場してきていたので、改めて今回はその Collection
について、The Swift Programming Language からではなく標準ライブラリーから窺えることを中心に、前回の補足も兼ねつつ奔放に眺めてみようと思いますので、どうぞよろしくお願いしますね。
———————————————————————————————————————— 熊谷さんのやさしい Swift 勉強会 #79
00:00 開始 00:24 今回の展望 01:49 StringProtocol の制約 02:10 StringProtocol に準拠できる型 03:48 String と NSString は独立した存在 04:06 NSString は StringProtocol に準拠していない 04:56 Substring によるパフォーマンス向上 07:26 ジェネリクスで StringProtocol を扱う 12:37 Objective-C ブリッジでインスタンスが振り替えられる 15:31 コレクションの性格を見ていく 16:06 コレクションとは 16:36 コレクションに関係する型とプロトコル 22:58 プロトコルが性格ごとに事細かに分けられている理由 24:06 シーケンスとコレクションの類似性 28:12 Collection プロトコルの特徴 31:47 非破壊で巡回できるか否か 35:17 個々の要素にアクセス可能 35:39 end と last と past the end 39:20 余談 : Swift の String を壊す事例 41:08 インデックスのセマンティクスを継承することが求められる 43:38 プロトコルはコンパイラーでは検出できない制約も含む 46:44 次回の展望 ————————————————————————————————————————