Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
寫個好懂的程式
Search
Ching Yi Chan
March 17, 2020
Programming
1
640
寫個好懂的程式
Ching Yi Chan
March 17, 2020
Tweet
Share
More Decks by Ching Yi Chan
See All by Ching Yi Chan
[coscup] Reading and modifying the source code of the dbt adapter
qrtt1
0
160
twjug-lite-17 結束了幾個月的 Java Web 培訓 站在人蔘迷途的我
qrtt1
0
100
[twjug-lite] 迷你研發部 [1]
qrtt1
0
1.2k
OAuth 2.0 Authorization Code Flow
qrtt1
0
310
types of knowledge
qrtt1
1
1.4k
twjug 小活動
qrtt1
0
480
TWJUG 2019
qrtt1
0
220
Learning Concepts
qrtt1
0
250
軟體工作日常:成為工具人吧!
qrtt1
1
270
Other Decks in Programming
See All in Programming
バックエンドエンジニアによる Amebaブログ K8s 基盤への CronJobの導入・運用経験
sunabig
0
140
Context is King? 〜Verifiability時代とコンテキスト設計 / Beyond "Context is King"
rkaga
6
910
AIコーディングエージェント(Manus)
kondai24
0
160
配送計画の均等化機能を提供する取り組みについて(⽩⾦鉱業 Meetup Vol.21@六本⽊(数理最適化編))
izu_nori
0
140
CSC305 Lecture 17
javiergs
PRO
0
340
dnx で実行できるコマンド、作ってみました
tomohisa
0
140
モデル駆動設計をやってみようワークショップ開催報告(Modeling Forum2025) / model driven design workshop report
haru860
0
250
Rediscover the Console - SymfonyCon Amsterdam 2025
chalasr
2
160
Building AI Agents with TypeScript #TSKaigiHokuriku
izumin5210
6
1.2k
【CA.ai #3】ワークフローから見直すAIエージェント — 必要な場面と“選ばない”判断
satoaoaka
0
230
エディターってAIで操作できるんだぜ
kis9a
0
700
【Streamlit x Snowflake】データ基盤からアプリ開発・AI活用まで、すべてをSnowflake内で実現
ayumu_yamaguchi
1
120
Featured
See All Featured
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.3k
Testing 201, or: Great Expectations
jmmastey
46
7.8k
GraphQLとの向き合い方2022年版
quramy
50
14k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.5k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
7.8k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.8k
Rails Girls Zürich Keynote
gr2m
95
14k
Documentation Writing (for coders)
carmenintech
76
5.2k
Unsuck your backbone
ammeep
671
58k
Navigating Team Friction
lara
191
16k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Transcript
寫個好懂的程式 某天,我在網路上撿到⼀個ᄳ˚া的桌應⽤程式
ɽɓৎԸCode Reviewഗഗܔᙄ
ಀԒމڋኪ٫ٙҢࡁd νОᜫІʉɝѢྤٙ
https://blog.cleancoder.com/uncle-bob/2012/08/13/the-clean-architecture.html
None
Entities Use Cases 內部業務核⼼ 外部資料的介接與回饋 UI Devices DB Web Adapters
Entities Use Cases 內部業務核⼼ • 獨立於應⽤程式框架 • 可以單元測試 • 獨立於
UI • 獨立於 Database • 獨立於世 (不受外界⼲擾)
Entities Use Cases 內部業務核⼼ • 獨立於應⽤程式框架 ̥͜ᅺՌόࢫၾІࠈᗳй • 可以單元測試 ༊ઋྤ̥ცࠅ&OUJUJFTၾ6TF$BTFT
• 獨立於 UI ఊॱٙՌόխ̣ • 獨立於 Database ၇ٙ*0ცӋפʷஈଣ • 獨立於世 (不受外界⼲擾) ̮Աޫפʷஈଣ 伂䡆⨑嶋苌㖞羖甙♔KPVGTHCEG
外部資料的介接與回饋 UI Devices DB Web Adapters 外部相依,要透過 end-to-end 測試保證品質
Entities 試著⽤個簡單的模型來描述你的問題 (demo time)
Q & A