On Github jdfreeman / leaning-towards-domain-driven-design-presentation
Awesomeness Curated by Josh Freeman / @jdfreeman11
Provide an Ultra-High-Level view of MVC/SOLID/DDD
Make any of us DDD experts
The minor three are important, but not useful enough for this talk
SRP and DI: peas and carrots!
Think less about what an object does, and more about what it can do
class Greeter { public function sayHello() { echo CurrentUser::sayHello(); } }
class Greeter { public function __construct($hello_sayer) { $this->hello_sayer = $hello_sayer; } public function sayHello() { echo $this->hello_sayer->sayHello(); } }
Discuss history with tests
Using humans to run through a suite of changes is dumb and a waste of time
Bob Martin: Using humans where machines are better off is immoral
Making one change here, and the whole application breaks
Discuss refactoring tests, cleanup
A project should NOT start with any of the following:
~$ rails new my-project ~$ composer create-project laravel/laravel my-project ~$ django-admin.py startproject my-project
If it's not special, buy a product and move on with your life
Awesomeness Curated by Josh Freeman / @jdfreeman11