Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
Libraryを作ると 云ふ開発手法
Slide 2
Slide 2 text
.。oO(さっちゃんですよヾ(〃l _ l)ノ゙☆)
Slide 3
Slide 3 text
Libraryを作ると 云ふ開発手法
Slide 4
Slide 4 text
Libraryを使ふ
Slide 5
Slide 5 text
Libraryを使ふ Libararyを使はうとする時 =
Slide 6
Slide 6 text
Libraryを使ふ Libararyを使はうとする時 = この問題が、既知の問題ではないか? と感じた時 =
Slide 7
Slide 7 text
Libraryを使ふ Libararyを使はうとする時 = この問題が、既知の問題ではないか? と感じた時 = 「同じ問題」を感じた時
Slide 8
Slide 8 text
Libraryを使ふ Libararyを使はうとする時 = この問題が、既知の問題ではないか? と感じた時 = 「同じ問題」を感じた時 同じ問題 = 現状から切り離して反復する問題 = 他の状況でも起き得る問題
Slide 9
Slide 9 text
Libraryを選ぶ . . . .
Slide 10
Slide 10 text
Libraryを選ぶ . Documentの丁寧さ . Source codeのよさ . Support & Communityの盛んさと近さ .
Slide 11
Slide 11 text
Libraryを選ぶ . Documentの丁寧さ . Source codeのよさ . Support & Communityの盛んさと近さ . Interfaceの自然さ
Slide 12
Slide 12 text
Libraryを選ぶ . Documentの丁寧さ . Source codeのよさ . Support & Communityの盛んさと近さ . Interfaceの自然さ 自然 =
Slide 13
Slide 13 text
Libraryを選ぶ . Documentの丁寧さ . Source codeのよさ . Support & Communityの盛んさと近さ . Interfaceの自然さ 自然 = 「同じ問題」を感じるか
Slide 14
Slide 14 text
Libraryを使ふ Libraryが在った → ありがたう
Slide 15
Slide 15 text
Libraryを使ふ Libraryが在った → ありがたう Libraryが無かった → 独自実装
Slide 16
Slide 16 text
Libraryを使ふ Libraryが在った → ありがたう Libraryが無かった → 独自実装 Libraryが在ったが、ちと違ふ → . . .
Slide 17
Slide 17 text
Libraryを使ふ Libraryが在った → ありがたう Libraryが無かった → 独自実装 Libraryが在ったが、ちと違ふ → . Monkey patch . Fork . Libraryを直す (Pull Request)
Slide 18
Slide 18 text
Libraryを… Libraryが無かった → 独自実装
Slide 19
Slide 19 text
Libraryを… Libraryが無かった → 独自実装
Slide 20
Slide 20 text
Libraryを作る Libraryが無かった → 独自実装 Libraryを作る
Slide 21
Slide 21 text
Libraryを作る
Slide 22
Slide 22 text
Libraryを作る ServiceにはService固有の課題と、Service固有ではない課題が混ざってゐる。混ざって ゐるので分離は難しい。
Slide 23
Slide 23 text
Libraryを作る ServiceにはService固有の課題と、Service固有ではない課題が混ざってゐる。混ざって ゐるので分離は難しい。 しかし分離できる時がある = . .
Slide 24
Slide 24 text
Libraryを作る ServiceにはService固有の課題と、Service固有ではない課題が混ざってゐる。混ざって ゐるので分離は難しい。 しかし分離できる時がある = . 抽象化した対象 → を分離する .
Slide 25
Slide 25 text
Libraryを作る ServiceにはService固有の課題と、Service固有ではない課題が混ざってゐる。混ざって ゐるので分離は難しい。 しかし分離できる時がある = . 抽象化した対象 → を分離する . 抽象化の仕方 → を分離する
Slide 26
Slide 26 text
Libraryを作る 独自実装 →>→ Libraryを作る
Slide 27
Slide 27 text
Libraryを作る 独自実装 →>→ Libraryを作る > =
Slide 28
Slide 28 text
Libraryを作る 独自実装 →>→ Libraryを作る > = 分離が成され、一般性を得た時 =
Slide 29
Slide 29 text
Libraryを作る 独自実装 →>→ Libraryを作る > = 分離が成され、一般性を得た時 = 「同じ問題」を分離できた時
Slide 30
Slide 30 text
Libraryを作る 独自実装 →>→ Libraryを作る > = 分離が成され、一般性を得た時 = 「同じ問題」を分離できた時 同じ問題 = 現状から切り離して反復する問題 = 他の状況でも起き得る問題
Slide 31
Slide 31 text
Libraryを作る 「同じ問題」を分離する ←
Slide 32
Slide 32 text
Libraryを作る 「同じ問題」を分離する ← SOA的な考へ方をする 「同じ問題」を述べる = 概念、責務を述べる
Slide 33
Slide 33 text
Libraryを作る 「同じ問題」を分離する → . .
Slide 34
Slide 34 text
Libraryを作る 「同じ問題」を分離する → . 分離されたものはtestableになる ← 抽象化は複雑になり易い。責務をはっきり述べる 事で、仕様がわかり、何をtestするべきか述べ易くなる .
Slide 35
Slide 35 text
Libraryを作る 「同じ問題」を分離する → . 分離されたものはtestableになる ← 抽象化は複雑になり易い。責務をはっきり述べる 事で、仕様がわかり、何をtestするべきか述べ易くなる . 責務に固有の問題が混ざらない = maintainableになる
Slide 36
Slide 36 text
Libraryを作る 「同じ問題」を分離する → . 分離されたものはtestableになる ← 抽象化は複雑になり易い。責務をはっきり述べる 事で、仕様がわかり、何をtestするべきか述べ易くなる . 責務に固有の問題が混ざらない = maintainableになる 複雑な問題を関心を中心に外のLibraryに分離する =
Slide 37
Slide 37 text
Libraryを作る 「同じ問題」を分離する → . 分離されたものはtestableになる ← 抽象化は複雑になり易い。責務をはっきり述べる 事で、仕様がわかり、何をtestするべきか述べ易くなる . 責務に固有の問題が混ざらない = maintainableになる 複雑な問題を関心を中心に外のLibraryに分離する = micro serviceと同じ手法
Slide 38
Slide 38 text
Libraryを作ると → . 負債を溜めづらい (負債が小分けになる) . Systemを安定させ易い . 開発にrailを敷ける
Slide 39
Slide 39 text
Libraryを作ると → . 負債を溜めづらい (負債が小分けになる) . Systemを安定させ易い . 開発にrailを敷ける (〃l _ l)b