Aspect-Oriented Software Development

Robert E. Filman, Tzilla Elrad, Siobhán Clarke, Mehmet Aksit

買這商品的人也買了...

商品描述

Description:

Aspect-Oriented Software Developement

Back Cover Copy

Coverage includes

  • Using AOSD to streamline complex systems development without sacrificing flexibility or scalability

  • How AOSD builds on the object-oriented paradigm—and how it's different

  • State-of-the-art best practices for the AOSD development process

  • Languages and foundations: separating concerns, filter technologies, improving modularity, integrating new features, and more

  • Using key AOSD tools, including AspectJ, Hyper/J, JMangler, and Java Aspect Components

  • Engineering aspect-oriented systems: UML, concern modeling and elaboration, dependency management, and aspect composition

  • Developing more secure applications with AOSD techniques

  • Applying aspect-oriented programming to database systems

  • Building dynamic aspect-oriented infrastructure

The definitive aspect-oriented software development reference:

Practical solutions for the challenge of software complexity

Today, software engineers must build systems that address an increasingly wide range of technical, business, and performance concerns. Doing so using conventional object-oriented techniques, they often find themselves producing tangled, incorrect, difficult-to-maintain code. Aspect-oriented software development (AOSD) overcomes this problem by enabling them to express concerns separately, and then compose modularized expressions into reliable, effective systems.

In this book, four leaders in AOSD development bring together today's most significant advances. Drawing on contributions from the field's leading researchers, they introduce fundamental AOSD concepts, present new technologies for AOSD engineering and programming, and detail early application experiences with AOSD methods.

Aspect-oriented development has come of age. If you're an experienced software engineer or architect, this foundation reference is all you need to start applying it in real-world systems.

 

Table of Contents:

Bios.
Preface. 
 1. Introduction.

I. LANGUAGES AND FOUNDATIONS.

 2. Aspect-Oriented Programming is Quantification and Obliviousness
 3. N Degress of Separation: Multi-Dimensional Separation of Concerns.
 4. Principles and Design Rationale of Composition Filters.
 5. Aspect-Oriented Programming: A Historic Perspective (What's in a Name?).
 6. AspectJ.
 7. Coupling Aspect-Oriented and Adaptive Programming.
 8. Untangling Crosscutting Models With Caesar.
 9. Trace-based Aspects.
10. Using Mixin Technology to Improve Modularity.
11. Separating Concerns with First-Class Namespaces.
12. Supporting AOP using Reflection.
13. Inserting Ilities by Controlling Communications.
14. Using Bytecode Transformation to Integrate New Features.
15. JMangler - A Powerful Back-End for Aspect-Oriented Programming.
16. Aspect-Oriented Software Development with Java Aspect Components.

II. SOFTWARE ENGINEERING.

17. Engineering Aspect-Oriented Systems.
18. Aspect-Orientation in the Software Life Cycle: Fact and Fiction.
19. Generic Aspect-Oriented Design with Theme/UML.
20. Expressing Aspects using UML Behavioral and Structural Diagrams.
21. Concern Modeling for Aspect-Oriented Software Development.
22. Design Recommendations for Concern Elaboration Tools.
23. An Initial Assessment of Aspect-Oriented Programming.
24. Aspect-Oriented Dependency Management.
25. Developing Software Components with Aspects: Some Issues and Experiences.
26. Smartweaver: A Knowledge-driven Approach for Aspect Composition.

III. APPLICATIONS.

27. Developing Secure Applications through Aspect-Oriented Programming.
28. Structuring Operating System Aspects.
29. Aspect-Oriented Programming for Database Systems.
30. Two-Level Aspect Weaving to Support Evolution in Model-Driven Synthesis.
31. Dynamic Aspect-Oriented Infrastructure.


 

商品描述(中文翻譯)

描述:
面向方面的軟體開發

封面簡介:
本書涵蓋的內容包括:
- 使用面向方面的軟體開發來簡化複雜系統的開發,同時不損失靈活性和可擴展性
- 面向方面的軟體開發如何建立在面向對象的範式之上,以及它與之不同之處
- 面向方面的軟體開發過程的最佳實踐
- 語言和基礎:分離關注點、過濾器技術、改進模塊化、集成新功能等
- 使用關鍵的面向方面的軟體開發工具,包括AspectJ、Hyper/J、JMangler和Java Aspect Components
- 面向方面的系統工程:UML、關注點建模和詳細化、依賴管理和方面組合
- 使用面向方面的技術開發更安全的應用程序
- 將面向方面的編程應用於數據庫系統
- 構建動態面向方面的基礎設施

這本書是面向方面的軟體開發的權威參考資料:
- 解決軟體複雜性挑戰的實用解決方案
- 如今,軟體工程師必須構建能夠應對越來越廣泛的技術、業務和性能問題的系統。使用傳統的面向對象技術,他們常常會產生混亂、錯誤且難以維護的代碼。面向方面的軟體開發通過使他們能夠分開表達關注點,然後將模塊化的表達式組合成可靠、有效的系統,從而解決了這個問題。

在這本書中,四位面向方面的軟體開發領域的領導者匯集了當今最重要的進展。他們借鑒了該領域領先研究人員的貢獻,介紹了基本的面向方面的軟體開發概念,提出了面向方面的工程和編程的新技術,並詳細介紹了面向方面的方法的早期應用經驗。

面向方面的開發已經成熟。如果你是一位有經驗的軟體工程師或架構師,這本基礎參考書是你開始應用面向方面的軟體開發於實際系統的全部所需。

目錄:
- 作者簡介
- 前言
- 1. 簡介
- 第一部分:語言和基礎
- 2. 面向方面的編程是量化和無視
- 3. 多維關注點分離
- 4. 組合過濾器的原則和設計理念
- 5. 面向方面的編程基礎

(以下省略)