Re: [Info-Ingres] String Manipulations
- From: andre.laframboise@xxxxxxxxxxxxx
- Date: Mon, 19 Mar 2007 12:57:41 -0400
I always considered the application layer as mostly workflow with part of
the business logic
that wasn't directly relalted to the database.
The database contain the business logic pertaining to the data (when
possible).
I've even seen the same logic covered in both layers. Although redundant,
the
backend is like a safety net in case something goes funny in the
application.
Andre
_____
From: info-ingres-bounces@xxxxxxxxxxxxxxxxxxxxxxxxx on behalf of Roy Hann
Sent: Mon 3/19/2007 12:16 PM
To: info-ingres@xxxxxxxxxxxxxxxxxxxxxxxxx
Subject: Re: [Info-Ingres] String Manipulations
"Ian McEwan" <imce@xxxxxxxxxxxx> wrote in message
news:mailman.9.1174317356.20015.info-ingres@xxxxxxxxxxxxxxxxxxxxxxxxx
<news:mailman.9.1174317356.20015.info-ingres@xxxxxxxxxxxxxxxxxxxxxxxxx> ...
Databases are called databases for a very good reason, it is because they
store data.
Database [management systems] are called databases because the things we use
to manage data today replaced things we used to call databases but no one
ever got around to inventing a better name. The name of a thing is not
the thing.
Just as an application server serves applications and a graphic user
interface provides a graphical user interface.
This is not sound reasoning. There are very good reasons to put things in
different layers, but it should be decided by how the layering adds value,
not how the layers are named. Nor is there any reason to suppose the layers
we commonly use are the best, or even good. (I use 'em; I don't make the
mistake of liking them.)
I would no sooner think of putting my business logic in a database than I
would think of storing my data using HTML.
I might agree with you if I knew what you meant by the term "business
logic". I might agree with Emile too, when he tells me what he means. But
as stated your comment can't be judged.
If you seriously believe your business logic should live in the database
you
should be using Jasmine.
Aaaaaaaaaaaaaaargh! This is wind-up right? There is nothing on this green
earth that deserves a fate like Jasmine! What a total botch-up that was.
In fact one of the reasons it was a botch (apart from making the howling
error of assuming a class is somehow analagous to a table) is that it made
it impossibly hard to build a practical system that stored the methods and
the data together. For one thing, there was no way to
ammend/update/correct the methods on new instances without also having those
changes apply to existing instances whether it made sense or not.
If Jasmine is your counter-example to prove the unwisdom of having business
logic in the database you are going to have to try again. Jasmine being
rubbish doesn't prove anything.
I believe if you want to make business logic centrally available to all
your
applications you should look at layering your application stack, ie
separate
presentation, business & data access logic, and use a service orientated
architecture, applications servers, web services, etc. and don't confuse
enforcing data relationships, constraints, domains, etc. with business
logic.
Well, once you take out enforcing data relationships, constraints, domains,
etc. there is a very small amount left to call business logic. Workflow is
about all that's missing, and arguably presentation.
Roy
_______________________________________________
Info-Ingres mailing list
Info-Ingres@xxxxxxxxxxxxxxxxxxxxxxxxx
http://www.kettleriverconsulting.com/mailman/listinfo/info-ingres
<http://www.kettleriverconsulting.com/mailman/listinfo/info-ingres>
.
- Prev by Date: Re: [Info-Ingres] String Manipulations
- Next by Date: Re: [Info-Ingres] String Manipulations
- Previous by thread: Re: [Info-Ingres] String Manipulations
- Next by thread: Re: [Info-Ingres] String Manipulations
- Index(es):
Relevant Pages
|