[studs-devel] rebuttal to blog post
Status: Beta
Brought to you by:
mojavelinux
|
From: <dan...@mo...> - 2004-09-14 15:32:36
|
The following post showed up on the internet the other day about how Studs
fails to be noteworthy. While I disagree, one can never pass up the
opportunity to improve on one's work. So let's talk.
"it seems that Studs takes the most annoying aspects of Struts
development, and castrates the quick development process of PHP.
* web.xml required with Servlet registration, etc.
* PHP Server Pages??? custom View language
* tld files, property files
* struts-config.xml
* restarting/reloading is often neccessary??"
1. web.xml is a very important part of this project's philosophy because
it is standard and it is familiar. While I definitely like to think
outside of the box, not all users will want to learn yet another
configuration environment. web.xml gives the flexibility of tools
support, documentation and standarization. Besides, most users won't even
touch it, opting to take the standard configuration. So I don't think it
is an issue to the user. It is more for the framework developer.
2. PHP Server Pages...yes. No one can deny the simplicity of JSTL,
especially in PHP, which lacks object dereferencing. I tried initially to
use PHP as the template language and it was FAR too verbose! I believe
Smarty is plain riduculous, because it is just another flavor of PHP.
Phase is slick.
3. tld files are more or less superficial, mostly just for documentation
purposes. The developer doesn't even have to know about them, except when
creating custom tags. properties files are completely naturally in most
programs anyway, so I am not sure what the complaint is here. You need to
configure the program SOMEHOW!
4. struts-config.xml...YES. Standard, has tools support, very familiar to
a large number of developers, lot's of online tutorials. We are
leveraging existing knowlege here folks. However, I recognize Struts has
its limitations and we are going to be going off on a tangent a bit to
integrate them, perhaps tossing back the ideas to Struts. DTDs are VERY
limiting in this case because changing the DTD breaks the program when it
doesn't have to. I haven't broken the DTD yet, but it won't be long I
bet. We can talk.
5. restarting/reloading will go away. PSP already reloads,
struts-config.xml just needs to in a few releases. I have plans for this,
just haven't gotten to it. I HATE restarting in J2EE, even though I
understand the need for it in that environment.
Studs aims to be simple while leveraging existing formats. This is only
inning one. I wanted to create something that worked and was familiar. I
am open to extensions and improvements. Hell, you can leverage all the
tools save Studs to implement another popular MVC framework if you would
like. That is the benefit of the "+" part. You can use the framework to
do something totally different than Studs. I just needed to port Struts
for my own use, but feel free to jump in!
One point I agree on is that PHP programs are ugly. Many programs are
just glorified perl scripts. Studs seeks to add some maturity to the PHP
community by laying out some standards so that programs can be shared more
easily. Studs definitely does not slow you down.
Dan
|