struts-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Cedric Dumoulin" <>
Subject Proposal : Coarse Grain Components
Date Tue, 03 Oct 2000 14:32:05 GMT

  Following is a proposal for Coarse Grain Components.  

This mail is a short description of the proposal. See more on this
proposal by downloading first implementation and examples on .

 You can also see this proposal as a web page at 

We want to be able to build web pages by assembling components. There
are two kinds of components : coarse grain components and fine grain
components. Coarse grain components are components made of several html
instructions. For example, a component rendering an address or a header
is a coarse grain component. Examples of fine grain components are an
input/output field performing I18n formatting, a popup menu, ... For
now, we only focus on coarse grain components. 

Following are the main goals that we want to reach : 

 - Reusable : it must be possible to write component that are reused in
different pages 
 - Independent : A component must be, as much as possible, independent
from its "parent" (the entity that use the component). 
 - Build complex pages (like portal) by assembling components.  
    - Divide the complexity of the page in smaller components 
    - Focus on each component independently, without care on other
    - Focus on assembling, or layout, components without care on
component content. 

 - Have consistent web site "look and feel" by providing some common
"layout components", and assembling common components like header, menu,
 - Perform changes on all pages by only changing concerned component. 
    - For example, change all menus or headers by only changing the
concerned component. No need changes in each page. 
 - Be able to modify pages composition, or components content from a
central point, like a description file. 
Have a library of common components. Don't rewrite them (or copy/paste)
each time. 
    - Improvement in one component will be propagated to all pages using
this component (not so easy with copy/paste). 
 - A component can be made by assembling other component. 
 - Simple to understand and use 
    - Preferably, component is describe in a JSP file. 
 - Fit in JSP and Struts philosophy. 

See more on this proposal by downloading implementation and examples .

View raw message