Using Aspect Oriented Programming For Trustworthy Software Development
商品資訊
ISBN13:9780470138175
出版社:John Wiley & Sons Inc
作者:Safonov
出版日:2008/05/06
裝訂/頁數:精裝/352頁
定價
:NT$ 7497 元優惠價
:
90 折 6747 元
若需訂購本書,請電洽客服 02-25006600[分機130、131]。
商品簡介
作者簡介
目次
商品簡介
Learn how to successfully implement trustworthy computing tasks using aspect-oriented programming
This landmark publication fills a gap in the literature by not only describing the basic concepts of trustworthy computing (TWC) and aspect-oriented programming (AOP), but also exploring their critical interrelationships. The author clearly demonstrates how typical TWC tasks such as security checks, in-and-out conditions, and multi-threaded safety can be implemented using AOP.
Following an introduction, the book covers:
Trustworthy computing, software engineering, and computer science
Aspect-oriented programming and Aspect.NET
Principles and case studies that apply AOP to TWC
Coverage includes Aspect.NET, the AOP framework developed by the author for the Microsoft.NET platform, currently used in seventeen countries. The author discusses the basics of Aspect.NET architecture, its advantages compared to other AOP tools, and its functionality. The book has extensive practical examples and case studies of trustworthy software design and code using the Aspect.NET framework. In addition, the book explores other software technologies and tools for using AOP for trustworthy software development, including Java and AspectJ.
This book also includes a valuable chapter dedicated to ERATO, the author's teaching method employed in this book, which has enabled thousands of students to quickly grasp and apply complex concepts in computing and software engineering, while the final chapter presents an overall perspective on the current state of AOP and TWC with a view toward the future.
Software engineers, architects, developers, programmers, and students should all turn to this book to learn this tested and proven method to create more secure, private, and reliable computing.
This landmark publication fills a gap in the literature by not only describing the basic concepts of trustworthy computing (TWC) and aspect-oriented programming (AOP), but also exploring their critical interrelationships. The author clearly demonstrates how typical TWC tasks such as security checks, in-and-out conditions, and multi-threaded safety can be implemented using AOP.
Following an introduction, the book covers:
Trustworthy computing, software engineering, and computer science
Aspect-oriented programming and Aspect.NET
Principles and case studies that apply AOP to TWC
Coverage includes Aspect.NET, the AOP framework developed by the author for the Microsoft.NET platform, currently used in seventeen countries. The author discusses the basics of Aspect.NET architecture, its advantages compared to other AOP tools, and its functionality. The book has extensive practical examples and case studies of trustworthy software design and code using the Aspect.NET framework. In addition, the book explores other software technologies and tools for using AOP for trustworthy software development, including Java and AspectJ.
This book also includes a valuable chapter dedicated to ERATO, the author's teaching method employed in this book, which has enabled thousands of students to quickly grasp and apply complex concepts in computing and software engineering, while the final chapter presents an overall perspective on the current state of AOP and TWC with a view toward the future.
Software engineers, architects, developers, programmers, and students should all turn to this book to learn this tested and proven method to create more secure, private, and reliable computing.
作者簡介
Vladimir O. Safonov, PhD, is Professor of the Computer Science Department at St. Petersburg University and the head of the university's Java Technology Laboratory. With some thirty years of experience leading major software projects, developing software, and teaching software technologies, Professor Safonov is one of the leading innovators in computer science and software engineering in Russia. He holds four U.S. software patents and four Russian software patents and has published five books and over eighty papers. He is also a Microsoft Research 2005/2006 RFP winner for TWC and Secure Software Development.
目次
Preface.
1. Introduction.
1.1 The Role of Aspect-Oriented Programming in Trustworthiness.
1.2 Historical Background and Personal Experience.
1.3 Organization of the Book.
2. Trustworthy Computing, Software Engineering, and Computer Science.
2.1 History of and Growing Need for TWC.
2.2 Microsoft’s TWC Initiative.
2.3 The Four Pillars of TWC.
2.3.1 Security.
2.3.2 Privacy.
2.3.3 Reliability.
2.3.4 Business Integrity.
2.4 Software Engineering Technologies and Tools for TWC.
2.5 TWC and .NET.
2.5.1 .NET Overview.
2.5.2 .NET Security.
2.5.3 .NET and Reliability.
2.5.4 .NET TWC Tools FxCop and Spec#.
2.6 TWC and Java.
2.6.1 Java Overview.
2.6.2 Java Security.
2.6.3 Java and Reliability.
2.6.4 Java TWC Tools.
2.7 Summary.
3. Aspect-Oriented Programming and Aspect.NET.
3.1 History of AOP.
3.2 AOP Basics.
3.3 AOP and Related Technologies and Tools.
3.3.1 AspectJ and AspectWerkz.
3.3.2 Other AOP Tools and Approaches to Separation of Concerns.
3.4. Pitfalls of AOP.
3.5 AOP for Java.
3.6 AOP for .NET.
3.7 Aspect.NET Principles and Architecture.
3.7.1 Motivation and Key Ideas.
3.7.2 Basic Concepts of AOP.
3.7.3 Example.
3.7.4 Representing Aspects by Custom Attributes.
3.7.5 Example in Terms of Custom Attributes.
3.7.6 Summary of Our Approach to AOP.
3.7.7 Aspect.NET Architectural Principles.
3.7.8 Syntax of AOP Metalanguage (Version 1.0).
3.7.9 Another Example.
3.8 Features and Use of Aspect.NET.
3.8.1 Prerequisites for Using Aspect.NET 2.1.
3.8.2 Previous Releases of Aspect.NET and the Compatibility Mode.
3.8.3 Aspect.NET Architecture.
3.8.4 Case Study: Using the Aspect.NET Framework.
3.8.5 Aspect.NET Framework Options.
3.8.6 Aspect.NET.ML Metalanguage.
3.8.7 Samples Included in the Aspect.NET 2.1 Release.
3.8.8 Experience of Aspect.NET Use and User Feedback.
3.9 Summary.
3.9.1 AOP.
3.9.2 Aspect.NET.
4. Principles and Application of AOP in TWC.
4.1 AOP and TWC: Cooperation Rather Than Violation.
4.2 AOP for Security.
4.3 AOP for Error Handling.
4.4 AOP for Synchronization.
4.5 AOP for Trustworthy Multithreading- and Multicore-Based Applications.
4.6 AOP for Privacy.
4.7 AOP for Reliability.
4.7.1 Using AOP to Make Implementation Reliable.
4.7.2 Using AOP for Software Testing.
4.7.3 Using AOP to Support Formal Specification and Verification Methods.
4.8 AOP for Business Integrity.
4.9 AOP for Design by Contract.
4.10 Using AOP via Aspect.NET to Improve Productivity and Reliability.
4.10.1 Effort Estimation Using the COCOMO Model.
4.10.2 Assessment of Aspect.NET Using the ICED-T Model.
4.10.3 Assessment of Requirements of Aspect.NET Using the SQFD Model.
4.11 Application Effi ciency and Performance Using AOP.
4.11.1 Performance Measurement.
4.11.2 Implementation Details and the Woven IL Code.
4.11.3 Another Performance Measurement Example.
4.12 AOP and Agile Programming Approaches.
4.13 Summary.
5. Teaching TWC and AOP.
5.1 The ERATO Teaching Paradigm and the SPBU.NET Project.
5.1.1 The ERATO Teaching Paradigm.
5.1.2 The SPBU.NET Project.
5.2 The T-ERATO Teaching Paradigm and the TrustSPBU.NET Project.
5.2.1 The T-ERATO Teaching Paradigm.
5.2.2 The TrustSPBU.NET Project.
5.3 Teaching Trustworthy Software Engineering, Including AOP.
5.3.1 Structure of the Secure Software Engineering Course.
5.4 Teaching Trustworthy .NET and C# Programming.
5.4.1 Structure of the Trustworthy .NET and C# Programming Course.
5.4.2 Structure of the .NET and C# Programming Seminar.
5.5 Teaching Trustworthy Java Technology.
5.5.1 Structure of the Java Course.
5.5.2 Structure of the Java Seminar.
5.6 Teaching Trustworthy Operating Systems and Networking.
5.6.1 Structure of the Trustworthy Operating Systems and Networking Course.
5.7 Teaching Trustworthy Compiler Development.
5.7.1 Structure of the Trustworthy Compiler Development Course.
5.7.2 Structure of the Compiler Development Seminar.
5.8 Summary.
6. Conclusion.
6.1 Summary of the Book.
6.2 Perspectives: Integration of TWC, AOP, Formal Methods, and Knowledge Management.
6.2.1 Application of Formal Methods to Trustworthy AOP.
6.2.2 Smart Knowledge-Based AOP.
6.2.3 AOP Specification and Design Support Tools.
6.2.4 Trustworthy Reverse Engineering and Refactoring Tools for AOP.
6.2.5 Aspect-Oriented Modeling on the Basis of Extended UML.
Appendix: Examples of Aspect.NET Aspects.
A.1 TestArgs Example.
A.2 RetTest Example.
A.3 RetTest2 Example.
A.4 QuickSort Example.
A.5 Matrix Example.
References.
Index.
1. Introduction.
1.1 The Role of Aspect-Oriented Programming in Trustworthiness.
1.2 Historical Background and Personal Experience.
1.3 Organization of the Book.
2. Trustworthy Computing, Software Engineering, and Computer Science.
2.1 History of and Growing Need for TWC.
2.2 Microsoft’s TWC Initiative.
2.3 The Four Pillars of TWC.
2.3.1 Security.
2.3.2 Privacy.
2.3.3 Reliability.
2.3.4 Business Integrity.
2.4 Software Engineering Technologies and Tools for TWC.
2.5 TWC and .NET.
2.5.1 .NET Overview.
2.5.2 .NET Security.
2.5.3 .NET and Reliability.
2.5.4 .NET TWC Tools FxCop and Spec#.
2.6 TWC and Java.
2.6.1 Java Overview.
2.6.2 Java Security.
2.6.3 Java and Reliability.
2.6.4 Java TWC Tools.
2.7 Summary.
3. Aspect-Oriented Programming and Aspect.NET.
3.1 History of AOP.
3.2 AOP Basics.
3.3 AOP and Related Technologies and Tools.
3.3.1 AspectJ and AspectWerkz.
3.3.2 Other AOP Tools and Approaches to Separation of Concerns.
3.4. Pitfalls of AOP.
3.5 AOP for Java.
3.6 AOP for .NET.
3.7 Aspect.NET Principles and Architecture.
3.7.1 Motivation and Key Ideas.
3.7.2 Basic Concepts of AOP.
3.7.3 Example.
3.7.4 Representing Aspects by Custom Attributes.
3.7.5 Example in Terms of Custom Attributes.
3.7.6 Summary of Our Approach to AOP.
3.7.7 Aspect.NET Architectural Principles.
3.7.8 Syntax of AOP Metalanguage (Version 1.0).
3.7.9 Another Example.
3.8 Features and Use of Aspect.NET.
3.8.1 Prerequisites for Using Aspect.NET 2.1.
3.8.2 Previous Releases of Aspect.NET and the Compatibility Mode.
3.8.3 Aspect.NET Architecture.
3.8.4 Case Study: Using the Aspect.NET Framework.
3.8.5 Aspect.NET Framework Options.
3.8.6 Aspect.NET.ML Metalanguage.
3.8.7 Samples Included in the Aspect.NET 2.1 Release.
3.8.8 Experience of Aspect.NET Use and User Feedback.
3.9 Summary.
3.9.1 AOP.
3.9.2 Aspect.NET.
4. Principles and Application of AOP in TWC.
4.1 AOP and TWC: Cooperation Rather Than Violation.
4.2 AOP for Security.
4.3 AOP for Error Handling.
4.4 AOP for Synchronization.
4.5 AOP for Trustworthy Multithreading- and Multicore-Based Applications.
4.6 AOP for Privacy.
4.7 AOP for Reliability.
4.7.1 Using AOP to Make Implementation Reliable.
4.7.2 Using AOP for Software Testing.
4.7.3 Using AOP to Support Formal Specification and Verification Methods.
4.8 AOP for Business Integrity.
4.9 AOP for Design by Contract.
4.10 Using AOP via Aspect.NET to Improve Productivity and Reliability.
4.10.1 Effort Estimation Using the COCOMO Model.
4.10.2 Assessment of Aspect.NET Using the ICED-T Model.
4.10.3 Assessment of Requirements of Aspect.NET Using the SQFD Model.
4.11 Application Effi ciency and Performance Using AOP.
4.11.1 Performance Measurement.
4.11.2 Implementation Details and the Woven IL Code.
4.11.3 Another Performance Measurement Example.
4.12 AOP and Agile Programming Approaches.
4.13 Summary.
5. Teaching TWC and AOP.
5.1 The ERATO Teaching Paradigm and the SPBU.NET Project.
5.1.1 The ERATO Teaching Paradigm.
5.1.2 The SPBU.NET Project.
5.2 The T-ERATO Teaching Paradigm and the TrustSPBU.NET Project.
5.2.1 The T-ERATO Teaching Paradigm.
5.2.2 The TrustSPBU.NET Project.
5.3 Teaching Trustworthy Software Engineering, Including AOP.
5.3.1 Structure of the Secure Software Engineering Course.
5.4 Teaching Trustworthy .NET and C# Programming.
5.4.1 Structure of the Trustworthy .NET and C# Programming Course.
5.4.2 Structure of the .NET and C# Programming Seminar.
5.5 Teaching Trustworthy Java Technology.
5.5.1 Structure of the Java Course.
5.5.2 Structure of the Java Seminar.
5.6 Teaching Trustworthy Operating Systems and Networking.
5.6.1 Structure of the Trustworthy Operating Systems and Networking Course.
5.7 Teaching Trustworthy Compiler Development.
5.7.1 Structure of the Trustworthy Compiler Development Course.
5.7.2 Structure of the Compiler Development Seminar.
5.8 Summary.
6. Conclusion.
6.1 Summary of the Book.
6.2 Perspectives: Integration of TWC, AOP, Formal Methods, and Knowledge Management.
6.2.1 Application of Formal Methods to Trustworthy AOP.
6.2.2 Smart Knowledge-Based AOP.
6.2.3 AOP Specification and Design Support Tools.
6.2.4 Trustworthy Reverse Engineering and Refactoring Tools for AOP.
6.2.5 Aspect-Oriented Modeling on the Basis of Extended UML.
Appendix: Examples of Aspect.NET Aspects.
A.1 TestArgs Example.
A.2 RetTest Example.
A.3 RetTest2 Example.
A.4 QuickSort Example.
A.5 Matrix Example.
References.
Index.
主題書展
更多
主題書展
更多書展購物須知
外文書商品之書封,為出版社提供之樣本。實際出貨商品,以出版社所提供之現有版本為主。部份書籍,因出版社供應狀況特殊,匯率將依實際狀況做調整。
無庫存之商品,在您完成訂單程序之後,將以空運的方式為你下單調貨。為了縮短等待的時間,建議您將外文書與其他商品分開下單,以獲得最快的取貨速度,平均調貨時間為1~2個月。
為了保護您的權益,「三民網路書店」提供會員七日商品鑑賞期(收到商品為起始日)。
若要辦理退貨,請在商品鑑賞期內寄回,且商品必須是全新狀態與完整包裝(商品、附件、發票、隨貨贈品等)否則恕不接受退貨。

