> Could someone please review the following discourse presented 
> by a PhD ?
> 
> http://virtualschool.edu/wap/html/problem.html
> 
> Highly critical of JSP and MVC in general.

The author appears to be Brad Cox -- someone a little more
significant in computing history than just "a PhD".  The article
in question is really more of a rant on Web development.  His
main point seems to be that web application development isn't
sufficiently abstracted from the nuts and bolts of underlying
technologies.  It needs to be thought of in a way more like
traditional development.

The entire piece has four points, which can be boiled down as
follows, with commentary.

1. Web applications are not files
    There is no way to perform compile-time checking on links,
    which are always dynamically loaded at runtime.

This is a good point.  The only way to find bad links in most
web application development environments is to build the app,
run it, and start clicking.  A higher-level abstraction that
checks links at build time would definitely be useful.

2. Fields are not Strings
     Encapsulating field-level type information is important.
     Treating all fields as strings prevents this approach.

Another good point.  Struts can actually address this issue
by embedding variables of types other than String in an
ActionForm.  The "get" method would still have to accept a
String -- unavoidable given the nature of HTTP -- but could
then perform the conversion and store any error state for
later referral by the validate() method.

3. Strings might have more than one line
     JSP really sucks.  Oh, and you should be able to generate
     Java from JSP beforehand.

No one has come up with an ideal approach to mixing HTML or
text with code.  I don't think that his WAP example is any
better than JSP, especially when internationalization enters
the picture.

4. Configurations are not files
     Not everything needs to be in XML.

The information in a file like web.xml is quite static and
is specified by the application designer.  Replacing it with
Java code would allow for more options in defaults and error-
handling.  The "dynamic loading" issue is also closely
related.  An error in the "servlet-class" value would only
be discovered at runtime.


Point 1 is critical of every Web development environment of
which I have knowledge.  Point 2 is solvable in a framework
like Struts, even though it's not supported directly.  Point 3
is the only point specifically directed against JSP.  Point 4
is critical of the entire Servlet spec.

I don't see anything critical of MVC.

Is anyone familiar enough with ASP.NET to know if Web Controls
solve Point 2?  What about the SAP Web Control framework that
will be presented at JavaOne next week?

--
Curt Hagenlocher
[EMAIL PROTECTED]

Reply via email to