What do you want in your development tools?

Started by
16 comments, last by ApochPiQ 10 years, 3 months ago

A decent refactoring tool, no more tab as n-spaces as default, a decent formatter.. You know, make readable the code of someone else with just a pair of click...

"Recursion is the first step towards madness." - "Skegg?ld, Skálm?ld, Skildir ro Klofnir!"
Direct3D 12 quick reference: https://github.com/alessiot89/D3D12QuickRef/
Advertisement


In Xcode you can drag a folder into the project and it will add all files recurvisely and create an internal folder tree to match that of the disk.
I would like to see this in Visual Studio. I’m getting tired of having to manually create groups in Visual Studio and then drag the headers into the Headers section and the .cpp files into the Source section manually and separately.
Come on Visual Studio! Just let me drag a folder into the project and you recreate the folder tree and put all the headers over there and the source files over there.

For this there is a "Show all files" button in the solution explorer that will display the tree with actual folder structure. You can also include/exclude files in the project, or add items directly to some folder in this mode. I think the default mode is hardly useful, but this mode is somehow "well hidden".

A debugger that:

  • Works.
  • Doesn't lie to me.
  • Presents variable content in a legible manner.
  • Knows about STL.

Basically the VS debugger.

visualnovelty.com - Novelty - Visual novel maker

Some of the things I love about doing C# in VS 2013:

  • Resharper: Good refactoring tools are the best. It's very liberating to be able to easily extract functions, rename variables and transform code without breaking everything and doing tedious find and replace by hand.
  • Nuget: Beats the pants off trying to integrate third-party libraries by hand.
  • VS Graphics Debugger: It's not perfect, but it's pretty handy to get dumps of per-pixel history, as well as being able to see all of the textures in memory.

Eric Richards

SlimDX tutorials - http://www.richardssoftware.net/

Twitter - @EricRichards22

Better contracts
I hate the way I have to specify interfaces and contracts in most languages. More accurately, I hate the way that interfaces are everything and contracts are second-class citizens. Aspect-oriented programming is almost a step in the right direction, but most implementations are really clunky and verbose. Why can't I just say something simple, like "this function never returns null", and get automatic optimizations and sanity checks from my compiler?

I mostly find myself despairing at programming languages themselves, so this one would definitely be on my list. Except rather than opting out of nulls, why on earth isn't it something to opt-in for?! Like Haskell's Maybe type (I actually feel OO languages should be drawing more inspiration from functional languages than they currently seem to be doing; lambdas are not enough tongue.png).

Similarly constness by default would be nice, with a compiler able to recognise and optimise usage of fully immutable objects.

Also, a class should be able to implement an interface in terms of a member variable using a one-liner; NOT being forced to actually implement a trivial pass-through for each method in that interface. Composition is definitely better than inheritance, but languages don't half make it difficult.

Algebraic types.

Pattern matching with support for structure decomposition and implicit casting to subtype.

Multiple dispatch.

Slap 'em into any mainstream language and that would be great, thanks biggrin.png

You should check out Epoch. Sounds like it would really scratch your itch :-)

Wielder of the Sacred Wands
[Work - ArenaNet] [Epoch Language] [Scribblings]

You should check out Epoch. Sounds like it would really scratch your itch :-)

Have you got a C interop module called Epoch-C resin?

"Most people think, great God will come from the sky, take away everything, and make everybody feel high" - Bob Marley

Ugh. :-P

Wielder of the Sacred Wands
[Work - ArenaNet] [Epoch Language] [Scribblings]

This topic is closed to new replies.

Advertisement