Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

The wages of sin: Over architecture in the real world

DZone's Guide to

The wages of sin: Over architecture in the real world

Free Resource

RavenDB vs MongoDB: Which is Better? This White Paper compares the two leading NoSQL Document Databases on 9 features to find out which is the best solution for your next project.  

This time, this is a review of the Sharp Commerce application. Again, I have stumbled upon the application by pure chance, and I have very little notion about who wrote it. The problem is that this system seems to be drastically more complicated than it should be.

I am going to focus  on different parts of the system in each of those posts. In this case, I want to focus on the very basis for the application data access:

image

Are you kidding me? This is before you sit down to write a single line of code, mind you. Just the abstract definitions for everything makes my head hurt.

It really hits you over the head when you get this trivial implementation:

public class EmailTemplateRepository : Repository<EmailTemplate>, IEmailTemplateRepository
{
public EmailTemplate Get(EmailTemplateLookup emailId)
{
return Get((int)emailId);
}
}

 

Yes, this is the entire class.  I am sorry, but I really don’t see the point. The mental weight of all of this is literally crashing.

Get comfortable using NoSQL in a free, self-directed learning course provided by RavenDB. Learn to create fully-functional real-world programs on NoSQL Databases. Register today.

Topics:

Published at DZone with permission of

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}