sca(什么是SCA?)
题图来自Unsplash,基于CC0协议
本文目录
正文
1、什么是SCA?
SCA 是 Senate Constitutional Amendment 的缩写。 SCA no. 5 是在加州参议院提出的加州宪法修正案 5.在1996年加州通过了著名的209提案,也叫加州民权提案。 该提案修改加州宪法,禁止州政府在公务员招募,公共服务合同签订,和公共教育中考虑种族,性别,和族群因素。这个提案让加州成为全美第一个禁止公立大学以种族因素为录取标准之一的州。(即仅以成绩为录取标准)在209提案通过后随即很多州跟进,掀起了学校以成绩为衡量标准的浪潮。此次SCA 5 是想删除掉209提案中任何提到 “公共教育” 的文字。实质是要求公立大学考虑种族,性别,族群的因素。
2、SCA啥意思?
SCA全称Service Component Architecture,即服务组件框架。它由BEA、IBM、Oracle等知名中间件厂商联合制定的一套符合SOA思想的规范。 SCA在2005年11月,发布了0.9版本的规范,其中包括了组装模型规范,Java/C++客户端以及其实现规范。2006年4月,整个SCA规范有了很大的改进,推出了对应的0.95版本。2007年3月,SCA的1.0版本终于发布。 服务组件框架(SCA)提供了一套可构建基于面向服务的应用系统的编程模型。它的核心概念是服务及其相关实现。服务由接口定义,而接口包含一组操作。服务实现可以引用其他服务,称为引用。服务可以有一个或多个属性,这些属性是可以在外部配置的数据值。 SCA中的一个关键推动因素是Service Data Object(服务数据对象,SDO)。 SCA组件被组成为程序集。程序集是服务级的应用程序,它是服务的集合,这些服务被连接在一起,并进行了正确的配置。SCA程序集运行在两个级别:第一种情况,程序集是系统内的一组松散连接的组件;另一种情况,程序集是模块内的一组松散连接的组件。二者的区别在于,一般来说,模块是组件的集合,而系统是模块的集合。此外,系统对应于“大规模编程”(programming in the large或megaprogramming),而模块对应于“小规模编程”(programming in the small) 将组件连接到它所依赖的服务的方式就是服务网络“装配”的方式。程序集已经在许多技术和框架中广为应用,比如CORBA、J2EE、ATG Dynamo和Spring,也就是说,它并不是新出现的。从这些技术中我们可以知道,程序集提供了许多重要的优点,比如更轻松的迭代开发,以及避免使业务逻辑依赖于中间件容器。SCA使用程序集解决了许多SOA开发中的重要问题,包括: 业务逻辑与底层基础架构、服务质量和传输的分离。 “小规模编程”与“大规模编程”的联系。 为架构的设计、编码和操作性部署在自底向上(bottom-up)和自顶向下(top-down)两种方法中来回切换提供了一种统一的方式。
3、SCA是什么?
它可简化使用 SOA 进行的应用程序开发和实现工作。动机SCA 可简化使用 SOA 构建的业务应用程序的创建和集成。SCA 提供了构建粗粒度组件的机制,这些粗粒度组件由细粒度组件组装而成。SCA 将传统中间件编程从业务逻辑分离出来,从而使程序员免受其复杂性的困扰。它允许开发人员集中精力编写业务逻辑,而不必将大量的时间花费在更为底层的技术实现上。SCA 方法的优势包括:★简化业务组件开发★简化作为服务网络构建的业务解决方案的组装和部署★提高可移植性、可重用性和灵活性★通过屏蔽底层技术变更来保护业务逻辑资产★提高可测试性