Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.java.programmer > #12545

Re: Hairy generics question

From Arved Sandstrom <asandstrom3minus1@eastlink.ca>
Newsgroups comp.lang.java.programmer
Subject Re: Hairy generics question
References (2 earlier) <ji8qfc$84a$1@news.albasani.net> <7822487.176.1330121248108.JavaMail.geo-discussion-forums@vbkl3> <aaV1r.13982$Pc2.8047@newsfe13.iad> <PKt2r.16538$kv1.5954@newsfe03.iad> <Dp83r.17649$yb.11758@newsfe20.iad>
Message-ID <fFy3r.17567$np3.7550@newsfe05.iad> (permalink)
Organization Public Usenet Newsgroup Access
Date 2012-02-29 19:37 -0400

Show all headers | View raw


On 12-02-28 01:46 PM, Daniel Pitts wrote:
> On 2/26/12 9:13 AM, Arved Sandstrom wrote:
>> On 12-02-24 07:36 PM, Daniel Pitts wrote:
>>> On 2/24/12 2:07 PM, sclaflin@webucator.com wrote:
>>>> On Friday, February 24, 2012 3:03:56 PM UTC-5, Lew wrote:
>>>>> On 02/24/2012 11:12 AM, sclaflin wrote:
>>>>
>>>>> Perhaps the circularity is necessary, but I've worked with my fellows
>>>>> on a few
>>>>> hairy generics issues where circularity seemed necessary, and it
>>>>> never was.
>>>>> Each time it turned out that an acyclic type graph did the trick, and
>>>>> better
>>>>> than the initial circular approach.
>>>>>
>>>>> Of course since you can't share any of the relevant details we have
>>>>> no way of
>>>>> helping you see if there is an acyclic approach. Still, I cannot
>>>>> accept your
>>>>> simple declaration that there isn't. The odds are just too strongly
>>>>> against it.
>>>>
>>>> Lew,
>>>>
>>>> You could well be right.  I based my structure on a framework that had
>>>> Presenter<V>   and View, but then the view didn't know how to talk to
>>>> the presenter.  So, they add in ReverseView<P>   separately.  I was
>>>> trying to combine them both, and with those dual sorts of situations
>>>> I've always ended up with circularity.
>>>>
>>>> You guessed that I've got proprietary code that I can't share, and I'm
>>>> supposed to be spending time on that, not general-purpose things.
>>>> But, if I can come up with a minimal but complete example, I'll post
>>>> it.
>>>
>>> In what way is a Presenter different from a "controller".  View's should
>>> never know about Controllers, only about models.  Controllers know about
>>> specific views and specific models.  Models know about generic
>>> listeners, if you need to have an active view (non web-app stuff).
>>
>> For what it's worth, Daniel, JSF is arguably [1] MVP
>> (Model-View-Presenter) and not MVC (Model-View-Controller). There have
>> been many attempts to characterize JSF as MVC, and that's what most
>> folks think JSF is, but a body has to jump through some hoops in order
>> to define what the V and the C are in JSF in order to make that label
>> stick. MVP on the other hand is a much better description.
> I've just read the original Taligent, Inc. PDF on what MVP is, and it
> looks like its little more than a clarification of MVC, with some new
> concepts pulled out. Things that were inferred in the "controller" are
> now their own concepts.
> 
> In that case, my original advice still stands.  View shouldn't know
> about the Presenter, only about the Model, and event listeners.  The
> Model shouldn't know about the View or Presenter, only about observers,
> and the Presenter is basically knows about everything.
> 
> As such, you can't easily have a Generic Presenter. Also, as such, you
> needn't have the view have any information about the "type" of the
> Presenter. The View also only needs the interface type of the Model, not
> the specific type.  The Model needs only to know only interface types as
> well.
> 
> This allows you to completely remove the circular type dependencies,
> which is one of the main benefits of MVC and MVP architectures in the
> first place.

Let me put it this way. Like I said above, if you're going to make a
distinction between MVC and MVP at all (and a lot of people don't,
because they've never heard of MVP, or they choose not to worry about
the distinction), then MVP describes JSF better than MVC does.

If you choose to think of JSF as MVC - let's say because you aren't
interested in breaking out MVP as a derivative of MVC - then that's fine
too. I have no problem with that, it's what I actually do myself,
because most folks haven't heard of MVP anyway so why confuse them? I
would like it though if people who "knowledgeably" classify JSF as being
MVC could identify what the Controller is in JSF: I've run across more
people than not who either think it's the FacesServlet or just don't know.

AHS
-- 
-- Gaiety is the most outstanding feature of the Soviet Union.
Josef Stalin, November 1935

Back to comp.lang.java.programmer | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

Hairy generics question sclaflin <steve@steveclaflin.com> - 2012-02-21 06:30 -0800
  Re: Hairy generics question Lew <noone@lewscanon.com> - 2012-02-21 09:24 -0800
  Re: Hairy generics question Roedy Green <see_website@mindprod.com.invalid> - 2012-02-21 11:05 -0800
    Re: Hairy generics question Lew <noone@lewscanon.com> - 2012-02-21 12:09 -0800
  Re: Hairy generics question Daniel Pitts <newsgroup.nospam@virtualinfinity.net> - 2012-02-21 18:04 -0800
    Re: Hairy generics question Lew <noone@lewscanon.com> - 2012-02-21 18:31 -0800
    Re: Hairy generics question Steven Simpson <ss@domain.invalid> - 2012-02-22 08:31 +0000
  Re: Hairy generics question sclaflin@webucator.com - 2012-02-24 11:12 -0800
    Re: Hairy generics question Lew <noone@lewscanon.com> - 2012-02-24 12:03 -0800
      Re: Hairy generics question sclaflin@webucator.com - 2012-02-24 14:07 -0800
        Re: Hairy generics question Daniel Pitts <newsgroup.nospam@virtualinfinity.net> - 2012-02-24 15:36 -0800
          Re: Hairy generics question sclaflin@webucator.com - 2012-02-25 10:27 -0800
          Re: Hairy generics question Arved Sandstrom <asandstrom3minus1@eastlink.ca> - 2012-02-26 13:13 -0400
            What is Model View Presenter. (Was: Hairy generics question) Daniel Pitts <newsgroup.nospam@virtualinfinity.net> - 2012-02-26 10:22 -0800
              Re: What is Model View Presenter. (Was: Hairy generics question) Lew <noone@lewscanon.com> - 2012-02-26 13:08 -0800
                Re: What is Model View Presenter. (Was: Hairy generics question) Arne Vajhøj <arne@vajhoej.dk> - 2012-02-26 18:17 -0500
                Re: What is Model View Presenter. (Was: Hairy generics question) sclaflin@webucator.com - 2012-02-28 06:22 -0800
            Re: Hairy generics question Daniel Pitts <newsgroup.nospam@virtualinfinity.net> - 2012-02-28 09:46 -0800
              Re: Hairy generics question Daniel Pitts <newsgroup.nospam@virtualinfinity.net> - 2012-02-28 09:49 -0800
              Re: Hairy generics question Lew <noone@lewscanon.com> - 2012-02-28 12:45 -0800
              Re: Hairy generics question Arved Sandstrom <asandstrom3minus1@eastlink.ca> - 2012-02-29 19:37 -0400
                Re: Hairy generics question Lew <noone@lewscanon.com> - 2012-02-29 22:32 -0800
                Re: Hairy generics question Arne Vajhøj <arne@vajhoej.dk> - 2012-03-09 21:33 -0500
                Re: Hairy generics question Lew <noone@lewscanon.com> - 2012-03-10 07:38 -0800
                Re: Hairy generics question Arved Sandstrom <asandstrom3minus1@eastlink.ca> - 2012-03-10 12:45 -0400
                Re: Hairy generics question Arne Vajhøj <arne@vajhoej.dk> - 2012-03-10 12:03 -0500
                Re: Hairy generics question Lew <noone@lewscanon.com> - 2012-03-10 09:47 -0800
                Re: Hairy generics question Arne Vajhøj <arne@vajhoej.dk> - 2012-03-10 13:26 -0500
                Re: Hairy generics question Arved Sandstrom <asandstrom3minus1@eastlink.ca> - 2012-03-11 14:06 -0300
                Re: Hairy generics question Arne Vajhøj <arne@vajhoej.dk> - 2012-03-11 18:20 -0400
              Re: Hairy generics question Arne Vajhøj <arne@vajhoej.dk> - 2012-03-09 21:43 -0500

csiph-web