Enviar pesquisa
Carregar
Pattern based problem solving-published
•
1 gostou
•
569 visualizações
teddysoft
Seguir
Asian PLoP 2020演講,介紹如何套用模式解決問題的方法。
Leia menos
Leia mais
Software
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 46
Baixar agora
Baixar para ler offline
Recomendados
DDD + Clean Architecture: 從需求到實作
DDD + Clean Architecture: 從需求到實作
teddysoft
事件風暴-領域建模
事件風暴-領域建模
國昭 張
2019-03-13-ddd taiwan-community-iddd-studygroup-2nd
2019-03-13-ddd taiwan-community-iddd-studygroup-2nd
Fong Liou
DiI/DIコンテナを一から学んでみた
DiI/DIコンテナを一から学んでみた
tak
漫談重構
漫談重構
teddysoft
實踐 Clean Architecture(實作高可用性的軟件架構)
實踐 Clean Architecture(實作高可用性的軟件架構)
Gelis Wu
Dci vs aggregate_dddtw_2021-0.3-16-9
Dci vs aggregate_dddtw_2021-0.3-16-9
teddysoft
Flutter移行の苦労と、乗り越えた先に得られたもの
Flutter移行の苦労と、乗り越えた先に得られたもの
Recruit Lifestyle Co., Ltd.
Recomendados
DDD + Clean Architecture: 從需求到實作
DDD + Clean Architecture: 從需求到實作
teddysoft
事件風暴-領域建模
事件風暴-領域建模
國昭 張
2019-03-13-ddd taiwan-community-iddd-studygroup-2nd
2019-03-13-ddd taiwan-community-iddd-studygroup-2nd
Fong Liou
DiI/DIコンテナを一から学んでみた
DiI/DIコンテナを一から学んでみた
tak
漫談重構
漫談重構
teddysoft
實踐 Clean Architecture(實作高可用性的軟件架構)
實踐 Clean Architecture(實作高可用性的軟件架構)
Gelis Wu
Dci vs aggregate_dddtw_2021-0.3-16-9
Dci vs aggregate_dddtw_2021-0.3-16-9
teddysoft
Flutter移行の苦労と、乗り越えた先に得られたもの
Flutter移行の苦労と、乗り越えた先に得られたもの
Recruit Lifestyle Co., Ltd.
世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture
Atsushi Nakamura
敏捷轉型:目標管理工作坊
敏捷轉型:目標管理工作坊
William Yeh
軟體架構設計的技術養成之路
軟體架構設計的技術養成之路
Gelis Wu
如何培養架構性思考(談軟體架構師必經之路)
如何培養架構性思考(談軟體架構師必經之路)
Gelis Wu
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
pospome
ソフトウェアにおける 複雑さとは何なのか?
ソフトウェアにおける 複雑さとは何なのか?
Yoshitaka Kawashima
モジュールの凝集度・結合度・インタフェース
モジュールの凝集度・結合度・インタフェース
Hajime Yanagawa
関数型・オブジェクト指向宗教戦争に疲れたなたに送るGo言語入門
関数型・オブジェクト指向宗教戦争に疲れたなたに送るGo言語入門
Tadahiro Ishisaka
Smalltalkだめ自慢
Smalltalkだめ自慢
Masashi Umezawa
設計と実装で 抑えておきたい サービスクラスと例外
設計と実装で 抑えておきたい サービスクラスと例外
Takuya Sato
例外設計における大罪
例外設計における大罪
Takuto Wada
ドメイン駆動設計 モデリング_実装入門勉強会_2020.3.8
ドメイン駆動設計 モデリング_実装入門勉強会_2020.3.8
Koichiro Matsuoka
ワタシはSingletonがキライだ
ワタシはSingletonがキライだ
Tetsuya Kaneuchi
リーンなコードを書こう:実践的なオブジェクト指向設計
リーンなコードを書こう:実践的なオブジェクト指向設計
増田 亨
ジェネリクスの基礎とクラス設計への応用
ジェネリクスの基礎とクラス設計への応用
nagise
正しいものを正しく作る塾-設計コース
正しいものを正しく作る塾-設計コース
増田 亨
3週連続DDDその2 深いモデルの探求(ドメイン駆動設計 第3部)
3週連続DDDその2 深いモデルの探求(ドメイン駆動設計 第3部)
増田 亨
「ドメイン駆動設計」の複雑さに立ち向かう
「ドメイン駆動設計」の複雑さに立ち向かう
増田 亨
開発速度が速い #とは(LayerX社内資料)
開発速度が速い #とは(LayerX社内資料)
mosa siru
ドメイン駆動設計 失敗したことと成功したこと
ドメイン駆動設計 失敗したことと成功したこと
BIGLOBE Inc.
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
Mais conteúdo relacionado
Mais procurados
世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture
Atsushi Nakamura
敏捷轉型:目標管理工作坊
敏捷轉型:目標管理工作坊
William Yeh
軟體架構設計的技術養成之路
軟體架構設計的技術養成之路
Gelis Wu
如何培養架構性思考(談軟體架構師必經之路)
如何培養架構性思考(談軟體架構師必經之路)
Gelis Wu
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
pospome
ソフトウェアにおける 複雑さとは何なのか?
ソフトウェアにおける 複雑さとは何なのか?
Yoshitaka Kawashima
モジュールの凝集度・結合度・インタフェース
モジュールの凝集度・結合度・インタフェース
Hajime Yanagawa
関数型・オブジェクト指向宗教戦争に疲れたなたに送るGo言語入門
関数型・オブジェクト指向宗教戦争に疲れたなたに送るGo言語入門
Tadahiro Ishisaka
Smalltalkだめ自慢
Smalltalkだめ自慢
Masashi Umezawa
設計と実装で 抑えておきたい サービスクラスと例外
設計と実装で 抑えておきたい サービスクラスと例外
Takuya Sato
例外設計における大罪
例外設計における大罪
Takuto Wada
ドメイン駆動設計 モデリング_実装入門勉強会_2020.3.8
ドメイン駆動設計 モデリング_実装入門勉強会_2020.3.8
Koichiro Matsuoka
ワタシはSingletonがキライだ
ワタシはSingletonがキライだ
Tetsuya Kaneuchi
リーンなコードを書こう:実践的なオブジェクト指向設計
リーンなコードを書こう:実践的なオブジェクト指向設計
増田 亨
ジェネリクスの基礎とクラス設計への応用
ジェネリクスの基礎とクラス設計への応用
nagise
正しいものを正しく作る塾-設計コース
正しいものを正しく作る塾-設計コース
増田 亨
3週連続DDDその2 深いモデルの探求(ドメイン駆動設計 第3部)
3週連続DDDその2 深いモデルの探求(ドメイン駆動設計 第3部)
増田 亨
「ドメイン駆動設計」の複雑さに立ち向かう
「ドメイン駆動設計」の複雑さに立ち向かう
増田 亨
開発速度が速い #とは(LayerX社内資料)
開発速度が速い #とは(LayerX社内資料)
mosa siru
ドメイン駆動設計 失敗したことと成功したこと
ドメイン駆動設計 失敗したことと成功したこと
BIGLOBE Inc.
Mais procurados
(20)
世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture
敏捷轉型:目標管理工作坊
敏捷轉型:目標管理工作坊
軟體架構設計的技術養成之路
軟體架構設計的技術養成之路
如何培養架構性思考(談軟體架構師必經之路)
如何培養架構性思考(談軟體架構師必經之路)
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
ソフトウェアにおける 複雑さとは何なのか?
ソフトウェアにおける 複雑さとは何なのか?
モジュールの凝集度・結合度・インタフェース
モジュールの凝集度・結合度・インタフェース
関数型・オブジェクト指向宗教戦争に疲れたなたに送るGo言語入門
関数型・オブジェクト指向宗教戦争に疲れたなたに送るGo言語入門
Smalltalkだめ自慢
Smalltalkだめ自慢
設計と実装で 抑えておきたい サービスクラスと例外
設計と実装で 抑えておきたい サービスクラスと例外
例外設計における大罪
例外設計における大罪
ドメイン駆動設計 モデリング_実装入門勉強会_2020.3.8
ドメイン駆動設計 モデリング_実装入門勉強会_2020.3.8
ワタシはSingletonがキライだ
ワタシはSingletonがキライだ
リーンなコードを書こう:実践的なオブジェクト指向設計
リーンなコードを書こう:実践的なオブジェクト指向設計
ジェネリクスの基礎とクラス設計への応用
ジェネリクスの基礎とクラス設計への応用
正しいものを正しく作る塾-設計コース
正しいものを正しく作る塾-設計コース
3週連続DDDその2 深いモデルの探求(ドメイン駆動設計 第3部)
3週連続DDDその2 深いモデルの探求(ドメイン駆動設計 第3部)
「ドメイン駆動設計」の複雑さに立ち向かう
「ドメイン駆動設計」の複雑さに立ち向かう
開発速度が速い #とは(LayerX社内資料)
開発速度が速い #とは(LayerX社内資料)
ドメイン駆動設計 失敗したことと成功したこと
ドメイン駆動設計 失敗したことと成功したこと
Mais de 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
Design Patterns這樣學就會了:入門班 Day1 教材
Design Patterns這樣學就會了:入門班 Day1 教材
teddysoft
搞懂Java例外處理的難題:Checked與Unchecked Exceptions不再是問題
搞懂Java例外處理的難題:Checked與Unchecked Exceptions不再是問題
teddysoft
Java 例外處理壞味道與重構技術
Java 例外處理壞味道與重構技術
teddysoft
Mais de teddysoft
(20)
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
Design Patterns這樣學就會了:入門班 Day1 教材
Design Patterns這樣學就會了:入門班 Day1 教材
搞懂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
Baixar agora