Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.java.programmer > #26964
| Path | csiph.com!usenet.pasdenom.info!weretis.net!feeder4.news.weretis.net!feeder2.ecngs.de!ecngs!feeder.ecngs.de!Xl.tags.giganews.com!border1.nntp.ams.giganews.com!nntp.giganews.com!local2.nntp.ams.giganews.com!nntp.bt.com!news.bt.com.POSTED!not-for-mail |
|---|---|
| NNTP-Posting-Date | Tue, 17 Dec 2013 02:47:26 -0600 |
| Date | Tue, 17 Dec 2013 08:47:21 +0000 |
| From | lipska the kat <"lipskathekat at yahoo dot co dot uk"> |
| Organization | Trollbusters 3 |
| User-Agent | Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130308 Thunderbird/17.0.4 |
| MIME-Version | 1.0 |
| Newsgroups | comp.lang.java.programmer |
| Subject | Re: Java EE Architecture |
| References | <69e1528a-aa62-41ce-88e5-1540f437e89e@googlegroups.com> <qMCdnd-cQ4RiAcvPnZ2dnUVZ7tudnZ2d@bt.com> <l3ljnp$i9c$1@shakotay.alphanet.ch> <0672ja-utj.ln1@tempest.fredriksson.dy.fi> <daadnWh395wh7cPPnZ2dnUVZ8hSdnZ2d@bt.com> <2IMru.14$TA.9@fx09.iad> |
| In-Reply-To | <2IMru.14$TA.9@fx09.iad> |
| Content-Type | text/plain; charset=ISO-8859-1; format=flowed |
| Content-Transfer-Encoding | 8bit |
| Message-ID | <AbSdnRbJxfcCki3PnZ2dnUVZ7q2dnZ2d@bt.com> (permalink) |
| Lines | 111 |
| X-Usenet-Provider | http://www.giganews.com |
| X-AuthenticatedUsername | NoAuthUser |
| X-Trace | sv3-X8W7QpN48H0R9YK4ssnRBgh17yCHeT6gwrmOGqJDnJg4hvnDlHlWS3yUCo5srHvLbG/qG4oig/r12zr!kTz9uWaIMTv4HeiR9h9YJ1+gx0129ZKW58x9WGhgtqFEdQ12Q7TcdgoBQQYHPZoyIARM/WcN28KZ |
| X-Complaints-To | abuse@btinternet.com |
| X-DMCA-Complaints-To | abuse@btinternet.com |
| X-Abuse-and-DMCA-Info | Please be sure to forward a copy of ALL headers |
| X-Abuse-and-DMCA-Info | Otherwise we will be unable to process your complaint properly |
| X-Postfilter | 1.3.40 |
| X-Original-Bytes | 5572 |
| Xref | csiph.com comp.lang.java.programmer:26964 |
Show key headers only | View raw
On 17/12/13 00:14, Arved Sandstrom wrote:
> On 10/16/2013 07:55 AM, lipska the kat wrote:
>> On 16/10/13 11:42, Donkey Hottie wrote:
>>> 16.10.2013 11:45, 1connu kirjoitti:
>>>> lipska the kat a écrit :
>>>>> On 09/10/13 21:41, art.marole@gmail.com wrote:
>>>>>> Hi all,
>>>>>>
>>>>>> I would like to prepare typical Java EE solution (EJB, JSF, JPA) now,
>>>>>> and I have quite stupid problem related with domain objects. I want
>>>>>> to create Person class as persistence class, but I don't know in
>>>>>> which module I shoud put this class: Business Layer (ejb module) or
>>>>>> in Integration Layer (jar module).
>>>>>>
>>>>>> Person class is more related with logic, so I should put it in ejb
>>>>>> module, but in this case I will need to create dependency relation
>>>>>> from Integration Layer to Business Layer as Integration Layer need to
>>>>>> know what object should store in DB (ex. void store(Person
>>>>>> object){};).
>>>>>> Put Person class in Integration Layer will remove this unwanted
>>>>>> dependency, but I feel that Person class is more Business class then
>>>>>> Integration class.
>>>>>>
>>>>>> What do you think about it?
>>>>>
>>>>>
>>>>> A Person class ... A PERSON class., please, please, *please* don't
>>>>> have a Person class
>>>>>
>>>>> For the sake of whatever omnipotent deity you pray to, do not have a
>>>>> Person class
>>>>>
>>>>> *People* do not belong in a computer system.
>>>>>
>>>>> Why?
>>>>>
>>>>> Because it's a poor abstraction.
>>>>>
>>>>> How are you going to model consciousness, sentience, the 'mind', the
>>>>> 'soul'? let alone arms legs, eyes and teeth :-)
>>>>>
>>>>> You *do not need* a Person class.
>>>>>
>>>>> Let's put it another way
>>>>>
>>>>> The very fact that you are having problems deciding where your Person
>>>>> belongs should alert you to the fact that it is a poor abstraction.
>>>>>
>>>>> Try Account, or Record, or if you absolutely *must* User but not
>>>>> Person, you will end up regretting it.
>>>>>
>>>>> lipska
>>>>>
>>>>>
>>>> Why not ?
>>>> You can have an abstract class Person with minimum field (name, date
>>>> birth) and sub class depending of role of theses persons (ex User
>>>> (login/password) ) in your model.
>>>
>>> I see no problem with Person.
>>>
>>> I have interface IPerson, and implementations Person and ExternalPerson.
>>> I'm a lead programmer on an Identity Management solution.
>>
>> You *cannot* be serious ... IPerson groan :-(
>>
>> If you are developing an Identity Management system surely Identity
>> might be a better abstraction ... just a thought.
>
> Must admit, IPerson made me cringe too. In any context I can think of.
>
> I'm not as antagonistic to the Person concept as an implementation.
> Despite what you said, all a coder needs to do with that concept is
> model just what they need. If I was going to model a pedestrian mobility
> study using some random algorithms, I might well call my discrete
> construct a Person.
What about ... oh I don't know, Pedestrian?
It kind of says what it is, doesn't it?
What about guide dogs?
You say
"all a coder needs to do with that [Person] concept is model just what
they need"
Well this is the point isn't it?
To me, saying that you just model what you need implies that the
component you are modeling could be made less complex by reducing the
concept to a more limiting name. Person could mean anything, Pedestrian
means Pedestrian, nothing more.
Contrary to what some respondents to this thread think, this is not a
dogmatic or idealogical view on my part. I have proved to myself and
others (so far) by practical application that all a Person class does is
confuse the issue at hand.
It's all about focusing our imperfect minds on complex problems. Giving
things suitably limiting names helps us to discard issues irrelevant to
the current problem space.
Good to chat with you again
Lipska
--
Lipska the Kat©: Troll hunter, sandbox destroyer,
treacherous feline and farscape dreamer of Aeryn Sun
GNU/Linux user #560883 - http://www.linuxcounter.net
Back to comp.lang.java.programmer | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Java EE Architecture art.marole@gmail.com - 2013-10-09 13:41 -0700
Re: Java EE Architecture Lew <lewbloch@gmail.com> - 2013-10-09 14:45 -0700
Re: Java EE Architecture Arne Vajhøj <arne@vajhoej.dk> - 2013-10-09 22:00 -0400
Re: Java EE Architecture Arne Vajhøj <arne@vajhoej.dk> - 2013-10-09 22:18 -0400
Re: Java EE Architecture art.marole@gmail.com - 2013-10-10 00:47 -0700
Re: Java EE Architecture Arne Vajhøj <arne@vajhoej.dk> - 2013-10-16 20:37 -0400
Re: Java EE Architecture lipska the kat <"nospam at neversurrender dot co dot uk"> - 2013-10-10 13:26 +0100
Re: Java EE Architecture 1connu <1connu999@gmail.com> - 2013-10-16 10:45 +0200
Re: Java EE Architecture Donkey Hottie <donkey@fredriksson.dy.fi> - 2013-10-16 13:42 +0300
Re: Java EE Architecture lipska the kat <"nospam at neversurrender dot co dot uk"> - 2013-10-16 11:55 +0100
Re: Java EE Architecture Donkey Hottie <donkey@fredriksson.dy.fi> - 2013-10-16 14:18 +0300
Re: Java EE Architecture Donkey Hottie <donkey@fredriksson.dy.fi> - 2013-10-16 14:25 +0300
Re: Java EE Architecture lipska the kat <"nospam at neversurrender dot co dot uk"> - 2013-10-16 14:23 +0100
Re: Java EE Architecture Donkey Hottie <donkey@fredriksson.dy.fi> - 2013-10-16 17:10 +0300
Re: Java EE Architecture lipska the kat <"nospam at neversurrender dot co dot uk"> - 2013-10-16 16:44 +0100
Re: Java EE Architecture "L." <carisio@gmail.com> - 2013-10-16 10:15 -0700
Re: Java EE Architecture lipska the kat <"nospam at neversurrender dot co dot uk"> - 2013-10-16 19:01 +0100
Re: Java EE Architecture "L." <carisio@gmail.com> - 2013-10-16 12:17 -0700
Re: Java EE Architecture Martin Gregorie <martin@address-in-sig.invalid> - 2013-10-16 21:01 +0000
Re: Java EE Architecture Arne Vajhøj <arne@vajhoej.dk> - 2013-10-16 20:40 -0400
Re: Java EE Architecture Donkey Hottie <donkey@fredriksson.dy.fi> - 2013-10-17 00:00 +0300
Re: Java EE Architecture Wayne <nospam@all.invalid> - 2013-10-16 23:08 -0400
Re: Java EE Architecture Donkey Hottie <donkey@fredriksson.dy.fi> - 2013-10-19 17:05 +0300
Re: Java EE Architecture Lew <lewbloch@gmail.com> - 2013-10-19 14:48 -0700
Re: Java EE Architecture lipska the kat <"nospam at neversurrender dot co dot uk"> - 2013-10-20 09:00 +0100
Re: Java EE Architecture "Qu0ll" <Qu0llSixFour@gmail.com> - 2013-10-20 19:40 +1100
Re: Java EE Architecture lipska the kat <"nospam at neversurrender dot co dot uk"> - 2013-10-20 10:07 +0100
Re: Java EE Architecture Arved Sandstrom <asandstrom2@eastlink.ca> - 2013-12-16 20:14 -0400
Re: Java EE Architecture lipska the kat <"lipskathekat at yahoo dot co dot uk"> - 2013-12-17 08:47 +0000
Re: Java EE Architecture Jeff Higgins <jeff@invalid.invalid> - 2013-10-16 20:19 -0400
Re: Java EE Architecture Jeff Higgins <jeff@invalid.invalid> - 2013-10-16 21:24 -0400
Re: Java EE Architecture lipska the kat <"nospam at neversurrender dot co dot uk"> - 2013-10-16 11:49 +0100
Re: Java EE Architecture "Qu0ll" <Qu0llSixFour@gmail.com> - 2013-10-16 22:24 +1100
Re: Java EE Architecture lipska the kat <"nospam at neversurrender dot co dot uk"> - 2013-10-16 13:39 +0100
Re: Java EE Architecture Arne Vajhøj <arne@vajhoej.dk> - 2013-10-16 20:39 -0400
Re: Java EE Architecture "Qu0ll" <Qu0llSixFour@gmail.com> - 2013-10-17 13:43 +1100
Re: Java EE Architecture Jeff Higgins <jeff@invalid.invalid> - 2013-10-16 23:22 -0400
Re: Java EE Architecture lipska the kat <"nospam at neversurrender dot co dot uk"> - 2013-10-17 08:53 +0100
Re: Java EE Architecture lipska the kat <"nospam at neversurrender dot co dot uk"> - 2013-10-17 08:57 +0100
Re: Java EE Architecture "Qu0ll" <Qu0llSixFour@gmail.com> - 2013-10-17 19:31 +1100
Re: Java EE Architecture lipska the kat <"nospam at neversurrender dot co dot uk"> - 2013-10-17 09:56 +0100
Re: Java EE Architecture "Qu0ll" <Qu0llSixFour@gmail.com> - 2013-10-17 20:18 +1100
Re: Java EE Architecture lipska the kat <"nospam at neversurrender dot co dot uk"> - 2013-10-17 10:56 +0100
Re: Java EE Architecture "Qu0ll" <Qu0llSixFour@gmail.com> - 2013-10-17 21:39 +1100
Re: Java EE Architecture lipska the kat <"nospam at neversurrender dot co dot uk"> - 2013-10-17 12:08 +0100
Class Person [was: Java EE Architecture] "Chris Uppal" <chris.uppal@metagnostic.REMOVE-THIS.org> - 2013-10-18 08:19 +0100
Re: Java EE Architecture Arne Vajhøj <arne@vajhoej.dk> - 2013-10-17 21:00 -0400
Re: Java EE Architecture Arne Vajhøj <arne@vajhoej.dk> - 2013-10-17 21:02 -0400
Re: Java EE Architecture lipska the kat <"nospam at neversurrender dot co dot uk"> - 2013-10-18 09:06 +0100
Re: Java EE Architecture lipska the kat <"nospam at neversurrender dot co dot uk"> - 2013-10-18 09:04 +0100
Re: Java EE Architecture Arne Vajhøj <arne@vajhoej.dk> - 2013-10-19 22:43 -0400
Re: Java EE Architecture lipska the kat <"nospam at neversurrender dot co dot uk"> - 2013-10-20 09:05 +0100
Re: Java EE Architecture Arne Vajhøj <arne@vajhoej.dk> - 2013-10-20 09:24 -0400
Re: Java EE Architecture Arne Vajhøj <arne@vajhoej.dk> - 2013-10-16 20:43 -0400
csiph-web