This is a book about component-based software engineering (CBSE). CBSE<br>is the emerging discipline of the development of software components and the<br>development of systems incorporating such components. Component-based<br>systems are built by assembling components developed independently of the<br>systems. To assemble components, a proprietary code that connects the components<br>is usually needed. This code is often referred to as glue code. In an<br>ideal world of components the assembly process would be smooth and simple.<br>The effort required to obtain the glue code would be practically negligible; a<br>system incorporating components would know everything about themtheir<br>operational interfaces and their nonfunctional properties and the components<br>would be exactly what the system needs; in short, components could be<br>assembled as easily as Lego blocks. 《构建可靠的基于组件的软件系统》是一本关于组件化软件工程(CBSE)的专业书籍,主要探讨了如何开发软件组件以及如何将这些组件构建成为可靠系统。CBSE的核心是利用独立开发的组件来构建系统,这通常需要一种连接组件的专有代码,即所谓的“胶水代码”。理想情况下,组件的组装过程应该是顺畅且简单的,获取胶水代码的成本极低,系统对组件的了解全面,包括其操作接口、非功能属性,且组件恰好满足系统的需要,就像乐高积木一样可以轻松拼接。 书中深入讨论了组件化系统的设计与实现,涵盖了以下几个关键知识点: 1. **组件设计**:组件是软件的可重用部分,它们具有明确定义的接口和行为,可以在不同系统中复用。良好的组件设计应考虑到接口的清晰性、功能的完备性和可扩展性。 2. **胶水代码**:连接组件的代码是CBSE中的一个重要概念,它负责实现组件间的交互。胶水代码的编写和管理对于系统的灵活性和可维护性至关重要。 3. **组件接口**:组件的接口定义了它与其他组件交互的方式,包括输入、输出和事件处理。接口设计需要确保兼容性和互操作性,以允许组件无缝集成。 4. **非功能属性**:除了功能性需求,组件还应考虑性能、安全性、可伸缩性、容错性和其他非功能属性。这些属性在系统整体表现和可靠性中起着关键作用。 5. **组件的可组合性**:理想情况下,组件应像乐高积木一样易于组合。这意味着组件应具有标准化的接口,能够适应各种系统架构,并且在组装时不会产生冲突或不兼容问题。 6. **系统组装**:组件的集成策略和过程是CBSE中的关键环节。这涉及组件选择、依赖管理、测试和部署,确保组件在实际运行环境中能够协同工作。 7. **质量保证**:为了确保组件系统的可靠性,需要进行严格的测试和验证,包括单元测试、集成测试和系统测试,以检测和修复潜在的问题。 8. **组件版本管理**:随着组件的更新和改进,版本管理变得至关重要。有效的版本控制策略可以帮助保持系统的稳定性和兼容性。 9. **服务级别协议(SLA)**:组件和服务提供者通常会定义SLA,以明确组件的性能指标和可用性承诺,这对于依赖这些组件的系统来说非常重要。 10. **组件市场和生态**:一个成熟的组件生态系统可以促进组件的共享和复用,降低开发成本。书中可能还会讨论如何建立和维护这样的市场,以及如何评估和选择第三方组件。 《构建可靠的基于组件的软件系统》这本书为读者提供了全面的指导,帮助他们理解和实践组件化软件开发,以创建高效、可靠且易于维护的软件系统。通过学习和应用书中的原则和最佳实践,开发者可以提高软件开发的效率,同时确保系统的灵活性和扩展性。
剩余451页未读,继续阅读
- weinifoyo2011-10-31太次了,文件不完整,无法打开,坑爹啊
- sayhikids2019-11-19马扁子。根本不是pdf文件
- 粉丝: 18
- 资源: 8
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- (源码)基于C++和C混合模式的操作系统开发项目.zip
- (源码)基于Arduino的全球天气监控系统.zip
- OpenCVForUnity2.6.0.unitypackage
- (源码)基于SimPy和贝叶斯优化的流程仿真系统.zip
- (源码)基于Java Web的个人信息管理系统.zip
- (源码)基于C++和OTL4的PostgreSQL数据库连接系统.zip
- (源码)基于ESP32和AWS IoT Core的室内温湿度监测系统.zip
- (源码)基于Arduino的I2C协议交通灯模拟系统.zip
- coco.names 文件
- (源码)基于Spring Boot和Vue的房屋租赁管理系统.zip