Your Five Favourites Features For 4.0 关注
What would change your java programmer's life, and how can IDEA make it
With 1110 features requests currently open/submitted in the tracker, the
voting system won't do any good at hinting IDEA people about what we
What does your wish list look like. No, what are the 5 first items on
your wish list?
Don't think too much, don't search : what do you miss today?
(Keep the lists short : no need the replicate the features tracker!)
The 5 features I find must be present in the next release.
- adds another dimension to programming.
- With the generic compiler available from Sun, I don't want to wait
for JDK 1.5.
Code Smell detection :
When do you refactor : when the code SMELLS.
- smart duplicate finding, is n?1
Simple code profiling
- no need for full OptimizeIt feature list, but anything more
convenient than -Xprof would be a big step for humankind.
Make code more visual/ mental image building
- Understanding what code does is all about building a mental image
of its action, flow, behavious, links.
Today, we have
- hierarchy view
- scope line (in the left margin)
- O & I icons
- simple UML plugin
This is the hard one, difficult to articulate, but it's really important.
I don't want a flashing Christmas tree, nor a Johnny Mnemonic interface.
I just want mental images to build faster/more easily/more often/better.
A little nicety I'd like to see :
Seamless CVS + SSH integration
(=> sf.net without external ssh)
I would like to see a fully integrated issue tracker like ITN shareable across a team. I think this has been asked for before and is waiting for more votes in the tracker.
What I don't want to see is a UML editor, GUI editor and so on. I have no problem with those things being available as optional plugins (even pay-for plugins).
When I upgrade to 4.0, I want to pay for improved performance, more fixed bugs, and not for features I won't ever use. I want 4.0 to be as slick as 2.6 was.
(Sorry if that sounded like a moan, I love IDEA but don't want it to start creaking)
Couldn't make 5 suggestions... sorry.
My top 5:
More inspections and intentions - for an average programmer, half his time is spent examining or cleaning up other people's code. Most IDE's ignore this, and concentrate on improving the process of writing new code. Refactorings, inspections and intentions are the killer app in IDEA, since they impact the ignored half of my day. There's enough refactorings, but more inspections and intentions would be very valuable. If IDEA would complain when some bonehead co-worker used a public instance variable, then I wouldn't have to. If it would then give me an "encapsulate this" button to click, I'd be very happy indeed.
Workspaces- I was dubious when I heard about the workspace plugin, now I can't imagine coding without it. Clean it up, expand it, make the rest of the product aware of it(e.g., workspace scoped searches and inspections), and by god support it.
Project templates- Setting up new projects is a pain, and precisely the sort of thing IDEA could automate. I want to open a project with these directories and those initial contents and these paths set. Being able to have multiple different project types would be even cooler.
Being able to tag packages/directories as "product" or "test", and drive navigation/searches/inspections/etc. off of that difference. If a product method is only used by test code, IDEA should be smart enough to complain. It's not yet, but it's so tantalizingly close.
Speed, footprint, and stability - not features, but what I most want nonetheless. 98% of the time, IDEA is fast enough, small enough, and stable enough. That remaining 2% though is a problem. After the enormous feature improvements of 3.0, a release where performance and quality are prime concerns is in order. (Unfortunately, it looks like we'll get a GUI builder instead.)
"Alain Ravet" <firstname.lastname@example.org> wrote in message
1110 feature request !!! wow
Here are my additional 5 feature requests (which makes it 1115 feature
requests in total.. ha ha)
3)IntelliJ shouldn't consume more memory in 4.0 then it presently is.
(because I have no more vacant ram slots on my computer. )
4)Intelligent Help system (something that is found in visual studio.net)
5)I do understand that 4.0 is going to be a huge upgrade from 3.0, but what
I want is, everything to be carefully controlled so that there is no memory
leaks. Stability is my highest priority in 4.0.
Actually u know what?? I am very satisfied with 3.0. What I want is, all
bugs being hammered out before Aurora starts, cause when Aurora starts,
things are really going to go wild with crazy features.. ;-).
Developing in pleasure... yeaaaaaaha
1) Excellent AspectJ integration (actually I would prefer that already for for v3.1 :))
2) Excellent Antlr integration.
3) Excellent J(p)ython integration.
4) Even more power in the plugin API.
5..7) ... Need to think some more on this ...
8) Primitve profiling support.
9) Simple Swing GUI Builder.
Can somebody give me a short explanation, what is the benefit of
AspectJ (beside "another dimension"). Thanks in advance.
My favourites are (unsorted):
- Generics support (before JDK 1.5 will released)
- Package dependency view (maybe UML; just view -- no painter!) like
in JBuilder (to easier understand coherences in unknown code)
- all the small edges made round, that exist now for a longer period
Low profile bug fixes and feature completeness
1) I'd like to be able to view more than one source file at a time!
2) Extra options for the code layout tool, to support a style like this:
public class A
public void aMethod(int firstParam,
Basically, I want to be able to place extends, implements and throws
declarations on a new line, indented by one level from the main part of the
declaration; but I still want continuation indents to be two levels deep.
I'd also like to be able to specify a maximum line width and have the code
layout do some sensible word-wrapping if that is exceeded - in JavaDoc as
well as in code. Finally, I like to separate my class members into groups,
where each group starts with a comment like
or something similar. It'd be great if IDEA had some way of supporting that.
Even better if that could show up in the class structure tree.
3) Integrate the PluginManager plugin, or an equivalent, into the IDE. It
would be even better if this could install/upgrade plugins for you, without
having to restart IDEA. I saw mention, elsewhere on this newsgroup, of a
potential web service exposing an official IDEA plugin repository; that
sounds absolutely wonderful.
Actually, as long as the plugin API is sufficient, I think pretty much
everything else I want could be done that way and left out of the core IDE.
Some things that would be cool to have, regardless:
4) Support for internationalisation. The ability to do a 'Find Usages' or
'Rename' on resource keys would be pretty awesome, as would CtrlAltB style
functionality for jumping to a particular resource bundle containing the
resource key that the cursor is over.
5) An extension to code inspection that is able to suggest refactorings and
other changes to the code which would improve the overall code quality and
which could then go off and do them (under the control of the user, of
course). Something like automated pair programming, I guess.
That's it. Should keep you IntelliJ folks busy 'til lunchtime... :)
1. GUI builder
I think that the Java world needs a good GUI builder.
JBuilder tried to build one, but it sucks...
Together tried, but it sucks...
Forte tried, but it sucks...
Netbeans tried, but it sucks...
I think that JetBrains can do it.
But it must be as a plugin, or it must be possible to disable it in the IDE.
(I like Borland's Delphi GUI builder, maybe JetBrains could look a that)
(no gui builders PLEASE, even if it's a plugin, they still have to spin their wheels writing it, write it yourself if you want it so bad)
OS X SUPPORT!
XSLT Debugging Engine (A la XMLSpy)
HTML Code Completion
JSP/HTML Code Layout Styles and Cleanup
Integration with MagicDraw and/or Poseidon UML
- keyboard recording, and
- MS-Excel F4 like : repeat last action
1. JavaServer Faces support.
2. AspectJ support.
3. Support JSR-88
4. J2EE 1.4 support (yes JSR-88 is in here)
5. Simple profiling tool.
Thanks for the best tool on the market.
- Support other languages (C#)
- More features exposed in Open API
- Better HTML and JSP support
- Improved speed and stability
"Alain Ravet" <email@example.com> wrote in message
+1 to marks suggestion. let that stuff be addons. maybe even a plugin purchase to get gui builder ect.
1-Project definition based on Ant build file
4-External tools association with file extension
5-C,CPP syntax coloring support
"Alain Ravet" <firstname.lastname@example.org> wrote in message
1.) Visualization of Package Dependencies
To easily ensure that package A depends on package B but package B doesn't depend on package A.
2.) More Predefined Functions in Live Templates
E.g. a function to get the type of a variable, like componentTypeOf() for arrays.
3.) Profiling Tool
To easily locate time-critical code segments.
4.) More Code Templates
E.g. to control how getter/setter methods are implemented.
5.) Full Keyboard Control
To be able to access all features only by using the keyboard (e.g. the project properties dialog is impossible to use without the mouse).
1 - GUI Builder
2 - Within the GUI Builder TableLayout support
1. a performance analysis tool
2. faster idea (more speed)
NO GUI-Builder!!! only as plug-in
On Thu, 28 Nov 2002 18:57:51 -0000, "Vilya Harvey"
+1 (have a look at Jalopy to get an impression what options are
missing in IDEA)
+1000! IDEA should support structured class layout! I could imagine,
that this feature is available on Ctrl-Alt-F and when methods are
moved into or created in a class.
They are the same.
My top issues:
More configurable code styles; not only for Java, but also for HTML, JSP, XML, XSLT, ...
"Go to Declaration"/"Find usages" functionality for XSLT
More flexibly dockable tools windows (like in M$ Visual Studio or JDeveloper)
Painless keyboard operation (including Windows Context Menu button awareness)
... Stay away from GUI builders!
My 5 (ok, it ran to 6 :)
Closely integrated code profiling (why should I have to leave IDEA to tune my code?)
Ability to launch IDEA on a single .java file by double-clicking and opening that file directly in IDEA
Ability to hide unopened tabs in the Project view - with deep hierarchy most of the screen real estate goes on un-opened folders which I find annoying
Exposure of Ant command line options for configuration when running Ant targets plus some simple policies like "Always add new targets to the filtered list", "Add project classpath by default to new targets", etc...
Policies for the messages window - e.g. "Text mode by default", "Autoscroll to source by default", etc... - when I click on new targets for the first time
Create new class/interface/file/package from focussed editor window with single key-press and no mouse movement (this annoys me more than anything else in IDEA)
Things to avoid wasting time on:
UML & other graphical addons between done as plug-ins
Pointless flashy GUI improvements (i.e. more like the transparent floating windows stuff)
Do you really think that IntelliJ is slow ? I do not have that impression at all.
There is pretty much controverse about the GUI-Builder apparently.
In my opinion a GUI Builder can serve very well for rapid GUI prototyping. Also at least in our team, due to our resources, the GUI is done by people, which do not have a lot of coding experience, but which are very good at visual designing. Before we designed our GUI with Visio only to discover (of course) that a Swing GUI looked much different and that we had to reposition the most of the controls.
With the LiveTemplate feature and the ease of use of IntelliJ, we could even manage that the person responsible for GUI design develops the initial GUI design with IntelliJ (using TableLayout), but the possibility of doing so visually would certainly help.
Of course, I hope that the IntelliJ team would come up with some different and more intelligent approaches to visual GUI-Building as the competitors.
I noticed very often that coders are very often bad GUI designers, because they do not care about the visual impact. Visual design therefore is a must, which a full featured Java IDE suitable for Swing client development should have. Period.
Whether the GUI builder could be disabled or not is secondary for me.
My top favorite features:
1) Internalization support (extract strings to resources, resource
bundle editor, navigation between resource string and definition)
2) GUI editor ( but something more like NextStep Interface builder),
which would be able to store gui description in xml and some helper
classes to load gui description from files and build it on the fly).
Possibly as plugin.
3) Hot-swap debugging with reloading classes
4) Simple profiler
5) Generics support
No, not IntelliJ, but IDEA sometimes.
The existing GUI-builders are only usable for prototyping. I don't
know of any, that could be used successfully for any production
The opposite is valid, too: often GUI design is made by people who do
have neighter GUI experience nor a good nose for a good GUI. That's
the cause, why JAVA/Swing is called to produce ugly GUIs.
I agree, we do not need yet another GUI-builder as the competitors
have. Personally I code GUI by hand. But if IDEA 4 would have a very
IntelliJent one, maybe I would use it myself sometimes.
See issue 7515.
A visit to http://aspectj.org/doc/dist/faq.html , the home page of what seems to be the leading Java implementation of aspects, yields the following:
1. What is AspectJ?
AspectJ(tm) is a simple and practical extension to the Java(tm) programming language that adds to Java aspect-oriented programming (AOP) capabilities. AOP allows developers to reap the benefits of modularity for concerns that cut across the natural units of modularity.
About the Project
AspectJ is a seamless integration of aspect-oriented programming (AOP) with Java. By adding just a few simple constructs, AspectJ makes it possible to cleanly modularize crosscutting concerns.
Also, I think someone posted a feature request in the tracker for CTRL-K CTRL-J (or CTRL-L I can't remember which) NetBeans functionality. This is a kind of rudimentary code-completion feature that simply scans forward/back from the cursor for matching text.
This is probably the only feature I miss from NetBeans.
Please add votes...
Just a decent GUI editor would suit me. Last week I turned out several hundred lines of moderately complex code. This week I've spent pretty much the whole time fighting against Java trying to persuade it to lay out components in a window in the way I want. (Something I do in VB in minutes.)
Apart from that, what I like about Idea is that many of its features exceed my current capability to use them fully (i.e. I don't find Idea restricts me).