微软平台技术学习笔记

学习,思考,实践

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

什么样的软件才能hold住全场? 那必须是好的软件。那么我们首先要讨论什么是好的软件。

然后才能讨论如何开发和维护好的软件。 

 

那么,什么样的软件是好软件?不同的相关者,会有不同的答案。

首先,对客户来说,有几点,

 

  • 容易使用 
这个需要好的UI设计。
  • 反应快
反应快就是是性能好。这个需要好的算法,好的设计,和好的设备。
  • 稳定
什么样的代码会稳定?现在公司里面,经过各种测试,基本上就标志的这个软件产品比较稳定了。

 

 

 对于开发人员来说,软件设计是最重要的。

这个不同的颗粒会有不同想法。

从最小的颗粒,方法,大小适中的方法划分,很是必要。我们经常可以看到长度达几百行甚至一两千行的代码。这种代码总是让我们头疼。深这个大概包括,良好的接口和类设计。如果很长,而且没有注释,那就更糟糕了。当然我们说方法最小不是说没有更小的,当然还有更小的颗粒。只是我觉得有些规则,比如说命名规范,大概大部分人都知道。虽然我们工作中还是会碰到有些人写的ABC,123这样的变量名。还有语句不要写太长,写太长了,自己都晕了,对不。

 

  • 接口和类的设计。

 

对于这点,很多人都只注重技术,而不关注业务,我个人觉得,离开的对业务和系统的了解,接口和类设计只是空中楼阁。然后就是面向对象的概念。那些类的成员是封闭的,那些成员是开放的。每个类的注释是必须的。

 

 

 

  • 组件的设计
这里的组件的概念就是一个assembly, 或者solution里面的一个Project. 这里的设计我想主要是提供给调用者一套类,有些时候这些类可以画成很好的类图。组件就需要文档了,否则在大的项目里面,几百个组件,根本搞不清这些组件分别是干什么的。当需要开发一个新功能的时候,也根本不知道时候有现成的组件和类可以调用,导致很多不同的组件里面有相似的类。

 

  • 数据库的设计 
好的逻辑设计,严格的约束,保证数据的完整性。好的物理设计,索引,表的分割,以及好的硬件。这些的软件开发人员来说都是至关重要的。

 

最后别忘了老板, 没有老板的投资,很多软件都诞生不了。老板当然想要的就是挣钱的软件。对于老板来说,大概有几点,

  • 能按期完成的软件
  • 高的客户满意度
  • 可控的成本 

 作为一个工程师老板的角度就不多谈了,这里有些要求跟客户和工程师有矛盾,有些是没有矛盾的。

标题和开篇所说的全场,就是这三种不同的角色。必须三个角色都满意,这样的软件才能hold全场。 

 

 今天先写到这里,有时间再修改。下回再讲如何开发和维护好的软件。

 

 

 

 

posted on 2011-12-20 20:42  旴江老段  阅读(248)  评论(0编辑  收藏  举报