I think there are some things that VAJ does that the JDEE could
do but doesn't right now.

HERE IS A THREAD.

From: [EMAIL PROTECTED] (Glenn G. D'mello)
Newsgroups: comp.lang.java.softwaretools
Date: 8 Aug 2001 10:57:25 -0500
User-Agent: Xnews/4.05.11

"George Duh-bya" <[EMAIL PROTECTED]> wrote in
news:[EMAIL PROTECTED]: 

> [EMAIL PROTECTED] (Glenn G. D'mello) wrote in 
> news:[EMAIL PROTECTED]:
> 
>> "Ingo Tolke" <[EMAIL PROTECTED]> wrote in
>> news:9khu3i$lec$01$[EMAIL PROTECTED]: 
>> 
>>> I want to learn Java, and I am looking for the best (and free!!!)
>>> IDE to do it.
>> 
>> IBM VisualAge for Java: http://www.software.ibm.com/ad/vajava
>> 
> 
> You are joking, right? VisualAge is the worst (by far) IDE for

No I'm not.

> beginners! You don't learn Java be using it, and can only use it if
> you already know Java. 

Here's why I consider it the best IDE for beginners:

0. It gets the beginner thinking in terms of 'Objects' rather 
   than 'files'.

1. No how do I create a package and how do I 
   create classes in a package issues:
   Creating packages and classes/interfaces in a package is 
   very intuitive. 

2. No problems with 'classpath' issues:
   VisualAge allows you to group related packages in a 'project' and
   you only need to tweak the 'classpath' settings if your classes need
   to reference more than one 'user-created' project.

3. Hierarchical view of Package<->Classes. Right click on a class 
   and select 'Open to Hierarchy' to view the inheritance 
   (and implementation) hierarchy.

4. User defined visibility of methods: you can view all methods of 
   the class you're working on, view all inherited methods, view 
   inherited methods upto a named class....

5. None of those 'Only one public class per java file issues'.


VisualAge just gets out of the way and leaves you free to learn Java the 
language. And once you start using VAJ, a whole host of other benefits 
which file based IDEs can only dream about:

5. Method level source control
    VAJ tracks changes at the method level instead of at the 'file' 
level. This means that I can merge/diff code at the method level. This 
also allows multiple developers to work on the same java class (on 
different methods) without stepping on each others code. 

6. Stack rollback in debugger
    VAJ gives me the ability to pause a running thread and roll back 
the stack to any point in the stack. 

7. Incremental compilation
    VAJ gives me the ability to pause a thread, change code and restart 
the paused thread with the modified code without needing to recompile/ 
restart the application. Before VAJ, no other IDE let you do that (ok, 
Smalltalk developers can stop sniggering now). 
    Incremental Compilation makes it possible to have a bug in a method 
in a class (such that that class will not compile under javac) and 
still have VAJ run that code because VAJ compiles the syntactically 
correct methods and flags all incorrect methods. Partially correct code 
compiles partially and runs, as long as the thread of control doesn't 
touch a missing (or incorrect) bit of code. 

8. VCE (Visual Composition Editor)
    There isn't any better one for Java. VAJ's VCE is the only one I 
know of which can be used to build a non-visual application using Java 
Beans. It makes it possible to create an application without writing a 
single line of code.

9. Scrapbook
    VAJ's scrapbook acts like a java interpreter. You can type in a 
snippet (or a couple of pages) of java code and execute it without 
going to the trouble of creating a java file, compiling it and 
executing it.

10. Code Cross-referencing :
    VAJ lets me highlight an interface and shows me all classes that 
implement that interface. You can search/slice and dice your code in 
any way you can think of.

11. 'Problems page'
    VAJ has a 'problems page' that lists all compilation errors in the 
workspace. This feature is a lifesaver as you can see at a glance if 
your changes have impacted any other developer and what code needs to 
be changed.

12. 'Evaluation page'
    VAJ's debugger has an 'Evaluation page' where you can type in any 
bit of code that calls methods in any other class and have it operate 
on the variables (in the paused thread) currently visible in the 
debugger.


Given all the benefits, I fail to see how file-based, 'non-java' aware 
(no, syntax highlighting does not make an IDE 'java aware') IDEs can be 
recommended.

HTH,

Glenn.


-- 
Apologies. Due to the insane amounts of spam I get on every post to
usenet, mail sent to the posting address is delivered to /dev/null.
Post to the group or use my name at my sending domain for emailing.

-- 
Galen Boyer
It seems to me, I remember every single thing I know.

Reply via email to