VAJ vs JBuilder
2 posts in topic
Flat View  Flat View
TOPIC ACTIONS:
 

Posted By:   Shahram_Khorsand
Posted On:   Sunday, July 15, 2001 06:47 AM

This is not a question. However, it might interest some of you! Here is a review I made for some time ago. I believe that it is important to know about the background and the context in which the evaluation or a test is made. Furthermore it is interesting to know about the reviewer, their background and expertise play an important role. At least this is what is important for me. Hope the review below helps you! Reviewer Background Here is short list: Worked with Visual Age for Java since version 2.0. Worked as instructor for IBM learning services within Visual Age (VAJ) and Websphere Application Server (WAS).    More>>

This is not a question. However, it might interest some of you!



Here is a review I made for some time ago. I believe that it is important
to know about the background and the context in which the evaluation or a test
is made. Furthermore it is interesting to know about the reviewer, their background
and expertise play an important role. At least this is what is important for
me.


Hope the review below helps
you!


Reviewer Background

Here is short list:



  • Worked with Visual Age for Java since version 2.0.

  • Worked as instructor for IBM learning services within Visual Age (VAJ)
    and Websphere Application Server (WAS).

  • I have written couple of custom ordered training and workshop for VAJ and
    WAS.

  • Involved in large (50 developer) and small (single) programming projects
    using VAJ and WAS.

  • Worked with JBuilder since version 3.5.

  • Worked with Borland Application Server (BAS)

  • Worked in large (20 man) and small (single) programming projects using
    VAJ and BAS.


Note that I have used these products with other Application Server also, which
is shown below.


Review Background:

Here is a prioritised list of criteria used for the evaluation:



  1. J2EE programming . I.e. Servlet, JSP and EJB

  2. Coding environment . I.e. The editor and the features like search,
    source orientation, access to methods & classes.

  3. Debugging J2EE applications. I.e. Debugging Servlets, JSP and EJB
    applications.

  4. J2EE integration . I.e. The ability to within the tool deploy and
    test your code Integration with other EJB servers then the one produced by
    the vendor. I.e. how well is it to integrate VAJ to Weblogic server?

  5. Open APIs . I.e. how easy is it to write your own tools that plug
    in and work well.

  6. Version control and integration with other version control systems.




The review:


I have divided the feature and how well they perform.






































Feature

Good



Bad


J2EE

- The servlet support is great. It is easy to write servlets. It is
easy to get started for a newbe.

- EJB development is also good. Since it supports EJB 1.0, the configuration
of parameters for your EJBs are not that easy.



- The EJB version is 1.0. Not that many implementations are still in
version 1.0.

- Historically IBM and VAJ/WAS version are always one step behind.

- Since VAJ has an integrated WAS you don’t have to deploy and redeploy
your code. A lot of development steps are shorted thanks to the built
in WAS. In my opinion this is a huge drawback. Because when you get to
the real sever not much will work for you. This is a real problem. Everything
will work in VAJ and most of you code will not work in WAS. Mostly all
the APIs are kind of global to the repository and this is not the case
in WAS.

- The JSP integration is bad. Here IBM recommends Websphere studio, another
product that comes from IBM. You may be able to sort of debug the JSPs
but it is not an enterprise level debugger.


Coding

- When you get to know the VAJ GUI and how it is supposed to work it
is really good.

- The search utilities are unique. I don’t know of any other product that
lets you search for a “name of a public method ” and not just a search
string in a source file.

-  It is easy to navigate from package, classes & methods.

- The GUI builder works fine. It takes time to get to know it.

 



- May take some time to get to like the GUI.

- Since everything is inside an internal repository you don’t have a source
code to work with. This might feel as very object oriented at first. However,
sometimes you want to see the whole file. In 3.5.X IBM added the source
view. (See the versioning section for review on this).

- The problem with the GUI builder is that if you change the code outside
the GUI builder the connection between the code and the internal data
is broken. Once the internal data doesn’t match you cannot use the GUI
builder anymore. You cannot program an application by clicking alone.
Therefore it is very annoying not to be able to freely change the source
code.






Debugging

- Debugging applications is really good. You set your breakpoints and
step through the source code. Thanks to the incremental compiler you can
change any internal value and you don’t need to restart you debugging.
You just continue from the beginning of that method.

- Debugging Servlets is very good. Since you have an internal Servlet
engine and the incremental compiler you can change values and continue
debugging.

- EJB debugging is also very nice. You set break points and do you thing!

- You can set exception break points.



- The internal Servlet engine spoils you. In couple of projects after
using the VAJ and moving the code to WAS there have been a lot of problems
since the code were never tested on a WAS, only in VAJ.

- You cannot set object breakpoints, which can be a good way of searching
for failing code.


J2EE integration  

- There is no integration with other Application servers. At least not
that easy. The only way is to export your code. Use the deployment tools
that come with the app server. I don’t call this integration.


Open APIs

There is an open tool API.



The open tool API is very strange and complex. You get to change the
internal repository. Since everything depends on a good healthy repository
you don’t want to mess with it.

It took me a lot of time to get to know the API. After spending that time
I draw the conclusion, “it is not worth it!”


Version control

- The repository has its own version control. If you by the enterprise
edition you even get a license of the ENVY server. Even called the team
repository.

- The version control here is nice and works for groups of 10-15 people.



- It takes time to learn the repository and how the versioning works.

- If you are more then 15 developers. DO NOT use the team repository.
I have been in large projects that ended up using emacs, JDK and CVS.


- The repository is a little flaky. In all the projects I have been
involved in the repository dies at least once a week. You’ll have to have
backups.

- The workspace, which is a local repository, also gets corrupted too
often.

- You’ll need a fast and very reliable LAN or WAN between the developers
and the team repository. I have been in projects with a repository getting
corrupt once a day, because of the unreliable network connections.

- Connection to clear case is NOT to recommend. It simply doesn’t work.
DESPITE what IBM says. A deleted file never gets deleted. Versions disappear.
Simply there is a lot of strange behaviour. Maybe next version works better.
The company I worked for spent too much time and money on the connection.



JBuilder 4 and JBuilder 5:







































Feature

Good



Bad


J2EE

JB4 has support for servlet 2.2 and JSP 1.0 and EJB 1.0, 1.1 and early
2.0.

- Deployment is really easy for BAS and Weblogic and a generic EJB 1.1.

- JB5 has support for a lot more. WAR and EAR files. Please refer to
href="http://www.borlan.com/">www.borlan.com
for more info.

- The development environment is really easy to understand and get started.

- Since JB has tomcat built in it is really easy to develop servlets.



- The JSP development is not enterprise level environment. For simple
easy JSPs it is OK.

- Borland recommend products from Macromedia, Macromedia UltraDev.

-


Coding

-The editor is really easy to get started with.

- There are a lot of plug-ins and tools that you can load the get more
functionality in to your editor. See www.borland.com
for more info.

- The search, replace, search in many files and specially search in
classpath
is really great.

- The GUI builder is nice. It takes some time to get used to it. However,
it helps getting started with the placing of the components. It also can
parse and understand VAJ generated GUI.



- I would like to have the context sensitive search from VAJ here. In
large projects with thousands of methods it is really nice to search for
a name of a method. And not get all the comments and references as the
search result.

- If you open large files the editor takes a lot of memory and feels slow.
This can be avoided by switching of the run-time parsing of the code!

-


Debugging

- The debugger works just fine. No special features here.

- You can set method-, object- and exception- break points.



- When changing a value you’ll have to restart your debugging. In VAJ
you didn’t need to restart!


J2EE integration

-The integration is really good. There is support for almost all the
major appserver vendor. Including WAS (WAS is JB5 only).

- The generic EJB works fine for all other that are not supported.

- By using the open tool API you can create your own connections.

- The WAS integration works very well, I have been involved in a project
where we migrated to JB from VAJ and it worked really nice. However, you
have to know your WAS. Many of the problems doesn’t have anything to do
with JB it is WAS issues.



NONE


Open APIs

- The open tool is really easy to understand. There are good and simple
examples to get you started. Actually the JB tools are a collection of
open tools. The start-up process links all the tools together.



NONE


Version control

- The easies and fastest version control for JB4 is CVS.

- There is integration with Visual Source Safe.

- There is a functioning Clear case coupling also.



NONE



The parts not reviewed;

Here is a list of all the parts I didn't include inorder to keep the review
short.



  • JBuilder has a lot of components that come with the tool to make it easy
    for you to connect to databases.

  • There is a fantastic tool for working with databases. In all of the projects
    I have worked with there is at least some database programming. In these cases
    you have to connect to the database and check the data types, column names
    and sometimes insert and update by hand. VAJ doesn't give you such a thing.

  • In JBuilder 5 you get J2ME connection (available in JB4 also as a plug
    in). There is a J2ME version of VAJ, however, you'll have to pay extra for
    that and at the current version it doesn't support all the standards.

    Also there are a lot of new components and utilities in the JB5. See www.boarland.com/features.


Summary:


After using both of the products I prefer JBuilder. The ease of extending
and the amount of extensions already available make JBuilder to a great tool.

VAJ is also a very good tool. However, the complexity in the team and local
repository and the complexity of the EJB development environment make VAJ a
tool with a lot of hassles. And also, I found that if you are going to develop
an EJB client application that is not a servlet or a JSP on WAS, you'll have
to send five or six undocumented JAR files with your client!!

At the end of the day your employer or your company pays you to solve their
problems. They are never interested to pay for the time it takes to fiddle with
the development tool. The tool should help you achieve you goals, not take most
of your time tweaking it to work. Unfortunately this is the case with VAJ.

BTW,

Both of the tools use a lot of memory when working with large projects.

Both of the tools are really expensive. The JB5 costs more then VAJ even.

Borland gained a lot of fame because of the free edition of the JB4. However,
they have started to charge for the personal edition. Which really doesn't give
much functionality compared to JB4 version that is free.


Hope the lines above helped you. If you are interested I might be able to
publish the whole report!


Cheers,


Shahram


   <<Less

Re: VAJ vs JBuilder

Posted By:   Eric_Rizzo  
Posted On:   Tuesday, December 11, 2001 11:05 AM

[FAQ Manager] Although the effort put into this "review" is appreciated, it is very misleading. There are some misleading statements and incorrect conclusions in the above, so I will attempt to address them here.


EJB deployment - the fact that WTE is so nicely integrated with VAJ is a big benefit during development, but it does not releive the developer from the responsibility for knowing how to deploy his application in his chosen production environment. If a developer can't do that, it is no fault of VAJ. Just because VAJ make sit easy to test/debug doesn't mean you shouldn't learn your production deployment server.


Also, I don't know what the author is talking about when he mentions some additional JARS necessary for deploying an EJB client. There is nothing special needed to do so for EJBs developed with VAJ - no more than is required for deploying any EJB application.


JSP integration - Integrating JSP in your application in VAJ is as easy as placing the .jsp files in the appropriate location. It is true that VAJ does not include a JSP editor, although the Scrapbook can be used edit any arbitrary text file. But a good JSP editor is a separate beast from a good Java editor. I suggest you look at some of the tools suh as HomeSite that are designed for editng HTML/JSP files.


GUI builder (VCE) - the VAJ VCE does allow you to make changes to the generated code, but within specific places in teh code. You can not just go changing things however you want - but the places where you can insert your own code are plentiful and well marked. True, you can't usually build an entire application "just by clicking," but VAJ in no way forces you to try to do that.


Debugging - I don't know what is meant by "You cannot set object breakpoints" but there are no types of breakpoints other than in anonymous inner classes that I can think of that VAJ does not allow.


J2EE Integration - It is simply not true that VAJ has no integration with app servers other than WebSphere. There exist toolkits for running both Tomcat and WebLogic in VAJ, and I have also seen JBoss running in VAJ.


Open API - The tools API provided in VAJ is very safe and does not "mess with" the repository. It provides access into the code that is stored in the repository, among other things. It is somewhat limited in that it does not allow you to modify the editors of VAJ, for example.


Version control - If you are a large team, that is exactly what ENVY (the repository server) and VAJ Enterprise were designed for. In fact, the larger the team the more effective and the better the payoff for investing in VAJ Enterprise. VAJ has consistently won awards from magazines, etc. in the "Enterprise" Java dev tool category, with many specifically citing its team source code management as a big factor. There is absolutely no basis for the suggestion that it does not suit large teams well.

Also, the statement "The repository is flaky" is unfounded. It goes against years of experience of those who have used ENVY (not just in VAJ). The repository is rock-solid and is not uscceptible to corruption unless there are network or hardware problems. This topic has been addressed both in this VAJ FAQ and on the newsgroups many times.

Another blatantly incorrect statement is that the workspace is a "local repository." It is not. See How does the repository/workspace combination work? for details on the workspace/repository relationship.


The ClearCase integration works pretty well, based on many people's experience. the accusations of it "simply not working" are certainly misguided, since I use it every day and it certainly does work. In fact, IBM added many requested features in version 3.5 that make the integration with external SCM tools more useful in VAJ.


Unfortunately, it is misinformation like this that can lead to poor decisions regarding choice of tools. VAJ may not be for everyone or every project, but you have to know all the correct facts before you can make a good decision.


Many of the items I addressed are likely a result of misunderstanding and/or misconfiguration. Some are probably the result of not taking the time to read the appropriate documentation or do a little research.

Re: VAJ vs JBuilder

Posted By:   D_Un  
Posted On:   Friday, November 30, 2001 11:53 AM

Please tell me which 5 or 6 Jar files are required for deployment with VAJ applicaiton?

Please tell me also which version of VAJ we are comparing, 3.5 or 4, enterprise or professional?


The project sponsor asks to have application developed with VAJ but does't want to deploy with WAS.


You help will be much appreciated.

About | Sitemap | Contact