3 ms·
What kind of IDE support do you typically use that isn't handled by a modern text editor (such as go to definition, variable renaming, find and replace, etc)? I
by unfamiliar 10y ago
What kind of IDE support do you typically use that isn't handled by a modern text editor (such as go to definition, variable renaming, find and replace, etc)? I'm starting to use CLion for my C++ work now, because "go to definition" is much more reliable than most editors can manage with C++ code, but I find that most of the fancy refactoring features like extracting functions or subclasses are not used often enough to be really useful.
- gravypod 10y agoThe features I need are: - Refactoring Support (rename variable, class, function) - Code Folding - Automatic type checking - Automatic error detection (tells me when syntactical or other errors are made) - Built-in documentation loading/display on hover of cursor. - Same thing as above except with any documentation I add myself on a function. - Debugger with comment overlay of values (like PyCharm) - Dependency management/Building/Deploying all a *button* (not 10 commands) away - VCS integration - Automatic code formatting - Automatic code "cleaner" (change for (int i = 0; i < arr.length; i++) to an expanded loop for example) - Automatic import cleaning - Automatic project creation for basic use cases (console, GUI, maybe a web framework) - Change CWD/environment variable for running the program - GOTO definition - A Graphical User Interface (Graphical being the biggest requirement) Outside of all of those, there is a much much much more important feature: Auto Complete. A smart auto complete. An autocomplete that understands the type system and the function's return types. For instance if I am typing: String sub = someString. It shouldn't recommend "length()" as well as in the case of: String lengthStr = Integer.toString(someString. It should recommend things that return an integer. This needs to be fast and needs to be non-case-sensitive. Also, if I am typing Lis It should recommend List, ArrayList, etc in that order with the closest thing up front. It should also in the recommendation screen show documentation, a link to official documentation, and possibly an example of how to initialize/use the code. If something isn't imported and so it's not currently usable, if the user clicks enter or whatever on the auto-complete screen you should import it. If it has that, and has that working quickly, and has that working completely it's a "real" IDE in my book. That list is just "wants", this one thing is a "need" If I had that for rust, I'd switch over to rust as my main language. Anything that doesn't have something like that will never compete with Eclipse in ease-of-adoption in my book.