|
List Info
Thread: Architecture Question
|
|
| Architecture Question |
  United States |
2008-04-28 05:36:54 |
|
I have just started to setup a test project using Ibatis for .Net. This is my first time using Ibatis, not to mention the data mapper pattern. I have my app structured into a persistence layer, service layer, domain layer, a UI layer, and also a test project. Right now, I am using service classes to interact with the Ibatis mapper API. So, I may have an EmployeeService class which would wrap calls for CRUD operations, and also coordinate any other application wide operations an employee object would be involved with. One thing about doing this is that the service classes will become verbose. My service classes take an instance of ISqlMapper, and I am currently using what some call "poor man's dependency injection" to inject a default implementation. This also allows me to mock this instance using a mocking framework during testing.
Another thought was to put wrapper classes in the persistence layer that wrap all crud operations. That, or perhaps use something like the repository pattern. The problem with both of these approaches is they seem like a lot of work for little value added.
I guess I'm looking for some advice on whether the service layer approach will work well and scale, or if another layer of abstraction will provide enough value to warrant the effort. By the way, I am thrilled with how fast I was able to get up and running with Ibatis, and really pleased with the results. Where I work, legacy databases, complex queries (reporting), and sprocs rule the day, so Ibatis fits much better than something like nhibernate.
Thanks.
-S
In a rush? Get real-time answers with Windows Live Messenger. |
| Re: Architecture Question |

|
2008-04-28 06:06:44 |
On Mon, Apr 28, 2008 at 6:36 AM, Sal Bass <salbass575 hotmail.com> wrote:
<snip/>
> I guess I'm looking for some advice on whether the
service layer approach
> will work well and scale, or if another layer of
abstraction will provide
> enough value to warrant the effort. By the way, I am
thrilled with how fast
> I was able to get up and running with Ibatis, and
really pleased with the
> results. Where I work, legacy databases, complex
queries (reporting), and
> sprocs rule the day, so Ibatis fits much better than
something like
> nhibernate.
>
It seems like these are questions you should ask yourself at
project
completion
This list is more focused on syntax and low level issues,
but I can
offer my anecdote in that for a medium scale project I
architected
something very similar and was pleased with the results.
Coming from a Java background, verbosity does not scare me
So
if a
pattern and design offer a readable, maintainable, scalable
solution
that enforces separation of concerns, I'm happy. In that
light, If
you haven't already, I would suggest a tracer bullet
implementation to
see how clunky your design feels.
Sheldon
|
|
| RE: Architecture Question |
  United States |
2008-04-28 07:55:04 |
|
You are correct. This is the wrong forum for this sort of question, so I will let this end here.
I have indeed started to test out the implementation I suggested, and will see how it works out. My concern is that I am moving my team away from a Microsoft centric approach, and don't want to introduce too many potentially unnecessary abstractions that could possibly hinder development.
For myself, I am all for introducing other layers of abstraction if they provide ease of maintainability and separation of concerns.
Thanks for your thoughts.
> Date: Mon, 28 Apr 2008 07:06:44 -0400 > From: sheldonb gmail.com > To: user-cs ibatis.apache.org > Subject: Re: Architecture Question > > On Mon, Apr 28, 2008 at 6:36 AM, Sal Bass <salbass575 hotmail.com> wrote: > <snip/> > > I guess I'm looking for some advice on whether the service layer approach > > will work well and scale, or if another layer of abstraction will provide > > enough value to warrant the effort. By the way, I am thrilled with how fast > > I was able to get up and running with Ibatis, and really pleased with the > > results. Where I work, legacy databases, complex queries (reporting), and > > sprocs rule the day, so Ibatis fits much better than something like > > nhibernate. > > > > It seems like these are questions you should ask yourself at project > completion  > > This list is more focused on syntax and low level issues, but I can > offer my anecdote in that for a medium scale project I architected > something very similar and was pleased with the results. > > Coming from a Java background, verbosity does not scare me So if a > pattern and design offer a readable, maintainable, scalable solution > that enforces separation of concerns, I'm happy. In that light, If > you haven't already, I would suggest a tracer bullet implementation to > see how clunky your design feels. > > Sheldon
Back to work after baby– how do you know when you’re ready? |
[1-3]
|
|