Another view
Source: http://www.planetgeek.ch/2013/11/26/chop-onions-instead-of-layers/
Slide 23
Slide 23 text
Why is this good?
Good Design
Clean boundaries / roles
Easy to fix, refactor, extend, re-use
Easy and fast to test
etc.
Slide 24
Slide 24 text
Good Thing™
(right?)
Slide 25
Slide 25 text
Part III
Scala
Slide 26
Slide 26 text
Why is Scala well suited?
Slide 27
Slide 27 text
Scala. Recap:
Object Oriented
and Functional
Slide 28
Slide 28 text
Culture Language
Scala
Slide 29
Slide 29 text
Some aspects:
Case-classes
Immutability
Collections
Objects
val(ues)
Implicits
Data-transformations
For-comprehensions
Lazyness / Rective(ness)
etc.
Slide 30
Slide 30 text
Specific to Play:
Async. results (Futures)
Parametrized Views
Dep. Injection
etc.
Slide 31
Slide 31 text
Applied to this...
Slide 32
Slide 32 text
Conclusions
Clean code / architecture has its advantages
Scala, the language and the culture, support these
notions well
Slide 33
Slide 33 text
Some Resources
by Robert C. Martin
by Alistair Cockburn
by Jeffrey Palermo
from a post by Robert C. Martin
from James Coplien, and Trygve Reenskaug
by Ivar Jacobson from his book Object Oriented
Software Engineering: A Use-Case Driven Approach
and many more...
Clean Architecture
Hexagonal Architecture
Onion Architecture
Screaming Architecture
DCI
BCE