shadowstar (天做期盘星做子Vff0c;谁人敢下Vff1f;) :回覆你的几多个问题。
首先是效率Vff0c;尽管有些人常常说面向对象的步调不会比面向历程效率低Vff0c;可我总感觉要差一点Vff0c;最少类的结构析构正在历程里是不须要的Vff0c;而那一局部对效率的要求很高。
------------------------------------------------------------------------------
结构析构函数自身的开销应付如今的计较机来说是微有余道的Vff0c;除了极非凡的状况Vff0c;正常不会映响效率。假如显现效率问题Vff0c;正常是由于你的对象设想目的有问题Vff0c;招致存正在不少没必要要的资源初始化/开释历程Vff1b;比如说数据库使用Vff0c;假如每个对象都要停行数据库连贯/开释Vff0c;作做会有效率问题。假如你简曲停行过机能检查Vff0c;确定是结构析构函数自身的函数挪用开销招致机能问题Vff0c;这么我假定你运用的是C++Vff0c;因为正常那样机能攸关的步调都会选择C++来作。可以去看看Inside C++Vff0c;EffectiZZZe C++Vff0c;More EffectiZZZe C++Vff0c;有不少进步机能方面的能力。
其次是构造Vff0c;那一局部和底层联结比较严密Vff0c;假如运用对象必须有一个控制模块卖力中转Vff0c;而用历程的办法可以用插件的模式真现Vff0c;构造很明晰。
------------------------------------------------------------------------------
OO步调真现插件方式更简略明晰Vff0c;有不少现成的形式Vff0c;比如AdapterVff0c;Facade等。引荐读一下《设想形式》。
最后是真现Vff0c;假如用对象Vff0c;系统显得很复纯Vff0c;出格是控制中转的模块Vff0c;要统筹底层和对象两方面Vff1b;而历程的办法只要几多个函数接口Vff0c;间接取底层挂接Vff0c;简略明了。
-------------------------------------------------------------------------------
OO系统中设想模块时要选择好露出哪些接口类。假如你的模块设想目的明晰Vff0c;这终须要露出的类就不会不少。而接口类之间由于有一定联系干系干系Vff08;比如Vff0c;User-(haZZZe)->PriorityVff09;Vff0c;单个的类public的办法也会有一些作做的语义上的联络Vff08;比如Vff0c;Person类有大众办法GetName()Vff0c;GetAge()等Vff09;Vff0c;所以了解上正常会比面向历程的模块更容易一些。显得复纯只能说是设想的问题Vff0c;招致须要露出的接口类过多Vff0c;干系不明白。
面向对象取面向历程能否可以混折运用Vff1f;
-------------------------------------------------------------------------------
没有什么是绝对不成以的。假如某个径自模块Vff0c;由于非凡起因必须给取差异的战略Vff0c;这么也不会有什么太大的问题。但是假宛如一模块内部Vff0c;同时运用OO和POVff0c;这么会Vff08;1Vff09;首先Vff0c;须要很高的设想和真现能力Vff0c;才华够同时阐扬两者的利益Vff0c;而不会组成负面映响Vff08;比如PO中罕用的全局变质Vff0c;宏Vff0c;你须要担保它们不向OO局部浸透Vff1b;同样Vff0c;PO步调中应付一些内部类的欠妥运用也会很容易招致构造僵化Vff0c;而很难检查那种运用能否得当Vff09;Vff1b;Vff08;2Vff09;其次Vff0c;因为能力性要求很高Vff0c;应付其余人浏览你的代码或设想带来了省事Vff1b;Vff08;3Vff09;目前OO和PO都有其折营的建模工具Vff0c;正在Code Style上也有一定的区别Vff0c;以及Unit Test工具等等Vff1b;这么你正在选择那些工具时就会遭到很大的限制。
除了比较简略的模块Vff0c;面向历程会比面向对象真现效率上有一定劣势Vff0c;以及很是底层的系统级开发OO编译器不撑持Vff0c;大概是机能极度重要的状况Vff0c;90%以上OO比PO更有劣势。
来了! 中公教育推出AI数智课程,虚拟数字讲师“小鹿”首次亮...
浏览:82 时间:2025-01-13变美指南 | 豆妃灭痘舒缓组合拳,让你过个亮眼的新年!...
浏览:63 时间:2024-11-10【产业互联网周报】商务部回应荷兰半导体出口管制;美团收购光年...
浏览:10 时间:2025-02-13西南证券维持圣邦股份买入评级:应用拓展,结构优化,模拟IC龙...
浏览:9 时间:2025-02-22Python编程语言中的翻译库应用与多语言支持实现指南...
浏览:3 时间:2025-02-22无审查限制的Llama 3.1大语言模型 适配GGUF格式...
浏览:6 时间:2025-02-23英特尔StoryTTS:新数据集让文本到语音(TTS)表达更...
浏览:8 时间:2025-02-23