|
Posted by Kenneth Downs on 01/22/07 20:19
Vincent Delporte wrote:
> Hi
>
> I'm only starting to look at how to write business apps as web
> applications, and would like some feedback on frameworks to ease the
> pain.
Vincent, we have a framework that is solidly business-oriented.
>
> But a business application requires more features, such as:
> - build forms for CRUD, including navigation bars
> - allow some freedom to build pages that display data in a non-tabular
> way (eg. I need to write pages that show data as bars and graphs, not
> rows and columns, while still having to maintain the same look as the
> rest of the pages including navigation bars, etc.)
> - in input forms, validate each field, preferably as AJAX to avoid
> the round-trip with the server
> - etc.
>
> Considering this... which PHP framework would you recommend? I've
> started taking at CakePHP and ATK, but I'd rather not waste time on
> tools that clearly aren't meant for building business applications.
>
> Thanks for any tip.
Our Andromeda framework may be what you are after. I will tell you what is
good about it and what is bad, and hopefully that will help you decide
whether to spend any time with it.
First, Andromeda is designed with the complete lifecycle in mind, based on
my experience coding 1-tier, 2-tier, and 3-tier apps. The major tool areas
are:
1) Database building and upgrading, including automations (calculated
values), constraints, and security, down to column and row-level security.
2) CRUD interface automation (all forms are zero-code unless you need
exceptions like a calendar page).
3) Documentation - the data dictionary is used to build online docs
4) Multiple public sites to one database (at very least you often have an
admin site, at least one public site, and possibly others)
5) Source Control
6) Versioning and Publishing
7) Uses Joomla templates for the UI, so you can make use of the entire
library of Joomla templates that are out there (disclaimer: a template must
be modified using a standard procedure to get it "glued" into Andromeda, it
typically takes me 2 hours to do this for a new template).
8) Allows four UI overrides:
a) Modify the free CRUD screen by adding to it
b) Replace a CRUD screen outright
c) Add totally new screens in addition to the CRUD screens
d) Have a site composed entirely of replacement screens (this
is usually done for public sites, the admin pages are usually
100% standard code).
9) Has some nifty AJAX Stuff, but that is all just being born now, so I'm
not sure I can claim much in the way of maturity.
Overall, it is a business tool that is meant to serve a business purpose,
which is to commoditize database software development. It has succeeded
very well for us and we hope others will find it useful also.
So what won't you like? Well of course I think its great because I wrote
it, but I have noticed that people do not take easily to the idea of
putting biz rules into the database definition. This seems to be a matter
more of background than preference. Most coders don't know what databases
can do, and so they are not used to thinking in certain ways. Getting your
arms around our database ideas is definitely the "blue pill" you'd have to
swallow to enter the Andromeda world.
Another down side is that our docs are lacking in the tutorial material,
though rich in the reference stuff, which can cut down the benefits. This
is our current top priority for Andromeda, so you will see much more in
that area, but it will take weeks and months to build up a good library.
If you like to code you won't like Andromeda. Many frameworks provide lots
of rules for how to produce code, but we'd rather eliminate coding tasks
outright, our philosophy is "That which codes least codes best."
The framework is at http://docs.secdat.com. To look at projects we have
used it for, go to http://www.secdat.com and look at our two portfolio
pages (one for in-progress, one for completed projects).
--
Kenneth Downs
Secure Data Software, Inc.
(Ken)nneth@(Sec)ure(Dat)a(.com)
Navigation:
[Reply to this message]
|