Clean Architecture
Lýsing:
Practical Software Architecture Solutions from the Legendary Robert C. Martin (“Uncle Bob”) By applying universal rules of software architecture, you can dramatically improve developer productivity throughout the life of any software system. Now, building upon the success of his best-selling books Clean Code and The Clean Coder, legendary software craftsman Robert C. Martin (“Uncle Bob”) reveals those rules and helps you apply them.
Martin’s Clean Architecture doesn’t merely present options. Drawing on over a half-century of experience in software environments of every imaginable type, Martin tells you what choices to make and why they are critical to your success. As you’ve come to expect from Uncle Bob, this book is packed with direct, no-nonsense solutions for the real challenges you’ll face–the ones that will make or break your projects.
Learn what software architects need to achieve–and core disciplines and practices for achieving it Master essential software design principles for addressing function, component separation, and data management See how programming paradigms impose discipline by restricting what developers can do Understand what’s critically important and what’s merely a “detail” Implement optimal, high-level structures for web, database, thick-client, console, and embedded applications Define appropriate boundaries and layers, and organize components and services See why designs and architectures go wrong, and how to prevent (or fix) these failures Clean Architecture is essential reading for every current or aspiring software architect, systems analyst, system designer, and software manager–and for every programmer who must execute someone else’s designs.
Annað
- Höfundur: Robert C. Martin
- Útgáfa:1
- Útgáfudagur: 2017-09-12
- Hægt að prenta út 2 bls.
- Hægt að afrita 2 bls.
- Format:ePub
- ISBN 13: 9780134494326
- Print ISBN: 9780134494166
- ISBN 10: 0134494326
Efnisyfirlit
- Cover Page
- Series Page
- Title Page
- Copyright Page
- Dedication
- Contents
- Foreword
- Preface
- Acknowledgments
- About the Author
- PART I Introduction
- Chapter 1 What Is Design and Architecture?
- The Goal?
- Case Study
- Conclusion
- Chapter 2 A Tale of Two Values
- Behavior
- Architecture
- The Greater Value
- Eisenhower’s Matrix
- Fight for the Architecture
- Chapter 1 What Is Design and Architecture?
- Chapter 3 Paradigm Overview
- Structured Programming
- Object-Oriented Programming
- Functional Programming
- Food for Thought
- Conclusion
- Chapter 4 Structured Programming
- Proof
- A Harmful Proclamation
- Functional Decomposition
- No Formal Proofs
- Science to the Rescue
- Tests
- Conclusion
- Chapter 5 Object-Oriented Programming
- Encapsulation?
- Inheritance?
- Polymorphism?
- Conclusion
- Chapter 6 Functional Programming
- Squares of Integers
- Immutability and Architecture
- Segregation of Mutability
- Event Sourcing
- Conclusion
- Chapter 7 SRP: The Single Responsibility Principle
- Symptom 1: Accidental Duplication
- Symptom 2: Merges
- Solutions
- Conclusion
- Chapter 8 OCP: The Open-Closed Principle
- A Thought Experiment
- Directional Control
- Information Hiding
- Conclusion
- Chapter 9 LSP: The Liskov Substitution Principle
- Guiding the Use of Inheritance
- The Square/Rectangle Problem
- LSP and Architecture
- Example LSP Violation
- Conclusion
- Chapter 10 ISP: The Interface Segregation Principle
- ISP and Language
- ISP and Architecture
- Conclusion
- Chapter 11 DIP: The Dependency Inversion Principle
- Stable Abstractions
- Factories
- Concrete Components
- Conclusion
- Chapter 12 Components
- A Brief History of Components
- Relocatability
- Linkers
- Conclusion
- Chapter 13 Component Cohesion
- The Reuse/Release Equivalence Principle
- The Common Closure Principle
- The Common Reuse Principle
- The Tension Diagram for Component Cohesion
- Conclusion
- Chapter 14 Component Coupling
- The Acyclic Dependencies Principle
- Top-Down Design
- The Stable Dependencies Principle
- The Stable Abstractions Principle
- Conclusion
- Chapter 15 What Is Architecture?
- Development
- Deployment
- Operation
- Maintenance
- Keeping Options Open
- Device Independence
- Junk Mail
- Physical Addressing
- Conclusion
- Chapter 16 Independence
- Use Cases
- Operation
- Development
- Deployment
- Leaving Options Open
- Decoupling Layers
- Decoupling Use Cases
- Decoupling Mode
- Independent Develop-ability
- Independent Deployability
- Duplication
- Decoupling Modes (Again)
- Conclusion
- Chapter 17 Boundaries: Drawing Lines
- A Couple of Sad Stories
- FitNesse
- Which Lines Do You Draw, and When Do You Draw Them?
- What About Input and Output?
- Plugin Architecture
- The Plugin Argument
- Conclusion
- Chapter 18 Boundary Anatomy
- Boundary Crossing
- The Dreaded Monolith
- Deployment Components
- Threads
- Local Processes
- Services
- Conclusion
- Chapter 19 Policy and Level
- Level
- Conclusion
- Chapter 20 Business Rules
- Entities
- Use Cases
- Request and Response Models
- Conclusion
- Chapter 21 Screaming Architecture
- The Theme of an Architecture
- The Purpose of an Architecture
- But What About the Web?
- Frameworks Are Tools, Not Ways of Life
- Testable Architectures
- Conclusion
- Chapter 22 The Clean Architecture
- The Dependency Rule
- A Typical Scenario
- Conclusion
- Chapter 23 Presenters and Humble Objects
- The Humble Object Pattern
- Presenters and Views
- Testing and Architecture
- Database Gateways
- Data Mappers
- Service Listeners
- Conclusion
- Chapter 24 Partial Boundaries
- Skip the Last Step
- One-Dimensional Boundaries
- Facades
- Conclusion
- Chapter 25 Layers and Boundaries
- Hunt the Wumpus
- Clean Architecture?
- Crossing the Streams
- Splitting the Streams
- Conclusion
- Chapter 26 The Main Component
- The Ultimate Detail
- Conclusion
- Chapter 27 Services: Great and Small
- Service Architecture?
- Service Benefits?
- The Kitty Problem
- Objects to the Rescue
- Component-Based Services
- Cross-Cutting Concerns
- Conclusion
- Chapter 28 The Test Boundary
- Tests as System Components
- Design for Testability
- The Testing API
- Conclusion
- Chapter 29 Clean Embedded Architecture
- App-titude Test
- The Target-Hardware Bottleneck
- Conclusion
- Chapter 30 The Database Is a Detail
- Relational Databases
- Why Are Database Systems So Prevalent?
- What If There Were No Disk?
- Details
- But What about Performance?
- Anecdote
- Conclusion
- Chapter 31 The Web Is a Detail
- The Endless Pendulum
- The Upshot
- Conclusion
- Chapter 32 Frameworks Are Details
- Framework Authors
- Asymmetric Marriage
- The Risks
- The Solution
- I Now Pronounce You …
- Conclusion
- Chapter 33 Case Study: Video Sales
- The Product
- Use Case Analysis
- Component Architecture
- Dependency Management
- Conclusion
- Chapter 34 The Missing Chapter
- Package by Layer
- Package by Feature
- Ports and Adapters
- Package by Component
- The Devil Is in the Implementation Details
- Organization versus Encapsulation
- Other Decoupling Modes
- Conclusion: The Missing Advice
- Appendix A Architecture Archaeology
UM RAFBÆKUR Á HEIMKAUP.IS
Bókahillan þín er þitt svæði og þar eru bækurnar þínar geymdar. Þú kemst í bókahilluna þína hvar og hvenær sem er í tölvu eða snjalltæki. Einfalt og þægilegt!Rafbók til eignar
Rafbók til eignar þarf að hlaða niður á þau tæki sem þú vilt nota innan eins árs frá því bókin er keypt.
Þú kemst í bækurnar hvar sem er
Þú getur nálgast allar raf(skóla)bækurnar þínar á einu augabragði, hvar og hvenær sem er í bókahillunni þinni. Engin taska, enginn kyndill og ekkert vesen (hvað þá yfirvigt).
Auðvelt að fletta og leita
Þú getur flakkað milli síðna og kafla eins og þér hentar best og farið beint í ákveðna kafla úr efnisyfirlitinu. Í leitinni finnur þú orð, kafla eða síður í einum smelli.
Glósur og yfirstrikanir
Þú getur auðkennt textabrot með mismunandi litum og skrifað glósur að vild í rafbókina. Þú getur jafnvel séð glósur og yfirstrikanir hjá bekkjarsystkinum og kennara ef þeir leyfa það. Allt á einum stað.
Hvað viltu sjá? / Þú ræður hvernig síðan lítur út
Þú lagar síðuna að þínum þörfum. Stækkaðu eða minnkaðu myndir og texta með multi-level zoom til að sjá síðuna eins og þér hentar best í þínu námi.
Fleiri góðir kostir
- Þú getur prentað síður úr bókinni (innan þeirra marka sem útgefandinn setur)
- Möguleiki á tengingu við annað stafrænt og gagnvirkt efni, svo sem myndbönd eða spurningar úr efninu
- Auðvelt að afrita og líma efni/texta fyrir t.d. heimaverkefni eða ritgerðir
- Styður tækni sem hjálpar nemendum með sjón- eða heyrnarskerðingu
- Gerð : 208
- Höfundur : 19057
- Útgáfuár : 2017
- Leyfi : 380