[aida] Web Components

Stefan Schmiedl s at xss.de
Fri Jun 22 11:48:18 CEST 2007


On Fri, 22 Jun 2007 10:00:42 +0200
Janko Mivšek <janko.mivsek at eranova.si> wrote:

> 
> - Distinction between components and extensions? Components are
> visual parts of web page, while extensions extents functionality of
> Aida? 

I'm not quite sure about this distinction myself, so I'll try to
explain the difference:

A Component is something that I can use as building block without much
worrying about details, like visual components in, say, Delphi or
whatever. It's something "local", IMO, for both developer and user (if
the component is really visible).

An extension to AIDA would be something more pervasive and behind the
curtains.

Imagine a LoginComponent, you can put it right smack in the middle of
your front page and leave it to the implementation to provide input
boxes. You could pass it a block for validating the authentication
data, and it's a nice, closed, reusable Component.

Now, tweaking AIDA to grant access to the current user would be an
extension, if it were not already built in. Or make AIDA aware of
individual access rights for users and groups. That would be an
extension, too.

Can you completely excise these functions with a few mouse clicks from
AIDA? I'd guess that it's not trivial, they're woven into things fairly
tight. 

Things like these I'd like to keep separate from the "easy" stuff that
Components usually are. Components would also be easy to keep in sync
with new AIDA releases, as they would probably use only a tiny portion
of the API. Extensions might break more easily. They are things that
I'd want/need to directly add to AIDA classes for seamless integration.

Like, one thing that came up in a recent IOWA project: The client
wanted an AutoLogout feature, as some client machines are in publicly
accessible places. Easily solved via redirect to login page. The time
interval was required to be set individually for each user, however.
IOWA does not have builtin users, so I only needed to adjust my own
classes.

AIDA already has the notion of users, so I'd like to extend those to
store their individual session durations until autologout. How would
you do this in AIDA?

> Are extensions also reusable web apps like Discussions in
> Aida-Parts? 

Part == large Component, built from smaller Components.
I want a Discussion Forum? I plug in the respective Part.

> Also, a name extensions clashes with category
> Aida-Extensions, which is mandatory in Squeak.

Those are Extensions to Squeak, required by AIDA, I guess?

> Any better name? Parts? Just Apps?
> 
> 
> - Packaging of add-ons for different dialects
> 
> - there will be a maintainer of add-on, what about porting it to 
> different dialects? Who will be responsible for that? Isn't it very 
> important to port any such add-on to as many dialects as possible?

Definitely. We'd need a matrix of people ... package maintainer and
port maintainers.

> - where to store Add-on packages? On aidaweb site? On public 
> repositories, on both?

There should be one central place where such things are available. If a
package or additional examples or better docs are available at external
sites, the better for the users. But there should be a *minimum* of
information at a place that's guaranteed to be accessible for a long
time.

Dang, another long mail.

s.


More information about the Aida mailing list