`
icsnowing
  • 浏览: 40679 次
  • 性别: Icon_minigender_2
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

松耦合方式 or 紧耦合方式?

阅读更多
松耦合与紧耦合是实现Converged Application的两种方式。
松耦合方式:在一个Converged应用中,SIP Servlet和HTTP Servlet(或其他J2EE编程模式)分别独立实现,各自执行独立的功能,代码中没有互相调用,两种类型的Servlet上下文及相关配置分别在sip.xml和web.xml文件中指定。如果需要互相配合,则由第三者来控制它们之间的互相访问。PersonalAssistant即属于这种方式。
紧耦合方式:在一个Converged应用中,SIP Servlet和HTTP Servlet(或其他J2EE编程模式)分别独立实现,但二者之间可以互相访问,通常是在HTTP Servlet中去访问SIP Servlet。第三部分中的1.2 usecase的实现方式即属于这种类型。
比较:
(1)松耦合方式中HTTP Servlet和SIP Servlet实现互相独立,程序结构更加清晰;紧耦合方式需要同时掌握HTTP Servlet和SIP Servlet的编程方法,比如需要在HTTP Servlet中调用SIP Servlet的方法。
(2)紧耦合方式功能实现起来更加简便,比如可以直接从HTTP Servlet去控制一个SIP呼叫(可参见1.2 usecase),;而松耦合方式要想实现同样的功能,则还需引入别的控制功能模块。

总之,我认为:采用紧耦合方式对于功能实现更加方便。但由于目前支持紧耦合方式的JSR289的API(ConvergedHttpSession)还没有公布,在SailFin平台中对ConvergedHttpSession的支持程度如何还不确定,因此采用紧耦合方式实现converged应用的范围和灵活性有待考察。
分享到:
评论

相关推荐

    软件工程第四章.pdf

    1. 偶然内聚(Accidental or Coincidental Cohesion):模块内的组件之间没有明显的联系,只是因为偶然的原因放在一起,通常表明设计不佳。 2. 逻辑内聚(Logical Cohesion):模块中的组件有逻辑上的关联,但并不...

    PersistenceLayer持久层框架-Xxmm

    因为Xxmm封装各种数据库操作,并且完成ORMap(实体类-关系数据库的映射)。和程序员交互的只是类和对象。 如果数据库中表或者字段有所改变的话(你没有过这样的经历吗?),你的Class 中的代码无需改变或者只需要很少...

    加密专用处理器指令集设计.pdf

    文章中提到了一种新颖的细粒度源码分析技术,这种技术针对加密应用,对开源可扩展处理器OR1K的指令集进行了扩展,并以协处理器的形式与主处理器紧密耦合。 扩展的OR1K指令集设计考虑了加密算法的特性,通过这种方式...

    MySQL Galera集群的选择与性能测试

    • 紧耦合的 所有节点拥有相同的状态。 不允许不同节点之间的数据。 • 多线程的slave 获得更好的性能。 对于任何工作负载。 • 没有vip的主从故障转移操作或使用。No Master-Slave Failover(失效备援) Operations ...

    嵌入式体系课件讲义 实验手册

    嵌入式系统是“用于控制、监视或者辅助操作的机器、设备或装置”(原文为devices used to control, monitor, or assist the operation of equipment, machinery or plants)。 通常执行特定功能 嵌入式系统的核心---...

    使用依赖关系注入在ASP.NET Core中编写干净代码

    借助 ASP.NET MVC,ASP.NET 团队极大地提高了框架的支持以便编写松散耦合代码,但仍非常容易落入紧密耦合的陷阱,尤其是在控制器类中。  紧密耦合  紧密耦合适用于演示软件。如果你看一下说明如何构建 ASP.NET ...

    设计模式(16)-Bridge.pdf

    在实际开发中,桥接模式常用于框架设计,如图形库中图形对象(如圆形、矩形)与绘图方式(如填充、描边)的分离,或者在用户界面组件与渲染引擎的解耦等。通过理解和应用桥接模式,开发者可以创建更灵活、可扩展的...

    2005年4月全国计算机等级考试二级VB笔试试卷[归类].pdf

    7. 模块独立性:为了提高软件质量,模块应有高内聚(内部元素紧密相关)和低耦合(模块间相互依赖程度低)。所以,答案是B。 8. 软件定义:软件是程序、数据及相关文档的集合,不仅包含运行时的逻辑实体,也包括...

    设计模式之桥接模式BridgePattern

    桥接模式(Bridge Pattern)是设计模式中的一种结构型模式,它主要解决的是在软件设计中,当抽象和实现之间存在紧密耦合时,如何使这两者能够独立地变化。这种模式通过引入一个抽象层来分离接口和实现,使得它们可以...

    EL表达式详细介绍

    同时,合理运用EL可以提高代码的可读性和可维护性,但过度依赖可能会导致代码过于紧密耦合,不利于长期维护。 总结,EL表达式是JSP中一个强大的工具,它简化了对象访问和数据操作。理解并熟练掌握EL的语法和特性,...

    国家软件工程考试试题经典试题集合

    16. **耦合度**:在软件设计中,最低的耦合度是数据耦合,它表示模块间通过参数传递数据,而没有共享状态。 17. **SA和SD方法**:SA方法产生分层数据流图,而SD方法则产生模块结构图及模块的功能说明书。 18. **...

    全国计算机二级笔试复习资料.pdf

    1. 数据的存储结构:存储结构指的是数据在计算机内存中的组织方式,分为逻辑结构和物理结构。题目中提到的D选项"数据的逻辑结构在计算机中的表示"指的是数据如何在实际存储中体现其逻辑关系。 2. 栈的特性:栈是一...

    自动驾驶仪通过与飞行管理计算机PPT课件.pptx

    水平方式如导航模式、航向选择和VOR/LOC跟踪,提供飞机横向操纵指令;垂直方式如垂直导航、高度保持和垂直速度模式,负责飞机的俯仰控制。 自动推力(Auto Thrust, A/T)系统则根据飞机需求自动调节发动机推力,...

    2021-2022计算机二级等级考试试题及答案No.10533.docx

    、.null..OR..F.、.null.=.null.分别代表了三个逻辑表达式,它们的值分别为.F.、.null.和.null.。 11. 文件恢复:按Shift键删除的文件通常不能直接从回收站恢复,但使用专门的数据恢复工具可能可以找回。 12. WWW...

    计算机二级笔试题及答案.pdf

    12. 表达式求值:在VB中,3>2*2是False,a=c是False,b<>c是True,所以3>2*b Or a=c And b<>c Or c>d的值为True。 13. 字符串操作:Mid函数可以从字符串的指定位置开始提取子字符串。若a="MicrosoftVisualBasic",...

    C# 设计模式系列教程-桥接模式

    在软件开发中,经常会遇到类因为多个维度的变化而变得复杂,例如,一个系统可能需要支持多种不同的数据存储方式(如SQL Server、MySQL)和多种业务逻辑处理方式。如果这些变化被紧密地耦合在一起,将会导致类的复杂...

    2021-2022计算机二级等级考试试题及答案No.14862.docx

    14. **逻辑运算**:在表达式`3>8-3 OR 10+2`中,由于3>5且10+2为真,所以整个表达式的结果为真(True)。 15. **Java main方法参数**:Java主方法`main`的参数数组`args`如果没有传入参数,其长度为0。 16. **内存...

    教材计算机二级试题.pdf

    12. **VB表达式**:表达式3>2*b Or a=c And b<>c Or c>d中,因为3>2*4(即3>8)为False,a=c也为False,但b<>c为True,所以整个表达式的结果取决于最后的条件,即c>d,这里c=3,d=2,所以表达式的结果为True,选B。...

    那年4月全国计算机等级考试二级VB笔试试卷.pdf

    12. 表达式3>2*b Or a=c And b<>c Or c>d中,由于3*4,a≠c,b≠c,c≤d,故整个表达式的值为False,即C选项正确。 13. 若要提取字符串a中从第11位开始的10个字符,即"VisualBasic",应使用Mid函数,所以D选项正确...

Global site tag (gtag.js) - Google Analytics