Submit Search
Upload
Pattern based problem solving-published
•
1 like
•
568 views
teddysoft
Follow
Asian PLoP 2020演講,介紹如何套用模式解決問題的方法。
Read less
Read more
Software
Report
Share
Report
Share
1 of 46
Download now
Download to read offline
Recommended
2019-03-13-ddd taiwan-community-iddd-studygroup-2nd
2019-03-13-ddd taiwan-community-iddd-studygroup-2nd
Fong Liou
DDD + Clean Architecture: 從需求到實作
DDD + Clean Architecture: 從需求到實作
teddysoft
實踐 Clean Architecture(實作高可用性的軟件架構)
實踐 Clean Architecture(實作高可用性的軟件架構)
Gelis Wu
トランザクションをSerializableにする4つの方法
トランザクションをSerializableにする4つの方法
Kumazaki Hiroki
漫談重構
漫談重構
teddysoft
Finding Boundaries with Domain Storytelling
Finding Boundaries with Domain Storytelling
sandy30716
Google Meet でもバーチャル背景を使いたい (WebRTC Meetup Online)
Google Meet でもバーチャル背景を使いたい (WebRTC Meetup Online)
mganeko
[KubeCon EU 2022] Running containerd and k3s on macOS
[KubeCon EU 2022] Running containerd and k3s on macOS
Akihiro Suda
Recommended
2019-03-13-ddd taiwan-community-iddd-studygroup-2nd
2019-03-13-ddd taiwan-community-iddd-studygroup-2nd
Fong Liou
DDD + Clean Architecture: 從需求到實作
DDD + Clean Architecture: 從需求到實作
teddysoft
實踐 Clean Architecture(實作高可用性的軟件架構)
實踐 Clean Architecture(實作高可用性的軟件架構)
Gelis Wu
トランザクションをSerializableにする4つの方法
トランザクションをSerializableにする4つの方法
Kumazaki Hiroki
漫談重構
漫談重構
teddysoft
Finding Boundaries with Domain Storytelling
Finding Boundaries with Domain Storytelling
sandy30716
Google Meet でもバーチャル背景を使いたい (WebRTC Meetup Online)
Google Meet でもバーチャル背景を使いたい (WebRTC Meetup Online)
mganeko
[KubeCon EU 2022] Running containerd and k3s on macOS
[KubeCon EU 2022] Running containerd and k3s on macOS
Akihiro Suda
DeviceOwnerのお話
DeviceOwnerのお話
まえすとろ
TLS, HTTP/2演習
TLS, HTTP/2演習
shigeki_ohtsu
オートモーティブ領域における 位置情報関連アルゴリズムあれこれ
オートモーティブ領域における 位置情報関連アルゴリズムあれこれ
DeNA
Logicadの秒間16万リクエストをさばく広告入札システムにおける、gRPCの活用事例
Logicadの秒間16万リクエストをさばく広告入札システムにおける、gRPCの活用事例
Hironobu Isoda
SRE 讀書會 - 導讀:第一章
SRE 讀書會 - 導讀:第一章
Chen Cheng-Wei
NuxtでAPIサーバー立ててみた
NuxtでAPIサーバー立ててみた
ssuserbf0fbd
Domain storytelling(領域敘事)
Domain storytelling(領域敘事)
hoblues
ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方
Yoshiyasu SAEKI
ネットワーク ゲームにおけるTCPとUDPの使い分け
ネットワーク ゲームにおけるTCPとUDPの使い分け
モノビット エンジン
組み込みLinuxでのGolangのススメ(Go con版)
組み込みLinuxでのGolangのススメ(Go con版)
Tetsuyuki Kobayashi
コンテナを止めるな! PacemakerによるコンテナHAクラスタリングとKubernetesとの違いとは
コンテナを止めるな! PacemakerによるコンテナHAクラスタリングとKubernetesとの違いとは
ksk_ha
Design Patterns這樣學就會了:入門班 Day1 教材
Design Patterns這樣學就會了:入門班 Day1 教材
teddysoft
Protocol Buffers 入門
Protocol Buffers 入門
Yuichi Ito
DockerとPodmanの比較
DockerとPodmanの比較
Akihiro Suda
Pacemaker 操作方法メモ
Pacemaker 操作方法メモ
Masayuki Ozawa
[Cloud OnAir] 安心して GCP を使うための処方箋 ~ 実際のインシデントをもとに ~ 2019年11月14日 放送
[Cloud OnAir] 安心して GCP を使うための処方箋 ~ 実際のインシデントをもとに ~ 2019年11月14日 放送
Google Cloud Platform - Japan
コンテナとimmutableとわたし。あとセキュリティ。(Kubernetes Novice Tokyo #15 発表資料)
コンテナとimmutableとわたし。あとセキュリティ。(Kubernetes Novice Tokyo #15 発表資料)
NTT DATA Technology & Innovation
日本語テストメソッドについて
日本語テストメソッドについて
kumake
使用 Passkeys 打造無密碼驗證服務
使用 Passkeys 打造無密碼驗證服務
升煌 黃
Javaメモリ勉強会
Javaメモリ勉強会
Tetsuya Yoshida
Dci vs aggregate_dddtw_2021-0.3-16-9
Dci vs aggregate_dddtw_2021-0.3-16-9
teddysoft
Dci vs aggregate_dddtw_2021-0.3-preview
Dci vs aggregate_dddtw_2021-0.3-preview
teddysoft
More Related Content
What's hot
DeviceOwnerのお話
DeviceOwnerのお話
まえすとろ
TLS, HTTP/2演習
TLS, HTTP/2演習
shigeki_ohtsu
オートモーティブ領域における 位置情報関連アルゴリズムあれこれ
オートモーティブ領域における 位置情報関連アルゴリズムあれこれ
DeNA
Logicadの秒間16万リクエストをさばく広告入札システムにおける、gRPCの活用事例
Logicadの秒間16万リクエストをさばく広告入札システムにおける、gRPCの活用事例
Hironobu Isoda
SRE 讀書會 - 導讀:第一章
SRE 讀書會 - 導讀:第一章
Chen Cheng-Wei
NuxtでAPIサーバー立ててみた
NuxtでAPIサーバー立ててみた
ssuserbf0fbd
Domain storytelling(領域敘事)
Domain storytelling(領域敘事)
hoblues
ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方
Yoshiyasu SAEKI
ネットワーク ゲームにおけるTCPとUDPの使い分け
ネットワーク ゲームにおけるTCPとUDPの使い分け
モノビット エンジン
組み込みLinuxでのGolangのススメ(Go con版)
組み込みLinuxでのGolangのススメ(Go con版)
Tetsuyuki Kobayashi
コンテナを止めるな! PacemakerによるコンテナHAクラスタリングとKubernetesとの違いとは
コンテナを止めるな! PacemakerによるコンテナHAクラスタリングとKubernetesとの違いとは
ksk_ha
Design Patterns這樣學就會了:入門班 Day1 教材
Design Patterns這樣學就會了:入門班 Day1 教材
teddysoft
Protocol Buffers 入門
Protocol Buffers 入門
Yuichi Ito
DockerとPodmanの比較
DockerとPodmanの比較
Akihiro Suda
Pacemaker 操作方法メモ
Pacemaker 操作方法メモ
Masayuki Ozawa
[Cloud OnAir] 安心して GCP を使うための処方箋 ~ 実際のインシデントをもとに ~ 2019年11月14日 放送
[Cloud OnAir] 安心して GCP を使うための処方箋 ~ 実際のインシデントをもとに ~ 2019年11月14日 放送
Google Cloud Platform - Japan
コンテナとimmutableとわたし。あとセキュリティ。(Kubernetes Novice Tokyo #15 発表資料)
コンテナとimmutableとわたし。あとセキュリティ。(Kubernetes Novice Tokyo #15 発表資料)
NTT DATA Technology & Innovation
日本語テストメソッドについて
日本語テストメソッドについて
kumake
使用 Passkeys 打造無密碼驗證服務
使用 Passkeys 打造無密碼驗證服務
升煌 黃
Javaメモリ勉強会
Javaメモリ勉強会
Tetsuya Yoshida
What's hot
(20)
DeviceOwnerのお話
DeviceOwnerのお話
TLS, HTTP/2演習
TLS, HTTP/2演習
オートモーティブ領域における 位置情報関連アルゴリズムあれこれ
オートモーティブ領域における 位置情報関連アルゴリズムあれこれ
Logicadの秒間16万リクエストをさばく広告入札システムにおける、gRPCの活用事例
Logicadの秒間16万リクエストをさばく広告入札システムにおける、gRPCの活用事例
SRE 讀書會 - 導讀:第一章
SRE 讀書會 - 導讀:第一章
NuxtでAPIサーバー立ててみた
NuxtでAPIサーバー立ててみた
Domain storytelling(領域敘事)
Domain storytelling(領域敘事)
ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方
ネットワーク ゲームにおけるTCPとUDPの使い分け
ネットワーク ゲームにおけるTCPとUDPの使い分け
組み込みLinuxでのGolangのススメ(Go con版)
組み込みLinuxでのGolangのススメ(Go con版)
コンテナを止めるな! PacemakerによるコンテナHAクラスタリングとKubernetesとの違いとは
コンテナを止めるな! PacemakerによるコンテナHAクラスタリングとKubernetesとの違いとは
Design Patterns這樣學就會了:入門班 Day1 教材
Design Patterns這樣學就會了:入門班 Day1 教材
Protocol Buffers 入門
Protocol Buffers 入門
DockerとPodmanの比較
DockerとPodmanの比較
Pacemaker 操作方法メモ
Pacemaker 操作方法メモ
[Cloud OnAir] 安心して GCP を使うための処方箋 ~ 実際のインシデントをもとに ~ 2019年11月14日 放送
[Cloud OnAir] 安心して GCP を使うための処方箋 ~ 実際のインシデントをもとに ~ 2019年11月14日 放送
コンテナとimmutableとわたし。あとセキュリティ。(Kubernetes Novice Tokyo #15 発表資料)
コンテナとimmutableとわたし。あとセキュリティ。(Kubernetes Novice Tokyo #15 発表資料)
日本語テストメソッドについて
日本語テストメソッドについて
使用 Passkeys 打造無密碼驗證服務
使用 Passkeys 打造無密碼驗證服務
Javaメモリ勉強会
Javaメモリ勉強会
More from teddysoft
Dci vs aggregate_dddtw_2021-0.3-16-9
Dci vs aggregate_dddtw_2021-0.3-16-9
teddysoft
Dci vs aggregate_dddtw_2021-0.3-preview
Dci vs aggregate_dddtw_2021-0.3-preview
teddysoft
Agile the timeless way of software development-2019-05-17-v1.2-published
Agile the timeless way of software development-2019-05-17-v1.2-published
teddysoft
從Bowling Game Kata看敏捷開發
從Bowling Game Kata看敏捷開發
teddysoft
當Scrum遇到Pattern
當Scrum遇到Pattern
teddysoft
說出一嘴好設計 1.1
說出一嘴好設計 1.1
teddysoft
跟著Teddy讀Pattern
跟著Teddy讀Pattern
teddysoft
洗白你的軟體架構
洗白你的軟體架構
teddysoft
如何學好設計模式
如何學好設計模式
teddysoft
Bdd atdd sbe_tdd_ddd_published
Bdd atdd sbe_tdd_ddd_published
teddysoft
重構三兩事
重構三兩事
teddysoft
了解模式讓你更敏捷 (C C Agile 活動分享)
了解模式讓你更敏捷 (C C Agile 活動分享)
teddysoft
從五個小故事看敏捷開發精神
從五個小故事看敏捷開發精神
teddysoft
軟體開發成功的秘訣
軟體開發成功的秘訣
teddysoft
[演講] Scrum導入經驗分享
[演講] Scrum導入經驗分享
teddysoft
那一夜我們說Pattern design patterns 20周年-published
那一夜我們說Pattern design patterns 20周年-published
teddysoft
好設計如何好 @ C.C. Agile #14
好設計如何好 @ C.C. Agile #14
teddysoft
[教材] 例外處理設計與重構實作班201309
[教材] 例外處理設計與重構實作班201309
teddysoft
搞懂Java例外處理的難題:Checked與Unchecked Exceptions不再是問題
搞懂Java例外處理的難題:Checked與Unchecked Exceptions不再是問題
teddysoft
Java 例外處理壞味道與重構技術
Java 例外處理壞味道與重構技術
teddysoft
More from teddysoft
(20)
Dci vs aggregate_dddtw_2021-0.3-16-9
Dci vs aggregate_dddtw_2021-0.3-16-9
Dci vs aggregate_dddtw_2021-0.3-preview
Dci vs aggregate_dddtw_2021-0.3-preview
Agile the timeless way of software development-2019-05-17-v1.2-published
Agile the timeless way of software development-2019-05-17-v1.2-published
從Bowling Game Kata看敏捷開發
從Bowling Game Kata看敏捷開發
當Scrum遇到Pattern
當Scrum遇到Pattern
說出一嘴好設計 1.1
說出一嘴好設計 1.1
跟著Teddy讀Pattern
跟著Teddy讀Pattern
洗白你的軟體架構
洗白你的軟體架構
如何學好設計模式
如何學好設計模式
Bdd atdd sbe_tdd_ddd_published
Bdd atdd sbe_tdd_ddd_published
重構三兩事
重構三兩事
了解模式讓你更敏捷 (C C Agile 活動分享)
了解模式讓你更敏捷 (C C Agile 活動分享)
從五個小故事看敏捷開發精神
從五個小故事看敏捷開發精神
軟體開發成功的秘訣
軟體開發成功的秘訣
[演講] Scrum導入經驗分享
[演講] Scrum導入經驗分享
那一夜我們說Pattern design patterns 20周年-published
那一夜我們說Pattern design patterns 20周年-published
好設計如何好 @ C.C. Agile #14
好設計如何好 @ C.C. Agile #14
[教材] 例外處理設計與重構實作班201309
[教材] 例外處理設計與重構實作班201309
搞懂Java例外處理的難題:Checked與Unchecked Exceptions不再是問題
搞懂Java例外處理的難題:Checked與Unchecked Exceptions不再是問題
Java 例外處理壞味道與重構技術
Java 例外處理壞味道與重構技術
Pattern based problem solving-published
1.
Teddy Chen teddy@teddysoft.tw http://teddy-chen-tw.blogspot.tw/ Sep. 03
2020 @ Asian PLoP 2020
2.
Copyright@2020 Teddysoft
3.
Copyright@2020 Teddysoft
4.
設計就是解決問題 Copyright@2020 Teddysoft
5.
只要解決問題(功能需求) 就好了嗎? Copyright@2020 Teddysoft
6.
設計就是解決問題並滿足 所關心的非功能需求 Copyright@2020 Teddysoft
7.
設計困難嗎? Copyright@2020 Teddysoft
8.
Copyright@2020 Teddysoft Context Form Context FormOr 設計就是決定Form與Context的邊界 (設計就是決定你要設計什麼)
9.
Copyright@2020 Teddysoft 圖片搜尋自Google
10.
Context Before MachineProblem force force Copyright@2020 Teddysoft Worl d Resulting Context Solution force force force After force
11.
Copyright@2020 Teddysoft 《節錄自網路》 《節錄自網路》
12.
Copyright@2020 Teddysoft 設計就是解決問題,好的設計就 是Form與Context的良好適關係, 不能單獨只看Form本身
13.
Copyright@2020 Teddysoft
14.
一再重複出現的東西、 事件、現象,就稱為模式 Copyright@2020 Teddysoft
15.
Copyright@2020 Teddysoft
16.
A pattern is
a solution to a problem in a context. Copyright@2020 Teddysoft A pattern is a proven solution to a recurring problem in a specific context, and more.
17.
Copyright@2020 Teddysoft
18.
Copyright@2020 Teddysoft World Context Problem Domain (Requirement,
What) Solution Domain (How, How to, How much) Machine Problem force force force 模式讓設計問 題變成選擇題
19.
Copyright@2020 Teddysoft 模式是一種重複使用知識的方法,它將 設計問題簡化成選擇題。套用模式解決 問題便是要釐清如何選擇模式。
20.
Copyright@2020 Teddysoft
21.
• Big Up
Front Design (BUFD) Style – Code first + refactoring tomorrow – Top-down approach • Just-In-Time Design (JITD) Style – [Test + code + refactor] cycle – Bottom-up approach Copyright@2020 Teddysoft
22.
因為需求經常改變,BUFD常常 變成Over Design,形成浪費 Copyright@2020 Teddysoft
23.
JITD是一種推遲決策的思維,理 論上可以減少浪費。但實際上真 正的JITD非常困難,通常只有練 過的叔叔&阿姨們才有辦法做到 Copyright@2020 Teddysoft
24.
Copyright@2020 Teddysoft
25.
Copyright@2020 Teddysoft Source:《Test-Driven
Development》
26.
Copyright@2020 Teddysoft
27.
Copyright@2020 Teddysoft
28.
Copyright@2020 Teddysoft Top-down Bottom-up
29.
Copyright@2020 Teddysoft 設計是一種由上而下的過程,套用 模式也是如此。問題在於如何展開 這個由上而下的過程。
30.
Copyright@2020 Teddysoft
31.
一個Pattern解決一個特定的(小)問題 好幾個Pattern一起使用,稱為Pattern Language,便可解決較大的問題 Copyright@2020 Teddysoft
32.
Pattern → 單字 Pattern
Language →句子 Copyright@2020 Teddysoft
33.
Copyright@2020 Teddysoft
34.
Copyright@2020 Teddysoft source: https://reurl.cc/5q2n9V
35.
慎選第一個 Pattern P1 Context1 P2 Context2 套Pattern A P3 Context3 如果Pattern A不合, 改套
Pattern B P4 Context4 若有未被解的問題, 套下一個 Pattern C Context 1的 Resulting Context Copyright@2020 Teddysoft
36.
Copyright@2020 Teddysoft
37.
Copyright@2020 Teddysoft 設計的展開過程藉由先定義整 體再逐步分化,讓系統成形
38.
Copyright@2020 Teddysoft
39.
Copyright@2020 Teddysoft
40.
A pattern is
a process and a thing. Copyright@2020 Teddysoft
41.
• 分散式行動 • 單一心智 •
不須繁複設計圖 • 一次一個模式的展開過程 • 修復 Copyright@2020 Teddysoft
42.
Copyright@2020 Teddysoft 《畫面節錄自電影鹿鼎記》
43.
Copyright@2020 Teddysoft
44.
Copyright@2020 Teddysoft 請看 Miro
45.
Copyright@2020 Teddysoft 《http://goo.gl/G3IjMW》
46.
• 搞笑談軟工部落格 – http://teddy-chen-tw.blogspot.com •
搞笑談軟工Facebook – https://www.facebook.com/groups/teddy.tw • 泰迪軟體官方網站 – http://teddysoft.tw Copyright@2020 Teddysoft
Download now