NNTP-Posting-Date: Fri, 18 Oct 2013 03:05:00 -0500 Date: Fri, 18 Oct 2013 09:04:57 +0100 From: lipska the kat <"nospam at neversurrender 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> <44SdnR1nzv406sPPnZ2dnUVZ_q2dnZ2d@westnet.com.au> <525f31cc$0$297$14726298@news.sunsite.dk> <5260884b$0$306$14726298@news.sunsite.dk> In-Reply-To: <5260884b$0$306$14726298@news.sunsite.dk> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 8bit Message-ID: <_6OdnVfeIrgxdv3PnZ2dnUVZ8rSdnZ2d@bt.com> Lines: 90 X-Usenet-Provider: http://www.giganews.com X-AuthenticatedUsername: NoAuthUser X-Trace: sv3-oUD6izBDjp1AKhOtFujbFBmMkb0mw7zfQtZM9a9M2er3LEIrDWfWGtPKBYP8ARqcbclPFlF2yxx+vib!eIMcuDKjJkjozYmTRWpQSpX7N48wyXaGgBc67xvQFyLYcLbj0K9ZTmJESGDM4uMGSMJUR4kYhyHU 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: 4259 Path: csiph.com!usenet.pasdenom.info!news.stben.net!border3.nntp.ams.giganews.com!backlog3.nntp.ams.giganews.com!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 Xref: csiph.com comp.lang.java.programmer:26370 On 18/10/13 02:00, Arne Vajhøj wrote: > On 10/17/2013 3:57 AM, lipska the kat wrote: >> On 17/10/13 01:39, Arne Vajhøj wrote: >>> On 10/16/2013 8:39 AM, lipska the kat wrote: >>>> On 16/10/13 12:24, Qu0ll wrote: >>>>> "lipska the kat" wrote in message >> >> >> >>> I think that depends on the system in question. >>> >>> And the fact that you have never had the need for a Person class does >>> not imply that no case exist where it is needed. >> >> I'd bet the farm that I could come up with a better name for *any* >> concept, in any model. > > Apparently not. See below. > >>> Example: in Denmark we have something called Central Person Register for >>> all danes. I find it very likely that they have a Person class, because >>> they deal with persons. >> >> Good grief I hope not >> >> Citizen, > > It contain some non-citizens. Then there is an error in your original statement You said "... called Central Person Register for all Danes (my capitalization)." Calling someone a *Dane* implies they are a 'Citizen' of Denmark Of course a Dane may give up his Citizenship ... in which case does he belong in the Danish Central Person Register? But he's a Dane by birth you cry ... does he still belong in the register? I don't know, ask the client (the Danish government presumably). If he does it implies a new Class (LapsedCitizen perhaps). or maybe just an attribute of Citizen ... Boolean lapsed; > >> Resident, > > It contain some non-residents. If someone is not a Dane and is not a Resident and is not a LapsedCitizen then why is he in the register? > >> Fish Pie > > It does not contain any fish pies. Shame, I like fish pie. There really is no need for a Person class Arne If you want a base class then how about ... oh I don't know, Dane ... but what of non Danes? How about RegisterEntry ... it describes perfectly what the thing is, it is status agnostic and can cover any bizarre Danish concept of 'Danishness' RegisterEntry <- Citizen <- LapsedCitizen RegisterEntry <- Resident RegisterEntry <- FoodItem <- FishPie etc Or maybe an entry has a Role There are a million better words than Person Of course I have nothing against People, I married one and have a young one of my own. I just think that the class 'Person' doesn't say anything *specific* enough about a concept from the problem space. -- Lipska the Kat©: Troll hunter, sandbox destroyer and farscape dreamer of Aeryn Sun GNU/Linux user #560883 - http://www.linuxcounter.net