[ OT ] Report on other WO like tools.
[ OT ] Report on other WO like tools.
- Subject: [ OT ] Report on other WO like tools.
- From: " Kuon - Nicolas Goy (Goyman.com SA) - 時期精霊 " <email@hidden>
- Date: Sat, 17 Jun 2006 16:28:54 +0200
Hello everybody,
first I did double post this for reference, please use the apple wo
list to continue the discussion.
So, what is the point of this mail? It is intended to be a comparison
of WO like tools.
Perhaps I'm not 100% objective, because I'm a C dev and I came to
object programming via Objective-C,
so I hate things like get/set prefix or Java being strict with type.
But I did my best to provide Objective informations.
If I post on WebObjects mailing lists, it's because, after one year
of trial, I came back to WebObjects.
Tools tested:
- Sun Studio Creator
- Oracle JDeveloper with Toplink and ADF
- NetBean with Hibernate and plain JSF
- Eclipse, cayenne and tapestry
Sun Studio Creator
SC is a very nice tool, build on top of NetBean, a bit slow, but
should improve when they upgrade to NB 5.5.
SC is a 100% graphical tool, it generate CSS and JSP (component
centric). You can drag and drop datasource on page, to provide direct
acces to a database table.
Good Points
- Super fast for read only applications, provide all tools you need
for it in a simple to use package.
- You can build application, even using AJAX, with a few java knowledge.
- Nice application server and database server integration.
Bad Points
- Provided component are hard to customize (theme system is a bit
complicated)
- Creating new component is a pain.
- Lots of bug in the display engine.
- You can't do anything else but JSF. (no swing, simple java...)
- Slow
- JDBC rowset is not a OO oriented database framework, it means you
have to play with PK and such.
Conclusion
I think SC is not appropriated for complicated business logic, where
you do a 100% customized application for your customer. In comparison
with WO, SC is a bit like Direct to Web. The JDBC rowset performances
are not really good for large table. I'd say SC is a good tool for
low users app (or single user), like an administration console. I did
like SC because it's fancy and eye candy, but I think it cannot be a
serious production tool, it rely a bit on too much components.
Oracle JDeveloper
This tool is absolutely huge. In general, I did like it, because it's
very structured, and you can do anything with it, from plain java app
to complicated industrial application based on ADF. This tool was my
favorite in the test, because you could control anything. But the
problem is, adding a GUI and a special function to handle everything
make it huge. After a thought, I was able to do the same in WO with
well designed components library.
Good points
- Fully integrated, able to do any java related dev.
- Superb code assist tool, manage import, code completion and javadoc
in a very nice way.
- Updated very often
- Good community for support
- Toplink is very powerful
Bad points
- Really huge, sometimes buggy, deleting files.
- ADF faces are components with many features, but I think too much,
HUGE stylesheets are generated.
- Databinding require a lot of files (datacontrol xml files), they
are impossible to debug if the ide fail.
Conclusion
JDev is a good tool for java dev, the source management is really
handy. The ide is fast for source editing, but very slow for WYSIWYG
web page editing, javadoc viewing is slow too. If you are a non java
dev, the set/get and very heavy code will kill your brain. In short,
the ide write code 10 time faster than xcode, but you need 10 time
more code. Integration with Oracle App server is also nice, Toplink
support a wide variety of Database.
Netbean with hibernate
To be honnest, I made 1 project with netbean, I did not like it,
perhaps they don't think the same way I do, but things were not where
I was expecting them to be.
Good points
- For a java ide, it's quite fast
- Interface is cute under osx
- Not too heavy
Bad points
- Logic is a bit weird imo.
- I was unable to easily build workflow.
Conclusion
I will speak of hibernate later, but netbean is a nice tool if you
learn a bit. I'd say is better than eclipse and NB is the best
opensource IDE.
Eclipse with Cayenne
I tried eclipse with many hopes but I was deceived. Even if it was
complete, I found it quite buggy and slow.
Good points
- Source editing is powerful
Bad points
- Slow
- Plugin centric architecture can be very buggy.
Conclusion
I think Eclipse has a good future for people liking it's logic. I'm
sure they will improve speed and architecture.
JDBC rowset
This is the way used in SC to access database. I'd say it's just a
small layer above SQL, and it's much more like writing SQL than
playing with objects.
If you are a PHP dev or any language calling SQL directly, it's a
very simple framework built directly above SQL.
TopLink
Toplink is a bit like EO, but much more complicated. By complicated,
I mean you have access to many options. I think TopLink is the most
powerful framework I tested.
TopLink use POJO (java object) to represent data rows.
Hibernate
This framework was a bit strange to me, I made some simple project,
but I did not like it. As many things exist on web about it, I'd say
just read it. But from a WO dev point of view, hibernate is a
different world.
Cayenne
I think the explanation will be short. Cayenne is EO open source.
Nothing more to say.
Final conclusion
This mail is not a full study of all tools and technologies, it's
just a report of my experience. I'd say WebObjects is growing old but
it is simple and well done. Because WO does a very little (no
complicated component to update often (like calendar or color
picked)), it is still a good tool.
The other tools are very attractive, because you have all those shiny
component you can easily bind. But for someone like me, who like to
customize and understand everything, WO is good because it's only a
"low level" (in the java world) tool. If like me, you created
component for button, input text supporting labels and such, you have
a tool as powerful as any other huge IDE.
I'd say WO is signed Apple, so it is different. Managing huge XML
files to gain a bit of flexibility of a bit less code to write is not
apple way of thinking. I think WO is smart and light.
WO missing features
- XCode is crappy to manage java source. Structure (file management,
like package) and code assist feature is missing.
- Component library (like composed image button (you give a couple of
image and buttons are built on fly) or calendar or color picker)
- Support from apple and update. JDdev frameworks are updated on a
weekly basic.
I finally came back to WO, and I did rewamp my component library.
I hope this mail will be useful, should it be a start to a discussion.
Regards
--
Kuon
CEO - Goyman.com SA
http://www.goyman.com/
"Computers should not stop working when the users' brain do."
Attachment:
smime.p7s
Description: S/MIME cryptographic signature
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden