OO训练营第一课

今天下班前,开始第三届OO训练营的第一课。

本来觉得应该没什么,结果课堂上大家窘态尽出,会写代码不代表面向对象代码写的好,事先不写测试,直接上实现,情何以堪呐。

一些重点:

  • 代码是写给人看的,不是给机器的。代码是用来表达和传递知识的。
  • 对于可度量的对象,有几个属性(比如相等性和可描述性),可以作为分解任务的依据,并据此编写测试。比如长度(Lenght)的Equality,如何判定是同一个长度对象,如何比较不同的长度对象。
  • 测试优先开发,划分出可测的任务是关键,即所谓Testability Driven Tasking。
  • 模块化最重要的是封装实现的细节,对类细节的访问要封装在类上下文中,这是最最容易忽视的bad smell。
Share
 
张凯峰

张凯峰

ThoughtWorks程序员,InfoQ中文站编辑,有多年软件开发和测试经验,热衷参与技术社区与技术传播,参与翻译《Ajax实战》、《开源技术选型手册》。

 

One thought on “OO训练营第一课

  1. OO思想很重要。。如果我您是做培训的话。。。那么我想您从一开始教学生的时候就教他们面向对象开发。。。如果等到以后要转变那么就很难了

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据