On Fri, 17 Aug 2012 20:40:59 -0300, Jay Ginete <killer.tila...@gmail.com> wrote:

I have always thought that Tapestry5 was classified as a "Compontent-oriented" web framework and not as "MVC" web framework.

Tapestry 5 is definetely a component-oriented framework. Whether it is also MVC or not depends on the meaning you give to the term MVC. It seems you're considering MVC as the same as request-oriented. I don't think that way.

According to Wikipedia and its sources, "Model–View–Controller (MVC) is a type of computer user interface that separates the representation of information from the user's interaction with it.[1][2] The model consists of application data and business rules, and the controller mediates input, converting it to commands for the model or view.[3] A view can be any output representation of data, such as a chart or a diagram. Multiple views of the same data are possible, such as a pie chart for management and a tabular view for accountants. The central idea behind MVC is code reusability and separation of concerns." (http://en.wikipedia.org/wiki/Model–view–controller) I think Tapestry fits in this description, even considering it itself doesn't implement business rules, just uses them. In other words, it can be used to implement the V and the C. And some components, by themselves, are implemented following the MVC pattern.

I tend to think that each page in a Tapestry5 app is a single stand alone app that has components within it that respond to events. I even sometimes think of Tapestry5 apps as RIA without the "R" if you use the "zone" component in almost (or all) of your use cases.

As far as I know (and I may be completely wrong, as always), the term RIA is usually used in the sense that view logic is placed mostly in the client, not in the server. Here's the Wikipedia definition: "A Rich Internet Application (RIA) is a Web application that has many of the characteristics of desktop application software, typically delivered by way of a site-specific browser, a browser plug-in, an independent sandbox, extensive use of JavaScript, or a virtual machine.[1] Adobe Flash, JavaFX, and Microsoft Silverlight are currently the three most common platforms,...". Tapestry can be used to create RIAs, but I wouldn't consider itself a RIA. In the Java world, I'd consider the single page frameworks RIAs: GWT, Vaadin, Echo2, Echo3, etc.

PS: I love tilapia (the fish). It's sold and eaten a lot in Capitólio, Minas Gerais, Brazil, where I grew up. :)

--
Thiago H. de Paula Figueiredo

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
For additional commands, e-mail: users-h...@tapestry.apache.org

Reply via email to