问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

面向对象还是现代软件开发中的主流思想吗

发布网友 发布时间:2022-04-30 13:40

我来回答

2个回答

热心网友 时间:2022-06-22 17:37

实际上一般开发中大部分时间内, 主要的逻辑思考还是面向过程的. 比如循环, 判定, 跳转等等. 基本上各种算法都是面向过程的.
说说面向对象的时候, 一般已经开始上升一个层次, 比如说面向对象的程序设计. 此时需要切分各个功能模块的粒度, 组成, 依赖, 那么就要开始引入设计模式的一些思想来解决通用的设计问题. 这个阶段将会大量引入面向对象的设计思想, 但是我见过很多人在这个阶段滥用设计模式, 以及一些面向对象的概念. 最终写出来的代码是很高大上, 各种接口, 各种模式, 各种难用.
还有另外一些不同的设计方向, 比如你告诉我SQL是面向过程还是面向对象的? 一个LINQ放在代码里算是过程还是对象?
此外还有一些其他的软件设计思想, 小的比如说AOP, 大的比如说SOA, 微服务. 其实都是在解决一个矛盾, 那就日益扩大的代码规模和人类有限的认知能力之间的差异, 所以无论是面向过程, 对象, 切面, 函数的编程, 都是为了隐藏实现细节而简化系统认知的一种手段. 当然, 隐藏细节但又可以保证系统按照逻辑正常运行, 这是各种编译/链接系统的功劳.
最终, 这是一个人脑, 编译器, 软件各方面妥协/折中的产物. 在不同层次, 不同目的, 不同系统, 妥协的方向都各有不同, 开发人员接受的训练也各有不同. 我个人是不太赞成OO是开发主要思想这个论断的.

热心网友 时间:2022-06-22 17:37

聪明的程序员用DELPHI
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
临沂比较有名的男装品牌 呼伦贝尔市悦动网络科技有限公司怎么样? 呼伦贝尔中汇实业有限公司怎么样? 呼伦贝尔油玉不绝电子商务有限公司怎么样? 如何避免wps卡顿? 属鼠的男人找对象是属什么,属鼠的人和什么属相合 96年鼠的姻缘在哪年 属相相合年份运势提升 2024属鼠找对象属什么最佳 黑客攻击网站能报案吗 黑客攻击报案有用吗 王者荣耀s18赛季12级前怎么开启局内打字聊天? 王者邀请的时候怎么打字 王者荣耀游戏中怎么设置局内打字 王者荣耀哪里开启局内打字 lol局内打字怎么开 东北的双非一本大学有多少? 美国加州有哪些著名的院校 《王者荣耀》局内打字队友看不见怎么办? 王者荣耀怎么开启局内打字聊天 高考志愿填报有什么app能够分析适合的学校吗? 单招院校查询用哪个软件 能查各所大学的网站 任大霖的人物年表 任大霖的父亲是谁? iphone怎么看用蓝牙传输的由爱奇艺下载的视频 任大霖的作者简介有什么? 爱奇艺视频可以用蓝牙传么? 《牛和鹅》的作者是谁? 华为mate7爱奇艺下载的视频想蓝牙传到另一个手机怎么传 在爱奇艺里面缓存的电影怎么用蓝牙传到别的手机里面 《王者》局内打字开关在哪? lol进行局内打字哪个键 学前儿童体育锻炼卫生原则 支付宝怎么注册 体能训练要遵循的原则 不同年龄段的儿童该如何进行体能训练 华为p9pius投屏点开设置--点开高级设置没有多屏互动-也找不到编辑 华为p9支持分屏功能吗 一个人有几个手机号就能注册几个和支付宝账号,对吗? 怎么屏蔽qq群的对话 梦见房子碰了到处在建造房子 梦见回老家看见到处在造房子 圆通快递18位数字怎样查物流? 戴尔g3蓝屏怎么解决 dell g3蓝屏 DELL G3电脑隔三差五出现蓝屏,要求重启是什么情况?怎么解决? dellg3上钉钉蓝屏死机 戴尔G3笔记本装完官方网站的驱动老蓝屏重启怎么办? 戴尔G3 i7-9750H,1660Ti,开机蓝屏什么原因? 戴尔g3 2060换系统蓝屏