面向Agent的系统架构

面向Agent的编程AOP,是在OO编程上的不足,提出来的概念,但AOP不是万金油,它的提出也只是为了解决某些方面的问题,尤其是是现实世界中面临的问题,可以大量使用AOP。

AOP的一个重要特点,就是编程时不再仅仅只是用对象的思维来考虑问题,而是要更进一步,用Agent智能体的思维去考虑问题。

如果你需要处理一个售票业务,那你就可以构思一个售票员Agent;

如果你需要处理一个订餐业务,那你就可以构思一个服务员Agent;

如果你需要发布一个新闻信息,那你就可以构思一个快递员Agent;

智能体Agent的特点:

1.你无需再去new一些对象,而是可以直接继承一个Agent;

2.你无需再去对象中创建公共方法,而是实现一些Behaviour;

3.你无需再用if else switch case等去判断方法和逻辑的执行条件,只需要实现Agent的状态即可;

据我所知,目前这种编程模式已经在ThinkPHP、Yii等框架中开始实现,不管作者是有意还是无意,方法和类的命名已经向AOP规范在靠拢。

总之,Agent智能体框架大大扩展了原始面向对象的范畴,将面向对象的抽象问题进行了现实化的一种替代和补充,有力的解决了抽象问题与现实逻辑的矛盾

面向Agent的编程早在2009年就提出来了,之所以没能广泛发展和使用,就在于实现一个Agent框架的不易,需要专业知识的积累和Agent标准的制定!

更重要的一点,AOP只是用来补充OOP的不足,解决一些现实世界中复杂的问题,而通常的一些信息管理系统,使用OOP就足够了。

1.我们是否需要自己的一个AOP框架?

这个要看我们使用的业务是否复杂到OOP已经无法胜任的地步,如果OOP可以解决,并且很容易被开发团队理解,则没必要使用AOP。

2.智能体框架是一种智能编程助手吗?(类似于钢铁侠中的助手机器人)

这完全是两个概念,面向智能体编程只是一种编程思想,与我们想要的编程助手是两码事,编程助手是一个实实在在的智能体。

3.我如果想要构建一个编程助手,是否需要AOP框架?

目前来看,AOP框架只是为了程序员方便使用AOP思想,正如Spring之于依赖注入(AOP,虽然缩写一样,但概念完全不一样)一样,所以系统需要怎么来就怎么做吧,AOP并不是必需品!

时间: 2024-08-07 11:15:18

面向Agent的系统架构的相关文章

面向海量数据的高并发高可用分层系统架构设计

近期参与一个互联网项目,按照该项目的需求设计了分层的系统架构,主要目的是高并发高可用,能够根据用户访问量和并发情况进行伸缩. 第一个部分是由Web服务器和应用服务器构成的负载均衡区.该区域的主要目标是分散用户的访问量,平衡各服务器的压力,提高各服务器的资源利用率,因为大多数网站都是属于IO密集型,因此可以利用线程池增加并发处理能力,采用多核多内存的资源配置模式.可以采用Apache+Tomcat或Nginx+Jboss来实现,其中消息服务器通过异步处理机制可以提高系统响应速度,增加用户体验. 第

秒杀系统架构分析与实战

0 系列目录 秒杀系统架构 秒杀系统架构分析与实战 1 秒杀业务分析 正常电子商务流程 (1)查询商品:(2)创建订单:(3)扣减库存:(4)更新订单:(5)付款:(6)卖家发货 秒杀业务的特性 (1)低廉价格:(2)大幅推广:(3)瞬时售空:(4)一般是定时上架:(5)时间短.瞬时并发量高: 2 秒杀技术挑战 假设某网站秒杀活动只推出一件商品,预计会吸引1万人参加活动,也就说最大并发请求数是10000,秒杀系统需要面对的技术挑战有: 对现有网站业务造成冲击 秒杀活动只是网站营销的一个附加活动,

dubbo框架----探索-大型系统架构设计(图解)

对于高并发系统的架构要求: 1. 负载均衡 2.高并发 3.高可用 4.面向服务架构 (Dubbo框架使用) 5.分布式缓存 (redis分布式缓存) 6.分布式全文检索 (solr分分布式全文检索) 7.分布式数据库集群 (mycat 集群mysql数据库) dubbo  简介 系统架构 redis 集群 solr 集群 mysql 集群

ios系统架构及常用框架

1.iOS基于UNIX系统,因此从系统的稳定性上来说它要比其他操作系统的产品好很多 2.iOS的系统架构分为四层,由上到下一次为:可触摸层(Cocoa Touch layer).媒体层(Media layer).核心服务层(Core Services layer).核心操作系统层(Core OS layer)如图: (1) 触摸层:为应用程序开发提供了各种常用的框架并且大部分框架与界面有关,本质上来说它负责用户在iOS设备上的触摸交互操作.它包括以下这些组件: Multi-Touch Event

面向服务的体系架构(SOA)—架构篇

面向服务的体系架构(SOA)-架构篇 1.面向服务的体系架构(SOA) 面向服务的架构(service-oriented architecture)是Gartner于2O世纪9O年代中期提出的面向服务架构的概念.2002年的l2月,Gartner提出"面向服务的架构(SOA)"是"现代应用开发领域最重要的课题"之后.国内外计算机专家.学者掀起了对SOA的积极研究与探索. 在分布式的环境中,将各种功能都以服务的形式提供给最终用户或者其他服务.如今,企业级应用的开发都采

适应多场景应用的web系统架构探讨

背景: 虽然身处互联网时代,但还有很多信息系统仍运行在内部网络中,例如,企事业内部的OA系统,医院的HIS系统,银行的管理系统等.软件公司会针对系统应用环境,对信息系统进行逻辑业务上的修改.因此,本文主要介绍一种适应于多场景应用的web系统架构,供相关人员讨论研究. 1 系统框架图 2 分层的优势 (1)解耦:降低代码耦合度,允许前后端的分离,显示与业务的分离,前端开发与后台开发的分离. (2)复用:面向接口编程,面向接口实现,面向接口形成文档,提高接口函数的复用. (3)固化通用业务逻辑. (

Unity3D手游开发日记(2) - 技能系统架构设计

我想把技能做的比较牛逼,所以项目一开始我就在思考,是否需要一个灵活自由的技能系统架构设计,传统的技能设计,做法都是填excel表,技能需要什么,都填表里,很死板,比如有的技能只需要1个特效,有的要10个,那么表格也得预留10个特效的字段.在代码里面也是写死一些东西,要增加和修改,就得改核心代码,如果我要把核心部分做成库封装起来,就很麻烦了. 能不能做成数据驱动的方式呢? 改技能文件就行了,即使要增加功能,也只需要扩展外部代码,而不用改核心代码, 我是这么来抽象一个技能的,技能由一堆触发器组成,比

秒杀系统架构分析与实战(参考、转载)

目录[-] 0 系列目录 1 秒杀业务分析 2 秒杀技术挑战 3 秒杀架构原则 4 秒杀架构设计 4.1 前端层设计 4.2 站点层设计 4.3 服务层设计 4.4 数据库设计 4.4.1 基本概念 4.4.2 设计思路 5 大并发带来的挑战 5.1 请求接口的合理设计 5.2 高并发的挑战:一定要“快” 5.3 重启与过载保护 6 作弊的手段:进攻与防守 6.1 同一个账号,一次性发出多个请求 6.2 多个账号,一次性发送多个请求 6.3 多个账号,不同IP发送不同请求 7 高并发下的数据安全

2014系统架构师大会随感

前言: 关于在2014会场上的一点随记. 系统架构师大会第二天,上午依然是一个主会场.四个议题,第一个来自腾讯,主要讲解是研发团队的组织和管理,一个非常精彩的议题,当然相对于腾讯这个巨无霸而言,团队的高效率和组织管理还是非常有一套的,基于矩阵的管理,小团队的模式等还是比较实用的团队管理技巧. 第二个议题是某家厂商对性能监控管理的内容,主要是讲述了基于App的性能监控和基于服务端的性能监控分析的解决方案.技术上的内容无非就是那些我们可以想象得到的内容,其中比较出彩的部分是关于其加入锚点之后,针对程