Principles of Package Design: Creating Reusable Software Components
Authors: Matthias Noback
ISBN-10: 1484241185
ISBN-13: 9781484241189
Edition 版本: 1st ed.
Released: 2018-11-14
Print Length 页数: 275 pages
Apply design principles to your classes,preparing them for reuse. You will use package design principles to create packages that are just right in terms of cohesion and coupling,and are user- and maintainer-friendly at the same time.
The first part of this book walks you through the five SOLID principles that will help you improve the design of your classes. The second part introduces you to the best practices of package design,and covers both package cohesion principles and package coupling principles. Cohesion principles show you which classes should be put together in a package,when to split packages,and if a combination of classes may be considered a “package” in the first place. Package coupling principles help you choose the right dependencies and prevent wrong directions in the dependency graph of your packages.
What You’ll Learn
Apply the SOLID principles of class design
Determine if classes belong in the same package
Know whether it is safe for packages to depend on each other
Who This Book Is For
Software developers with a broad range of experience in the field,who are looking for ways to reuse,share,and distribute their code
Principles of Package Design: Creating Reusable Software Components
相关推荐
Kickstart Compiler Design Fundamentals: Practical Techniques and Solutions for Compiler Design, Parsing, Optimization, and Code Generation
Mastering Honeypots: Art of deception for cybersecurity defense
Fundamentals of Software Architecture: Practical guide to building resilient software and high-performance systems
Practical IoT Handbook: Programming IoT by implementing hands-on projects with Arduino, Python, and Raspberry Pi
Salesforce Apex Design Patterns: Architecting Salesforce solutions with Apex design patterns
Mastering Test-Driven Development with PHP 8: Building secure and reliable PHP 8 applications through TDD, design patterns, and functional data handling