EF + DDD = true? - PowerPoint PPT Presentation

roth-serrano
ef ddd true n.
Skip this Video
Loading SlideShow in 5 Seconds..
EF + DDD = true? PowerPoint Presentation
Download Presentation
EF + DDD = true?

play fullscreen
1 / 13
Download Presentation
EF + DDD = true?
103 Views
Download Presentation

EF + DDD = true?

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. EF + DDD = true? by Jimmy Nilsson

  2. About Jimmy Nilsson Primarily a developer and architect, but also a trainer and author Blog: JimmyNilsson.com/blog/ Twitter: twitter.com/JimmyNilsson Author of ”Applying Domain-Driven Design and Patterns” and ”.NET Enterprise Design” Co-founder and CEO of factor10

  3. Relational database? O/RM or ”manual”? EF or NHibernate? DDD and TDD! EF 3.5, how to prepare for 4? ?

  4. Relational database? O/RM or ”manual”? EF or NHibernate? DDD and TDD! EF 3.5, how to prepare for 4? :-)

  5. Why TDD? TDD isn’t about testing... ...it’s about programming! To write simpler, clearer and more robust and maintainable code!

  6. Why DDD? Accidental complexity is bad ”Programming is understanding” (Kristen Nygaard) ”DDD == OO done right” Context is king Semantics over technology ...

  7. But also with TDD and DDD we most often need to persist data It’s just not the main focus... Assume that we might use a relational database EF? EF3.5 DB-first (generate metadata and classes) IPoco EF4 DB-first (generate metadata and classes) Model-first (”paint” metadata, generate DB and classes) Code-first (”generate” metadata in runtime, generate DB)

  8. Disclaimer Not a review! No production experience... No analysis...

  9. Domain expert: Lotta Developer: Jimmy Who needs a new app...TimeReport! Our story can begin...

  10. Time report

  11. ”- Show me the code!”

  12. Recommendation Frameworks come and go, good design lasts! So... Focus on DDD and TDD!

  13. References [DDD] Eric Evans: Domain-Driven Design [ADDDP] Jimmy Nilsson: Applying Domain-Driven Design and Patterns