URL |
Description |
Bob Martin on the Future of Software Development |
|
Jim Coplien and Bob Martin Debate TDD |
Bob Martin is also known as Uncle Bob. He is an Agile Manifesto author, and author of books on Agile Programming, XP, UML, Object
|
Robert "Uncle Bob" Martin - Architecture: The Lost Years |
- The Web is an I/O channel.
- Interactors are Use Case objects. Interactor has a method called execute(). Uses the Command Pattern.
- Interactors have application specific business rules in them. They are coupled to the application.
- Entities contain application independent information.
- Separate the business rules that are application specific with those that are not.
- Interactors point to the entities and the interactors point to the boundary objects. Hence no one depends on the interactors.
- Delivery Mechanism points to the boundary (example is the web) .
- Interactor derives from the Boundary object.
- The User talks to the delivery mechanism.
- User initiates a Request Model. Raw data structure.
- The Result Model gets sent back to the user
- Arrows point away from details and toward abstractions
- You can test the Request and Result models. You can test without the application and delivery mechanism.
- You do not couple your application objects to a framework.
- Once you derive from base classes you are married to them.
- You should never trust frameworks.
- Don't tie your models to a framework.
|
Robert C Martin - Clean Architecture and Design |
|
Robert C Martin - Functional Programming; What? Why? When? |
|
Robert C Martin - The Single Responsibility Principle |
|
Software Architecture (Robert C. Martin) |
- Controller controls input
- Presenters control output
- Database is a detail not the center of the system
- Database should not contain business rules
- Business rules don't need to know about SQL
- A good architecture maximizes the number of decisions not made.
- Entities do not need to match the database tables
- The Database is a plugin to the application
- GUI is a plugin to the business rules
|
Test Driven Development with Robert C. Martin (Uncle Bob) |
The Three Laws of TDD
- Your are not allowed to write any production code unless it is to make a failing unit test pass.
- You are not allowed to write any more of a unit test than is sufficient to fail; and compilation failures are failures.
- You are not allowed to write any more production code than is sufficient to pass the one failing unit test.
|
The moon; Tests (Robert C Martin) |
|