Share
Fr. 59.40
Brad Abrams, Jeremy Barton, Krzysztof Cwalina
Framework Design Guidelines: Conventions, Idioms, and Patterns for Reusable .NET Libraries
English · Paperback / Softback
Shipping usually within 3 to 5 weeks
Description
Framework Design Guidelines, Third Edition, teaches students the best practices for designing reusable libraries for the Microsoft .NET Framework. Expanded and updated for .NET 7.3, this new edition focuses on new concepts which have altered the current and best practices for developing components in .NET.
This book can improve the work of any .NET developer producing code that other developers will use. It includes copious annotations to the guidelines by prominent architects and practitioners of the .NET Framework, providing a lively discussion of the reasons for the guidelines as well as examples of when to break those guidelines
Microsoft architects Krzysztof Cwalina, Jeremy Barton, and Brad Abrams teach framework design from the top down. From their significant combined experience and deep insight, students will learn
- The general philosophy and fundamental principles of framework design
- Naming guidelines for the various parts of a framework
- Guidelines for the design and extending of types and members of types
- Issues affecting-and guidelines for ensuring-extensibility
- How (and how not) to design exceptions
- Guidelines for-and examples of-common framework design patterns
Guidelines in this book are presented in four major forms: Do, Consider, Avoid, and Do not. These directives help focus attention on practices that should always be used, those that should generally be used, those that should rarely be used, and those that should never be used. Every guideline includes a discussion of its applicability, and most include a code example to help illuminate the dialogue.
List of contents
- Chapter 1: Introduction
- Chapter 2: Framework Design Fundamentals
- Chapter 3: Naming Guidelines
- Chapter 4: Type Design Guidelines
- Chapter 5: Member Design
- Chapter 6: Designing for Extensibility
- Chapter 7: Exceptions
- Chapter 8: Usage Guidelines
- Chapter 9: Common Design Patterns
- Appendix A: C# Coding Style Conventions
- Appendix B: Obsolete Guidance
- Appendix C: Sample API Specification
- Appendix D: Breaking Changes
- Glossary
About the author
Krzysztof Cwalina is a Principal Architect at Microsoft. He was a founding member of the .NET Framework team, and throughout his career has designed many .NET Framework, .NET Core, and other APIs. He is currently working on Azure SDK APIs. Krzysztof graduated with BS and MS in computer science from the University of Iowa.
Jeremy Barton is a Principal Software Engineer at Microsoft. The majority of his career in computer software has been on the design and development of shared libraries. Since 2005 his primary programming language is C#, and he joined the .NET Base Class Libraries team in 2015 and is primarily responsible for .NET Cryptography. Jeremy graduated from Rose-Hulman Institute of Technology with a BS in Computer Science and Discrete Mathematics. Since graduation, he has gotten a cat, married, and a pilot’s license.
Brad Abrams was a founding member of the Common Language Runtime and .NET Framework teams at Microsoft Corporation. He has been designing parts of the .NET Framework since 1998 and is currently a Group Program Manager at Google. Brad started his framework design career building the Base Class Library (BCL) that ships as a core part of the .NET Framework. Brad was also the lead editor on the Common Language Specification (CLS), the .NET Framework Design Guidelines, and the libraries in the ECMA/ISO CLI Standard. Brad has authored and coauthored multiple publications, including Programming in the .NET Environment and .NET Framework Standard Library Annotated Reference, Volumes 1 and 2. Brad graduated from North Carolina State University with a BS in computer science. You can find his most recent musings on his blog at http://blogs.msdn.com/BradA.
Summary
Master Today’s Best Practices for Building Reusable .NET Frameworks, Libraries, and Components
“.NET Core [contains] advances important to cloud application developers: performance, resource utilization, container support, and others. This third edition of Framework Design Guidelines adds guidelines related to changes that the .NET team adopted during transition from the world of client-server application to the world of the Cloud.”
–From the Foreword by Scott Guthrie
Framework Design Guidelines has long been the definitive guide to best practices for developing components and component libraries in Microsoft .NET. Now, this third edition has been fully revised to reflect game-changing API design innovations introduced by Microsoft through eight recent updates to C#, eleven updates to .NET Framework, and the emergence and evolution of .NET Core.
Three leading .NET architects share the same guidance Microsoft teams are using to evolve .NET, so you can design well-performing components that feel like natural extensions to the platform. Building on the book’s proven explanatory style, the authors and expert annotators offer insider guidance on new .NET and C# concepts, including major advances in asynchronous programming and lightweight memory access. Throughout, they clarify and refresh existing content, helping you take full advantage of best practices based on C# 8, .NET Framework 4.8, and .NET Core.
Three leading .NET architects share the same guidance Microsoft teams are using to evolve .NET, so you can design well-performing components that feel like natural extensions to the platform. Building on the book’s proven explanatory style, the authors and expert annotators offer insider guidance on new .NET and C# concepts, including major advances in asynchronous programming and lightweight memory access. Throughout, they clarify and refresh existing content, helping you take full advantage of best practices based on C# 8, .NET Framework 4.8, and .NET Core.
- Discover which practices should always, generally, rarely, or never be used–including practices that are no longer recommended
- Learn the general philosophy and fundamental principles of modern framework design
- Explore common framework design patterns with up-to-date C# examples
- Apply best practices for naming, types, extensibility, and exceptions
- Learn how to design libraries that scale in the cloud
- Master new async programming techniques utilizing Task and ValueTask
- Make the most of the Memory
and Span types for lightweight memory access
Register your book for convenient access to downloads, updates, and/or corrections as they become available. See inside book for details.
Product details
Authors | Brad Abrams, Jeremy Barton, Krzysztof Cwalina |
Publisher | Pearson Academic |
Languages | English |
Product format | Paperback / Softback |
Released | 31.08.2020 |
EAN | 9780135896464 |
ISBN | 978-0-13-589646-4 |
No. of pages | 624 |
Dimensions | 175 mm x 229 mm x 30 mm |
Weight | 971 g |
Series |
Addison-Wesley Addison-Wesley Microsoft Techn |
Subjects |
Natural sciences, medicine, IT, technology
> IT, data processing
> IT
Computernetzwerke und maschinelle Kommunikation, Systemanalyse und -design, COMPUTERS / Networking / General, COMPUTERS / Software Development & Engineering / Systems Analysis & Design, Computers - Languages / Programming, COMPUTERS / Programming / Microsoft |
Customer reviews
No reviews have been written for this item yet. Write the first review and be helpful to other users when they decide on a purchase.
Write a review
Thumbs up or thumbs down? Write your own review.