项目之软件project(我专业四年都未曾知道这四个字的含义,几句话便懂了)

时间:2020-12-22 22:48:24

潘鹏在CSDN上原创。如其它站点转载请注意排版和写明出处:

软件project本质

一级标题 控制 质量

二级标题  成本  扩展  高内聚低耦合 效率

控制

成本:企业要求的是以最快的速度完毕可正常执行的软件

须要多少人力做

多长时间能做好

-----控制好成本利润很多其它

扩展:

用户要求改动原先的某个功能,怪用户之前怎么不计划好

用户今添个功能

用户明删个功能

把项目分成几个模块。把人力划分完毕相应的一个模块。然后这个人边抽烟边说那个人没做完我这不知道怎么做。那个人说我还在等他呢,也去抽根烟

这几个人做完了要把几个模块合在一起串行检測。出了个错你怪我,我怪你

----面向对象来做,改哪里找到对应的那点代码改了,不像面向过程一样牵一发而动全身,划分了模块

----面向对象来做。这几个模块几个人商议好接口。自己做自己的去吧。等什么呢

----面向对象来做,谁错了来查各自模块,看看你传给我的数据对不正确。是不是我做的模块有问题

---问题局部化

(我不是推崇面向对象,继续往下看)

质量:

高内聚低耦合:

内聚要高:搞好内部团结。

你要这个功能是吧,我这个模块里面实现这个功能的代码条理清晰、结构好,紧密联合在一起

耦合要低:和外部联系。

你要用我这个模块是吧,你传一个东西即可了。我给你搞定,不用你这个那个的,要不你就糅合在一起

效率:

面向对象好,由于结构好,好拓展,好维护。执行的慢是慢了。能慢多少,CPU用的完吗。至于省那点吗,又不是科研或者那种多一点点就会崩的

面向对象不好。小程序不是必需的。弄的东西多,执行还变慢了

面向过程好,一个小程序,编出来的速度非常快,不用去分析需求、建模的,还执行的快

面向过程不好。我要是一个大的项目怎么办,企业里上万甚至数十万的代码怎么维护,改了这带出了那的BUG

无论面向对象还是面向过程,都仅仅是对代码的一种组织形式。就像链表和数组一样的,怎么适用怎么来