抽象之前,先找到真正的边界

复用并不总是答案;稳定的变化方向,才是更可靠的设计依据。

相似不等于相同

两个页面长得相似,很容易让人立刻提取通用组件。但如果它们未来的变化方向不同,这个组件很快就会积累开关、例外和难以解释的参数。

观察谁和谁一起变化

我更习惯先保留一段时间的重复,观察真实需求如何演化。那些总是一起变化的部分,才可能属于同一个边界;只是此刻长得一样的部分,不一定需要共享命运。

抽象是一份长期承诺

命名一个抽象,就等于承诺它能解释一组场景。晚一点做这份承诺并不可耻。相反,带着更多证据再动手,往往能得到更小、更清楚也更耐用的接口。

评论

条讨论

昵称和邮箱均可不填。发布后会公开显示由 IP 推断的省级属地,完整 IP 和邮箱不会公开。查看隐私说明

正在载入评论
    评论图片预览