LEADER 04176nam 22006855 450 001 9910300747103321 005 20200705160411.0 010 $a9781484241196 010 $a1484241193 024 7 $a10.1007/978-1-4842-4119-6 035 $a(CKB)4100000007142758 035 $a(MiAaPQ)EBC5598539 035 $a(DE-He213)978-1-4842-4119-6 035 $a(CaSebORM)9781484241196 035 $a(PPN)232474710 035 $a(OCoLC)1082522892 035 $a(OCoLC)on1082522892 035 $a(EXLCZ)994100000007142758 100 $a20181113d2018 u| 0 101 0 $aeng 135 $aurcnu|||||||| 181 $ctxt$2rdacontent 182 $cc$2rdamedia 183 $acr$2rdacarrier 200 10$aPrinciples of Package Design $eCreating Reusable Software Components /$fby Matthias Noback 205 $a1st ed. 2018. 210 1$aBerkeley, CA :$cApress :$cImprint: Apress,$d2018. 215 $a1 online resource (287 pages) 311 08$a9781484241189 311 08$a1484241185 320 $aIncludes bibliographical references. 327 $aPart 1: Class Design -- Chapter 1: The Single Responsibility Principle -- Chapter 2: The Open/Closed Principle -- Chapter 3: The Liskov Substitution Principle -- Chapter 4: The Interface Segregation Principle -- Chapter 5: The Dependency Inversion Principle -- Part 2: Package Design -- Chapter 6: The Release/Reuse Equivalence Principle -- Chapter 7: The Common Reuse Principle -- Chapter 8: The Common Closure Principle -- Chapter 9: The Acyclic Dependencies Principle -- Chapter 10: The Stable Dependencies Principle -- Chapter 11: The Stable Abstractions Principle -- Chapter 12: Conclusion -- Appendix A: The Full Page Class.-. 330 $aApply 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. 517 3 $aCreating reusable software components 606 $aComputer programming 606 $aProgramming languages (Electronic computers) 606 $aSoftware engineering 606 $aOpen source software 606 $aProgramming Techniques$3https://scigraph.springernature.com/ontologies/product-market-codes/I14010 606 $aProgramming Languages, Compilers, Interpreters$3https://scigraph.springernature.com/ontologies/product-market-codes/I14037 606 $aSoftware Engineering$3https://scigraph.springernature.com/ontologies/product-market-codes/I14029 606 $aWeb Development$3https://scigraph.springernature.com/ontologies/product-market-codes/I29050 606 $aOpen Source$3https://scigraph.springernature.com/ontologies/product-market-codes/I29090 615 0$aComputer programming. 615 0$aProgramming languages (Electronic computers). 615 0$aSoftware engineering. 615 0$aOpen source software. 615 14$aProgramming Techniques. 615 24$aProgramming Languages, Compilers, Interpreters. 615 24$aSoftware Engineering. 615 24$aWeb Development. 615 24$aOpen Source. 676 $a005.117 700 $aNoback$b Matthias$4aut$4http://id.loc.gov/vocabulary/relators/aut$01062836 801 0$bUMI 801 1$bUMI 906 $aBOOK 912 $a9910300747103321 996 $aPrinciples of Package Design$92528698 997 $aUNINA