软件复杂度
许久以来,总是困惑一个问题,软件到底应该多复杂?
在工作中,我总是指责我们的软件写的太罗嗦,应该精练、再精炼,仿佛我觉得几乎就应该一行代码作出所有工作。
可是环顾各大经典软件(包括Windows操作系统本身),庞大的代码量,并不罕见,而且也并不妨碍这些软件成为伟大的软件。
那么,制约复杂的是什么?
我现在觉得,一个优秀软件的复杂度,应该在乎两点:
1。代码不多余,不缺少。有该有的,却没有废话。就想好文章。
2。关联关系清晰舒坦。
做一个大的软件,很多的代码量肯定不能避免。但是,这些模块之间的关系,应该既微妙复杂又清晰好理解。就像人体各器官。
或许学学中医,有利于软件开发?;P