Hacker News new | ask | show | jobs
by vincentkriek 4582 days ago
Exactly. Eclipse also has it, and I couldn't believe Visual Studio doesn't. It's so useful to just right click -> Rename an entity in code.
2 comments

VC++ seems to have been given so little attention over the past years. I mean, even something like the new project wizard (which IIRC was due to be replaced when VS 2008 was around) is still untouched and completely different to the managed wizard. Maybe they've been too busy with C++11 feature implementation to actually improve the experience (and before that I imagine that .Net stole a lot of their resources). Of course now with C++14, they've got more work to do, so I'm not sure when we'll ever see significant improvements. It makes me sad, because being a C# dev, VS is very familiar, and to get a similar experience on the odd occasion I do write native code would be awesome!
For quite some time, the .NET field had the upper hand and VC++ was left with a small team mainly dedicated to bug fixing.

When the going native turnaround came about, they started staffing the compiler team again, but it does take years to recover what the .NET has enjoyed in the meantime.

On the other side, the going native also seems to affect .NET side, with AOT compilation for WP8 and the new JIT/NGEN compilers being developed for the next release.

There was no value in moving to a new wizard for VC, so they didn't. To their credit, they did accept some restyling work for their wizards.

n.b. I worked on Visual Studio for four years and was the PM behind the managed wizard framework introduced in 2005 (which I've noticed is still around today).

Windows C++ development on Visual Studio is composed of a lot of tribal knowledge. I am surprised WTL isn't even an officially supported framework, while they leave their ATL and MFC kits rotting in neglect.
On the Visual Studio 2013 release it was communicated they are still looking to what might be the C++ GUI framework for desktop Windows, but it won't be MFC.

It is too old, based on C++ concepts that don't have place in a modern post C++11 world.

WTL was never an official framework.

I take a look at Visual Studio every couple of years. Looks like the Project Settings dialog is still the same from VC6(?) days, with confusing controls and tiny text fields.
Those three projects don't have the upper management Microsoft enjoys to dictate where developers spend their work hours.

Similar to the functionality all Java IDEs have out of the box, but in Visual Studio you need Visual Assist or ReSharper.

C++ is also maybe an order of magnitude harder to parse.
Of course it is, however my complaint was targeted to all supported Visual Studio languages.

My employer won't pay for the listed plugins, given what is already being paid for MSDN subscriptions.

Which functionalities are you referring to?
Refactoring and code navigation.
Er, you avoided my question.

What kind of refactoring? What do you mean by code navigation?

If you have to ask like that, then you never used such features.

Refactoring:

- Semantic renaming of any identifier consistently across the whole source code

- Transform code blocks into methods, functions

- Move code blocks across modules, classes

- Generate accessors, setters for a given instance, class variable

- Change type of a given variable consistently across all the places it is used

- ...

Code Navigation:

- Show call stack for every use of a certain method/function

- Show all descendents of a given class, interface across the code base

- Show all ascendents of a given class, interface across the code base

- Show which classes, interfaces introduce, redefine a certain method

- Show which binary provides the implementation of a given class, function

- ...

No, I was asking because you said Java IDEs have this feature but VS doesn't. Yet Visual C# out of the box has support for rename, method extraction, reorder parameters, field encapsulation, finding the usage of an identifier across the code base, generating a class graph, etc...

Where exactly is Visaul Studio lacking here compared to your Java IDEs? Or are you comparing apples and oranges -- C++ to Java?

He didn't really avoid your question. I parsed your question the same way.