状态类和混合类(思想)(转载)
2016-03-24 10:20
260 查看
<装载: http://www.ablanxue.com/shtml/201603/31624_1.shtml>
“思考时不编程,编程时不思考。”这项原则让为我们带来充足的考量空间,从而正确把握类的有状态与无状态决定——以及在有状态时让其显示哪种状态。
实体类应该有状态。
辅助/操作类应当无状态。
确保辅助类无状态。
如果存在混合类,确保其不会违背单一责任原则。
在编程之前花点时间进行类设计。把类设计成果交给其他同事审查,并考量其反馈意见。
认真选择类名称。这些名称将帮助我们决定其状态。命名工作并没有固定限制,以下是我个人的一些建议:
实体类应当在名称中体现对象类型,例如: Employee
辅助/工作类名称应当反映出其作用。例如: SalaryCalculator、PaySlipGenerator等
永远不要在类名称中使用动词,例如: CalculateSalary{}类
原文标题:Object-Oriented Design Decisions: Stateful or Stateless Classes
转载注明本文地址:http://www.ablanxue.com/shtml/201603/31624_1.shtml
“思考时不编程,编程时不思考。”这项原则让为我们带来充足的考量空间,从而正确把握类的有状态与无状态决定——以及在有状态时让其显示哪种状态。
实体类应该有状态。
辅助/操作类应当无状态。
确保辅助类无状态。
如果存在混合类,确保其不会违背单一责任原则。
在编程之前花点时间进行类设计。把类设计成果交给其他同事审查,并考量其反馈意见。
认真选择类名称。这些名称将帮助我们决定其状态。命名工作并没有固定限制,以下是我个人的一些建议:
实体类应当在名称中体现对象类型,例如: Employee
辅助/工作类名称应当反映出其作用。例如: SalaryCalculator、PaySlipGenerator等
永远不要在类名称中使用动词,例如: CalculateSalary{}类
原文标题:Object-Oriented Design Decisions: Stateful or Stateless Classes
转载注明本文地址:http://www.ablanxue.com/shtml/201603/31624_1.shtml
相关文章推荐
- 一步一步跟我学易语言之第二个易程序菜单设计
- 基于逻辑运算的简单权限系统(原理,设计,实现) VBS 版
- C#中设计、使用Fluent API
- 基于逻辑运算的简单权限系统(原理,设计,实现) VBS 版
- JavaScript设计模式初探
- JavaScript 组件之旅(一)分析和设计
- C# 事件的设计与使用深入理解
- 大型网站设计注意事项大全
- Android中的脑残设计总结
- 常用的Javascript设计模式小结
- 用户权限管理设计[图文说明]
- PHP常用设计模式之委托设计模式
- HBase RowKey设计的那些事
- HTML&CSS构建网站链接
- iOS 应用2.0版怎么做(转)
- 报表开发小技巧:报表的设计与配色技巧
- 也谈淘点点60s短信订单的架构设计
- 关于游戏服务器中缓存的设计方案的讨论
- 面试:(设计,架构)
- 所有的bug都是来自于最初设计的失败