Atitit 编程语言编程方法的进化演进 sp COP ,AOP ,SOP
Atitit 编程语言编程方法的进化演进 sp COP ,AOP ,SOP
1.1. Sp oop》》COP ,AOP ,SOP1
1.2. Sp oop 结构化方法SP(Structured Programming)1
1.3. COP ,AOP ,SOP面向服务编程(Service-Oriented Programming)? 一个完整的组件中一般有一个主类,而其它的类和元素都是为了支持该主类的功能实现而存在的。我们使用的DLL文件就是组件。还有COM组件……1
1.4. 关于dop (关注与性能提升,不是和普通编程)2
1.5. 编程方法进化的未来??是不是已经到底了,很可能 参考人类进化也就67层分支2
1.1. Sp oop》》COP ,AOP ,SOP
1.2. Sp oop 结构化方法SP(Structured Programming)
1.3. COP ,AOP ,SOP面向服务编程(Service-Oriented Programming)?
一个完整的组件中一般有一个主类,而其它的类和元素都是为了支持该主类的功能实现而存在的。我们使用的DLL文件就是组件。还有COM组件……
COP的目标是粗粒度的复用,它的核心是接口。其实就是隔离变化,让系统的构建更加灵活可变。
OOP基础 -- 接口与实现分离;OOP核心 -- 接口和实现分离的更高级升华
组件技术的主要目标是复用--粗粒度的复用,不是类的复用,而是组件的复用,如一个DLL,一个中间件,甚至一个FrameWork。
对于COP的思考:这种面向组件式的编程思想其实应该源自建筑行业,从现实生活中来看,我们建造房子的历史要远远早与软件开发和设计。在我们建造房子的过程中,我们就是用面向组件的方式进行的。可以将一块块的柱子,砖头,钉子,门,锁等建造房子所必须的构建看做是组件,在建造房子的过程中直接进行组合构建而成。这个过程非常灵活,哪里坏了换哪里
什么是面向服务编程(Service-Oriented Programming)?
SOP是一种体系结构,目标是在软件代理交互中获得松散耦合。一个服务是一个服务提供者为一个服务消费者获得其想要的最终结果的一个工作单元。服务者与消费者都以软件代理代表他们自己的角色。
SOP的思想明显不同于面向对象的编程,面向对象编程强烈的建议你应该将数据与其操作绑定。因此在面向对象编程风格中,每张CD 有它自己的CD播放机,他们之间不能被拆开。这听起来很奇怪,但是这就是我们建立许多已存软件系统的方式。
而SOP就不一样了,为了减少异构性、互操作性和不断改变的要求的问题,这样的体系结构应该提供平台来构建具有下列特征的应用程序服务:
1.4. 关于dop (关注与性能提升,不是和普通编程)
早在09年时 sony就在ps3上指出了oop设计容易产生的cache miss现象。dice也在那之后发表了多篇和dop相关的文章。但除了游戏领域以外,dop的思想并没有被特别的重视。感觉有点遗憾。
1.5. 编程方法进化的未来??是不是已经到底了,很可能 参考人类进化也就67层分支
元》》动物》》脊椎动物》》两栖动物》》爬行动物》》哺乳动物。。。
参考
1.1 软件开发方法的演进 3
1.1.1 结构化方法SP(Structured Programming) 3
1.1.2 面向数据结构的软件开发方法DOP(Data-Oriented Programming) 4
1.1.3 面向问题的分析法PAM(Problem Analysis Method) 5
1.1.4 面向对象编程OOP(Object-Oriented Programming) 5
1.1.5 面向界面的可视化开发方法 7
1.1.6 组件化编程CP(Component Programming) 8
1.1.7 面向方面编程AOP(Aspect-Oriented Programming) 8
1.1.8 面向服务架构SOA(Service-Oriented Architecture) 9
作者:: 绰号:老哇的爪子claw of Eagle 偶像破坏者Iconoclast image-smasher
捕鸟王"Bird Catcher 王中之王King of Kings 虔诚者Pious 宗教信仰捍卫者 Defender Of the Faith. 卡拉卡拉红斗篷 Caracalla red cloak
简称:: Emir Attilax Akbar 埃米尔 阿提拉克斯 阿克巴
全名::Emir Attilax Akbar bin Mahmud bin attila bin Solomon bin adam Al Rapanui 埃米尔 阿提拉克斯 阿克巴 本 马哈茂德 本 阿提拉 本 所罗门 本亚当 阿尔 拉帕努伊
常用名:艾提拉(艾龙), EMAIL:1466519819@qq.com
头衔:uke总部o2o负责人,全球网格化项目创始人,
uke宗教与文化融合事务部部长, uke宗教改革委员会副主席
,Uke部落首席大酋长,
uke制度与重大会议委员会委员长,uke保安部首席大队长,uke制度检查委员会副会长,
奶牛科技cto ,uke 首席cto
uke波利尼西亚区大区连锁负责人,克尔格伦群岛区连锁负责人,莱恩群岛区连锁负责人,uke汤加王国区域负责人。布维岛和南乔治亚和南桑威奇群岛大区连锁负责人
Uke软件标准化协会理事长理事长 uke终身教育学校副校长
Uke 数据库与存储标准化协会副会长 uke出版社编辑总编
Uke医院方面的创始人
转载请注明来源:attilax的专栏 ?http://blog.csdn.net/attilax
--Atiend
Atitit 编程语言编程方法的进化演进 sp COP ,AOP ,SOP相关推荐
- Atitit.编程语言原理---方法重载的实现与设计 调用方法的原理
Atitit.编程语言原理---方法重载的实现与设计 调用方法的原理 1. 重载包括:普通方法的重载和构造方法的重载 1 1.1. 横向重载"和"纵向重载"1 1.2. ...
- 关于OOP/COP/AOP/SOP的编程、开发(软件工程)和架构的模式的阐述
面向对象编程(OOP).面向组件编程(COP).面向方面编程(AOP)和面向服务编程(SOP) 1.什么是面向对象编程(Object-Oriented Programming)? 2.什么是面向组件 ...
- 编程思想(POP,OOP,COP,AOP,SOP) 整理
面向过程(procedure oriented programming) POP 一种以过程为中心的编程思想,分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个 ...
- Atitit 软件架构方法的进化与演进cs bs soa roa msa attilax总结
Atitit 软件架构方法的进化与演进cs bs soa roa msa attilax总结 1.1. 软件体系架构是沿着单机到 CS 架构,再到 BS 的三层架构甚至多层架构逐步发展过来的,关于 ...
- Atitit.异步编程 java .net php python js 对照
Atitit.异步编程 java .net php python js 的比較 1. 1.异步任务,异步模式, APM模式,, EAP模式, TAP 1 1.1. APM模式: Beg ...
- 《Arduino开发实战指南:LabVIEW卷》——3.2 LabVIEW的数据流编程方法
本节书摘来自华章计算机<Arduino开发实战指南:LabVIEW卷>一书中的第3章,第3.2节,作者:余崇梓著, 更多章节内容可以访问云栖社区"华章计算机"公众号查看 ...
- 独立式键盘的编程方法 按键的去抖动原理和基本方法
独立式键盘的编程方法 按键的去抖动原理和基本方法 A P3.2 开始 按此键则灯开始流动(由左向右) B P3.3 停止 按此键则停止流动 所有灯为灭 C P3.4 向左 按此键则灯反向流动 由 ...
- Atitit 面向对象编程(OOP)、面向组件编程(COP)、面向方面编程(AOP)和面向服务编程(SOP)的区别和联系...
Atitit 面向对象编程(OOP).面向组件编程(COP).面向方面编程(AOP)和面向服务编程(SOP)的区别和联系 1. 面向组件编程(COP) 所以,组件比起对象来的进步就在于通用的规范的引入 ...
- sql编程接收一个集合_T-SQL中基于集合的程序编程方法简介
sql编程接收一个集合 介绍 (Introduction) Most IT professionals started their studies or careers by learning pro ...
- Step7编程语言编程概述结构
Step7编程语言&编程概述&结构 一.Step7中三种基本编程语言 1:梯形图 LAD 梯形图(LAD): 类似继电器控制电路图,适合于熟悉 继电器控制电路的用户使用. 3:语句表 ...
最新文章
- 科学家王海峰:从百度十篇论文入选ACL 2019说起
- vs2008编译中文变量名的lua解释器环境
- python struct.pack()函数 (返回一个字节对象,其中包含根据格式字符串fmt打包的值v1,v2,...)
- golang键盘输入:从控制台获取信息
- 使用Pass提高效率
- wpf treeview调整子菜单间距_完全由C编写,高度可移植,超级牛逼的菜单架构!...
- ios 怎么判断字符串的字节数_如何用IOS判断字符串是不是纯数字
- Vim自动补全插件-NeoComplCache
- 甘肃暴雨强度公式_最新给排水计算软件,16大功能常用公式自动计算,配11套施工方案...
- 刘鹏计算广告学听课笔记 第二章:合约广告系统(一)
- qpython3.0.0_qpython3
- 构造地质学类毕业论文文献包含哪些?
- 苹果手机怎么关闭爱奇艺自动续费_爱奇艺回应涨价为用户创造优质服务,小编建议用户先关闭自动续费...
- 2022微信大数据挑战赛优胜方案总结
- java计算机毕业设计计算机课程在线培训学习管理系统MyBatis+系统+LW文档+源码+调试部署
- UE4(Unreal Engine 4)显示FPS
- docker启动容器
- centos7安装pip
- android fagment 重叠问题
- 车流量 题解-【统计】
热门文章
- 第二章计算机组成原理例题,计算机组成原理习题第二章运算方法和运算器
- 如何去除小程序button的边框
- JavaScript—常见设计模式整理(27)
- [BZOJ1045] [HAOI2008] 糖果传递 (中位数)
- 系统评测指标:准确率(Accuracy)、精确率(Precision)、召回率(Recall)、F-Score
- 如何开拓中国EDM市场
- Mybatis-学习笔记(2)Mybatis配置文件
- npm 代理的设置和取消
- python - 安装/解释器/变量
- sklearn交叉验证2-【老鱼学sklearn】