EF + DDD = true? by Jimmy Nilsson. About Jimmy Nilsson Primarily a developer and architect, but also a trainer and author Blog: JimmyNilsson.com/blog/

Slides:



Advertisements
Similar presentations
V 6, Mats Strandberg ORM With Hibernate.
Advertisements

Object Relational Mapping (ORM). Persistence Almost all applications require some form of persistence. Almost all persistence is done using relational.
Bruce Scharlau, University of Aberdeen, 2012 Data storage options for mobiles Mobile Computing.
Data Access Layer (DAL) App Logic Database View Web Service App Logic App Logic Trust Boundary.
NHibernate Object/Relational Persistence for.NET.
Shyam Pather Development Manager Microsoft Session Code: DTL402.
.NET Database Technologies: Open-Source Frameworks.
Object Relational Mapping A to Z. About Me Over A Decade of I.T. Experience Web Developer, DBA, DevOps, Mobile Microsoft Cert. in SQL Server Twitter:
Domain-Driven Design Fundamentals Automated Testing for Fraidy Cats Like Me Getting Started with Entity Framework 5 Entity Framework in the Enterprise.
Discovering the value of Domain-Driven Design presented by Herman Lintvelt (c) 2011 Polymorph Systems.
Craig Berntson
Building Enterprise Applications Using Visual Studio ®.NET Enterprise Architect.
EXtreme.NET Dr. Neil Roodyn. eXtreme.NET Who is Dr. Neil? MISSION: To increase the value of your Software Business Working with software for way too long.
Programming with eyes wide open. Your host today Subby Angelov Team
St Louis Day of.NET 2011 Unit Testing Patterns and Anti-Patterns Steve Bohlen Senior Software Engineer SpringSource/VMware Blog:
Presenter: PhuongNQK. Goal Give an overview of currently prominent app architectures in relation to each other.
1 Entity Framework Introduction. Outline Goals of Entity Framework 2.
10 Ways to Get Your Project Started Right Benjamin Day.
Entity Framework Code First End to End
UPortal Developers MIT August 2004 Persistence Strategy for uPortal 3 Mike DeSimone the r-smart group
Presenter - Donn Felker.  Senior Consultant for Microsoft Gold Certified Partner- Statêra.  8 years of experience in developing and architecting enterprise.
.NET Database Technologies: Entity Framework additional notes – part 2.
Michael Burnside Blog: Software Quality Assurance, Quality Engineering, and Web and Mobile Test.
Experiences from years of agile coaching by Jimmy Nilsson.
Domain-Driven Design using the ADO.NET Entity Framework Tim McCarthy Principal Engineer, InterKnowlogy
The Persistence Ignorant Domain Model James Kovacs
Domain Driven Design. Set of blog posts spanning 10 months – building an app Fefactored along the way code to Patterns eg repository.
Intro to Entity Framework By Shahed Chowdhuri Don’t drown in database design during WakeUpAndCode.com.
Todd Snyder Development Team Lead Infragistics Experience Design Group.
Visual Studio 2010 and.NET Framework 4 Training Workshop.
Domain-Driven Design Tim McCarthy Principal Engineer, InterKnowlogy
Building an Offline Smart Client using Domain-Driven Design Principles Tim McCarthy.
CHAPTER 14 USING RELATIONAL DATABASES TO PROVIDE OBJECT PERSISTENCE (ONLINE) © 2013 Pearson Education, Inc. Publishing as Prentice Hall 1 Modern Database.
Domain Driven Design Ryan Riley Catapult Systems, Inc.
Ewout Kramer, Furore CIM-based CRUD storage. Architectural context CDR Service v3v2 ? MEPD KN ICIP v3-R v2 AORTA v3.
Designing Complex Software Systems: Introduction CS 6961 – Lecture 0 Nathan Dykman.
Domain and Persistence Patterns. Fundamental Pattern Types Design Patterns Business Logic Patterns.
Applying Domain-Driven Design Jimmy Nilsson Webcast with UML China
Fall CIS 764 Database Systems Engineering L18.2 : Object Relational Mapping … ….Object persistence.
Introducing… Apache Isis
Roy Osherove Sela Group ISerializable.com (blog)
Data Access Layer Shahed Chowdhuri Using Code-First Migrations.
All information's of PLINQO in this Document, I got it from: So, you could visit the link above to research.
Leverage NHibernate in your architecture without tight coupling Presented by Jeffrey Palermo CTO, Headspring Systems Microsoft MVP, MCSD.Net
Developing with WCF RIA Services Quickly and Effectively Nikhil Kothari Software Architect, Microsoft Corporation Blog:
Domain Driven Design Using.NET Dave Rael. What’s wrong with this code? Public void CallMethodThatMightThrowScaryException(int carelessInputWithoutValidation)
Domain-Driven Design for the Database-Driven Mind
consultant/mentor Microsoft MVP, INETA Speaker, ASPInsider, MCP, VTdotNET Leadercontact twitter theDataFarm.com/blog.
Entity Framework 7 Who Are You & What Have You Done to my ORM?
Introducing… Apache Isis. Ubiquitous Language With a conscious effort by the team, the domain model can provide the backbone for that common language.
Performance, Profiling, & Optimization Tools for Enterprise Java Applications S. Ray Holder Michael J. Donahoo.
Entity Framework 7: What’s New? Ricardo Peres Technical Evangelist at Simplifydigital. Microsoft
Thank you to our sponsors!. Domain Driven Design Using.NET Dave Rael.
DOMAIN DRIVEN DESIGN Dave 12 May WHAT IS DDD? Set of principles to aid in building complex systems Enables us to focus on core problem domain NOT.
ORM Basics Repository Pattern, Models, Entity Manager Ivan Yonkov Technical Trainer Software University
Data Access Methodologies: When to choose what (ADO.NET, Entity Framework, WCF Data Services) Wriju Ghosh Lead Partner Consultant, Microsoft.
COMPLEX PROJECTS Portfolio Selection Workflow Schedule Budgets Metadata SharePoint Departments MEDIUM PROJECTS Schedule Metadata Reports SharePoint.
ASP.NET Core* Shahed Chowdhuri Sr. Technical WakeUpAndCode.com A Quick Overview of ASP.NET Core * aka ASP.NET 5 before.
Building Enterprise Applications Using Visual Studio®
New Technology: Why, What ,How
5/15/2018 © 2014 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks.
Chapter 1 OBJECT-ORIENTED ANALYSIS AND DESIGN
ADO.NET Entity Framework
What is this talk about? How to actually use source control, how to get started with SSDT and how to start with continuous integration We will cover what.
.NET Database Technologies:
TechEd /17/2019 6:32 PM © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks.
Implementing Security in ASP.NET Core: Claims, Patterns, and Policies
Developing and testing enterprise Java applications
Data Access in Your Code Thinking Outside the Framework
Why should I care about SQL, if I have ORM?
Presentation transcript:

EF + DDD = true? by Jimmy Nilsson

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

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

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

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

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

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)

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

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

Time report

”- Show me the code!”

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

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