Hey...

I think most of you seem to be missing the point somewhat. 
Let me explain:

There are certain reasons why languages such as Java and 
other OO languages have evolved. Stability, 
reusabilty/modularity, ease of use, security etc. Object 
Orientation exists because people wanted a way to easier 
abstract problems, and represent them in a more human-like 
fashion.
Now what DynLayer tries to do is simulate parts of this 
whilst providing funcionality for robust, consistant and 
simple dHtml creation.

But how can you create a complex API such as DynAPI without 
having some fundamentals already in place? Such as a fast, 
stable, easy and safe way of creating a class 
hierarchy/implementing basic OOP functionality.
I mean, how long has this "current" release been in a 
debugging phase ??! Do you not think that this could have 
been avoided, atleast in part, by having a more stable 
coding ground to develop with?

True, Javascript's prototype based OO provide some 
functionality for creating "classes". But this approach is 
inherantly slow, memory consuming and error prone, since 
some of the most fundamental OOP functionality is not 
supported (such as true encapsulation).
Why go halfway, sort of do OOP, but not really, because 
it's too hard ? It's not! In the long run it's much 
simpler. Which is the exact point of DynAPI in the first 
place. There is a longer learning curve before you can use 
it, but when you do, your efforts are greatly simplified 
and accellerated.

What you would want, is to have somekind of Object 
providing the remaining OOP functionality that Javascript 
does not inherantly support, so that you don't have to 
recreate the wheel everytime you develop somekind of 
application or extension to it.
Pascals DynObject and Eytans SuperObject, are examples of 
what I'm talking about.
DynObject provides better modularity for DynAPI, and a 
SuperObject would provide the tools with which to better 
build a more modular DynAPI (there are a couple of more 
people that have developed a SuperObject/SuperClass).

Yes, you could argue that this would only lead to more 
bugs, and that you should rely on JavaScript's built-in way 
of handling OOP, and that this should be a API for 
designers, not for programmers and what have you...
But this is simply not true. 

1. DynAPI is a programming tool/interface for creating 
dHtml.
Now programming is the key word here. No matter what, you 
still have to PROGRAM. If you would want to create a 
simpler interface for creating dHtml (a WYSIWYG for 
instance), there still has to be someone who creates this 
interface, and I guarantee you, it won't be a designer! ;)

2. Having a SuperClass that provides basic OOP 
functionality, would provide the PROGRAMMER with the tools 
nessessary to create DynAPI with a lot more ease 
(again,this is the goal of OOP). 
For example, say that you would want to split up DynAPI per 
browser basis and make this seamless for the end 
programmer. If you would not have fundamental OOP 
functionality in place, this would be HARD!  

True, the SuperClass would have to be flawless and 
completely without bugs for this premise to work. 
But this is not impossible. I know, because I'm in the 
finishing stages of creating a comprehensive SuperClass 
myself (I might even create an opensource forum for it ;D )
SuperClass is, and should be, inherantly separate from 
DynAPI, and you could create whatever class hierarchy you 
would want with it, including DynAPI. 

In closing, I do hope that what I've said will infact sink 
in, and not just be flamed ;)

Alea Jacta Est, 
Bart

PS. I apoligize if this mail is doubled, my mail client 
seems to have flaked out on me DS


_______________________________________________
Dynapi-Dev mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/dynapi-dev

Reply via email to