【C/C++】面向对象开发的优缺点
原创文章,转发请注明出处。
面向对象开发的优缺点
面向对象开发 是相对于 面向过程开发 的一种改进思路。
由于流水线式的面相过程开发非常直接,高效。在面对一些简单项目时,只需要几百行,甚至是几十行代码,就能完成功能,并且运行良好。
- 直接:程序的运行过程一目了然,就像阅读一篇文章一样,只要顺着读下去就行了。不需要全文搜索哪里有伏笔,哪里有包袱。
- 高效:不需要复杂的框架,不需要设计模式。不需要纠结功能的划分。
但是【面向过程开发】也有自身的不足。在项目膨胀到一定程度的时候,维护成本,风险是几何倍数的增长。
- 多人同时开发一个功能,维护同一条程序流水线。每个人的思路不一样,修改方案不一样,上游的代码经常会干扰下游代码的运行。
- 模块需要升级,需要扩容,但是对之前的代码毫无了解。不知道从流水线的哪里开刀。不知道自己会不会干扰到功能的运行。
银色子弹?
随着现代计算机性能的提升,程序的复杂度提升。我们不得不考虑,能否有更好的方式来改善【面向过程开发】的劣势。
当前发展的比较好的一个方向,就是【面向对象开发】。
但是,必须强调的是,这并不意味着【面向对象开发】是更好的,更加优秀的,未来的趋势。
只有最合适的,才是最好的。
【面向对象开发】通过语法,面相对象设计原则等等,限制了一部分灵活性,又增加了一部分灵活性。
让代码既可以实现相对稳定,又可以实现对于扩展的包容。
相对稳定:开发一套成熟的框架,将不易发生变更的代码与易发生变更的代码隔离。(可以通过设计模式实现隔离。)
易扩展:通过多态,可以灵活的组装不同的功能实现方案。
|
原创内容,转发请注明出处。 博客园:https://www.cnblogs.com/gikoo 作者:Giraffe & Kangaroo |
|---|
浙公网安备 33010602011771号