What do you want in the next version of VS/C#
-
Wow. Aspects was at the bottom of the list. :sigh: Marc Microsoft MVP, Visual C# MyXaml MyXaml Blog RealDevs.Net
-
I too use this function all of the time. My company's products weigh in at about 30Mb compiled [simulations of aircraft hardware and systems] and fixing a one line bug that took me 15 minutes to get to is fine, just as long as I don't have to quit, edit, recompile, rerun... if it works after a "patch" then I'm happy. We still test things formally, but in VC6 it rarely lets me down!! Regards, Ray
-
Jeremy Falcon wrote: I dunno. I'm a newbie to C# (reading Tom Archer's book), so there may be something not apparent to me yet that I'll want down the road. Bloody hell! Consider yourself smacked! Why do you respond to something like this when you don't even work in it? :wtf:
An election is nothing more than the advanced auction of stolen goods. - Ambrose Bierce
Simple, I work in other enviroments. Just because I'm newbie to C# does not mean I'm a newbie to programming. And, programming is programming is programming. So, consider yourself smacked back. ;P Jeremy Falcon
-
Um...you do realize were talking about c# here right? And were talking about the number one most requested feature addition right? ;P
An election is nothing more than the advanced auction of stolen goods. - Ambrose Bierce
Why does the language even matter? We're talking about the effectiveness of a debugger here. Jeremy Falcon
-
Number 1 was support for edit and continue? Are those people high on drugs or something? Who the hell ever used that when it was available previously? Any of 100 other things woud be more important to me, how about the ability to collapse a defined region in the editor from the bottom of that region as well as the current top of the region? Just for starters. What a wierd survey, I suspect that people got together and jammed the ballot box so to speak because I can't imagine that being a top priority for the averge c# programmer.
An election is nothing more than the advanced auction of stolen goods. - Ambrose Bierce
John Cardinal wrote: the ability to collapse a defined region in the editor from the bottom of that region as well as the current top of the region CTRL-M CTRL-M (yeah, twice...) [MODIFIED: Yeah, ok... I see Daniel Turini allready pointed that one out...]
Have a look at my latest article about Object Prevalence with Bamboo Prevalence.
-
Marc Clifton wrote: Wow. Aspects was at the bottom of the list. Besides logging and asserting, what useful can you do with AOP? BTW, you can do most of these things dynamically by implementing a Decorator pattern. Yes, even I am blogging now!
Daniel Turini wrote: Besides logging and asserting, what useful can you do with AOP? BTW, you can do most of these things dynamically by implementing a Decorator pattern. It's an interesting concept, and I wish I could play with it some more in C#, rather than AspectJ. There is an aspect implementation in C# that uses proxy remoting, which I've dabbled in. I'm not sold on the idea, but I think it has uses beyond logging and asserting. Marc Microsoft MVP, Visual C# MyXaml MyXaml Blog RealDevs.Net
-
Why does the language even matter? We're talking about the effectiveness of a debugger here. Jeremy Falcon
Exactly. I've gone from daily writing hundreds to thousands of lines of code in c++ to about a year now of doing the same thing in C#. The amount of debugging I do has dropped down to easly less than 1% of what it used to be. And no it's not because I sucked as a c++ programmer! ;P It's just astounding that out of all the thousands of things that every day c# programmers are genuinely asking for that edit and continue would top the list. That's all I'm saying here.
An election is nothing more than the advanced auction of stolen goods. - Ambrose Bierce
-
Simple, I work in other enviroments. Just because I'm newbie to C# does not mean I'm a newbie to programming. And, programming is programming is programming. So, consider yourself smacked back. ;P Jeremy Falcon
-
Jeremy Falcon wrote: So, consider yourself smacked back. Lot's of people here want to smack me today, get in line! :-D
An election is nothing more than the advanced auction of stolen goods. - Ambrose Bierce
Where do I buy the ticket? ;) Jeremy Falcon
-
Hmmm...well I work with business objects and they are broken down into 5 or 6 defined regions where similar code is grouped, I constantly (currently: all day hundreds of times a day) need to open up those regions to make modifications, when I'm at the bottom of a region that is 500+ lines of code long, it would be nice to simply collapse that region from the bottom, but I have to scroll up and find the top of it then collapse it so I can find the other regions I need to work on.
An election is nothing more than the advanced auction of stolen goods. - Ambrose Bierce
Or you could learn the chords for collapsing regions:
Edit.HideSelection Ctrl+M, Ctrl+H
Edit.ToggleOutliningExpansion Ctrl+M, Ctrl+M
Edit.ToggleAllOutlining Ctrl+M, Ctrl+L
Edit.StopOutlining Ctrl+M, Ctrl+P
Edit.StopHidingCurrent Ctrl+M, Ctrl+U
Edit.CollapsetoDefinitions Ctrl+M, Ctrl+OCtrl M M is the thing that you want. It'll collapse any region (or method/property block) that you're currently in. Really quite useful. :)
When I can talk about 64 bit processors and attract girls with my computer not my car, I'll come out of the closet. Until that time...I'm like "What's the ENTER key?" -Hockey on being a geek
-
Or you could learn the chords for collapsing regions:
Edit.HideSelection Ctrl+M, Ctrl+H
Edit.ToggleOutliningExpansion Ctrl+M, Ctrl+M
Edit.ToggleAllOutlining Ctrl+M, Ctrl+L
Edit.StopOutlining Ctrl+M, Ctrl+P
Edit.StopHidingCurrent Ctrl+M, Ctrl+U
Edit.CollapsetoDefinitions Ctrl+M, Ctrl+OCtrl M M is the thing that you want. It'll collapse any region (or method/property block) that you're currently in. Really quite useful. :)
When I can talk about 64 bit processors and attract girls with my computer not my car, I'll come out of the closet. Until that time...I'm like "What's the ENTER key?" -Hockey on being a geek
Keyboard commands? That's so 20th century!;) Seriously though, if I can't use my mouse to do it, chances are it's not going to happen. (I remember the pre-mouse days of computers very well, in fact I wrote a lot of code back then, I'd just as soon have a little square box at the bottom of a region I can click on to collapse it.) Control m-control m still means I have to navigate to the bottom of the region to use it, if they can come up with a keyboard shortcut that will just collapse the current region only I would be very impressed and would definitely consider using it.
An election is nothing more than the advanced auction of stolen goods. - Ambrose Bierce
-
Number 1 was support for edit and continue? Are those people high on drugs or something? Who the hell ever used that when it was available previously? Any of 100 other things woud be more important to me, how about the ability to collapse a defined region in the editor from the bottom of that region as well as the current top of the region? Just for starters. What a wierd survey, I suspect that people got together and jammed the ballot box so to speak because I can't imagine that being a top priority for the averge c# programmer.
An election is nothing more than the advanced auction of stolen goods. - Ambrose Bierce
John: "Are those people high on drugs or something? Who the hell ever used that when it was available previously?" If you read many of the previous posts made by myself or jaybas_ms, you'll see that there is indeed a large number of people who want this feature. Coming from a java background, I've used this myself. And, of course, in language environments like Smalltalk/OCaml you just get this naturally. For many, the ability to have edit and continue is a great boon to a common problem that occurs in the development cycle, namely that it's a cycle and it can take a long time to return back to a certain point. Anything you can do to reduce that time can be a benefit. Also, there are many (as I have learned) people who use E&C as a means to explore the system. How does a certain function respond to certain inputs? I dunno, I'll just fire up and app and try it out on all the inputs I want. It's very handy for prototyping out behavior and then implementing it once all the niggling questions have been answered. -- Cyrus (http://blogs.msdn.com/cyrusn)
-
Number 1 was support for edit and continue? Are those people high on drugs or something? Who the hell ever used that when it was available previously? Any of 100 other things woud be more important to me, how about the ability to collapse a defined region in the editor from the bottom of that region as well as the current top of the region? Just for starters. What a wierd survey, I suspect that people got together and jammed the ballot box so to speak because I can't imagine that being a top priority for the averge c# programmer.
An election is nothing more than the advanced auction of stolen goods. - Ambrose Bierce
John: "What a wierd survey, I suspect that people got together and jammed the ballot box so to speak because I can't imagine that being a top priority for the averge c# programmer. " There was no ballot stuffing. I got individual responses from real people. Almost all of whom justified why these were the features they wanted. If you read the original post on this you will see that I asked for that as part of the submission. That way I wouldn't just get votes from people saying "i want that because it's nifty" -- Cyrus (http://blogs.msdn.com/cyrusn)
-
Hmmm...well I work with business objects and they are broken down into 5 or 6 defined regions where similar code is grouped, I constantly (currently: all day hundreds of times a day) need to open up those regions to make modifications, when I'm at the bottom of a region that is 500+ lines of code long, it would be nice to simply collapse that region from the bottom, but I have to scroll up and find the top of it then collapse it so I can find the other regions I need to work on.
An election is nothing more than the advanced auction of stolen goods. - Ambrose Bierce
John: That's interesting. I wrote an earlier post on how features could be harmful. One of the direct examples I used (along with E&C) was using regions to mask complexity in code and to make it appear simple. A 500+ line region indicates to me a bad code smell. Making regions and collapsing more advanced isn't necessarily the best thing to do in these cases. There is often a trade-off between power and risk in any IDE feature, and we work very hard to try and make it so that people will get the most benefit out of features without abusing them -- Cyrus (http://blogs.msdn.com/cyrusn)
-
At least half of those are either not possible (like the stupid "throws" clause Java devs keeps bringing up that isn't even supported by the CLI) or plain stupid (like "C#=Vb"). I agree with Nish.
Microsoft MVP, Visual C# My Articles
Heath: Why are these not possible? One could have easily said the same about the previous most requested item "generics". It wasn't supported by the CLI, but we got it done anyways. If you read the previous posts on this topic you'll see that items were split into categories. Specifically, items the C# team could do on its own. Items that the C# team would work with others on. And items for other teams to work on. As to C#=VB. You might want to look in the feedback section for the previous posts on this topic. If you feel that it is a bad idea, please voice your opinion as to why, and tell us if you find fault with the reasoning that people are currently giving. The purpose of the blog is to find out what the community feels/wants. If you don't raise these issues there, then we run the risk of taking an idea here that you don't like and running with it. -- Cyrus (http://blogs.msdn.com/cyrusn)
-
It's actually in the comments, but it has come up many, many times and addressed almost as many times. But there are many other examples. Some questions - like support for checking enum values - is already supported (using the
Enum
type). All I'm saying is that many of those requests (not all, but many) are posed by people that clearly don't understand C# and the .NET Framework (whatever aspect of it). Heck, from my experience most programmers don't even understand the whole C#/VB.NET/etc. -> compiler -> IL -> JIT compiler -> native code concept yet. :rolleyes: Some other things on there would be nice, but at what cost? Sure, actually returning anICodePraser
fromCodeDomProvider.CreateParser()
for C# and VB.NET (they currently return null, or at least the C# provider does) would be nice (and would facilitate syntax highlighting using compiler features), but I'd rather have a stable BCL and good, solid language (with only reasonable changes) than a bunch of features that third parties can provide. I think a lot of requests just come down to the fact that people are getting too lazy (just look at the enhancements to IntelliSense for proof).Microsoft MVP, Visual C# My Articles
Heath: I'm going to have to disgree with you on this. The features that people requested were much talked about and were made by people who do understand both C# and the .NET Framework. Note: The items in the list are just summaries because I didn't want to use up too much space. "support for checkin enum values" goes beyond what is currently possible with the Enum class, etc. Could you tell me what enhancements to intellisense are intended for lazy people? On the intellisense team we try to think of things in a code focussed manner. A person is sitting in their code trying to get a specific job done. Everytime we force them to get distracted and work on something else (or navigate elsewhere) that means they can't be as focussed at the job at hand. We feel that reducing these annoyances goes a long way to making people more productive developers. I love to hear more on your opinions, however, so would a lot of other people as well. You are free to add feedback to these posts on my blog -- Cyrus (http://blogs.msdn.com/cyrusn)
-
Did some penguins spam the survey to prevent C# from evolving the way we want it ? :suss: "I believe I referred to her personality as a potential science exhibit." - Elaine, about Ellen, in "The Dog"
Ramanan: No. If C# is not evolving the way you want it. Then get involved with the C# team by providing feedback on our blogs. You can also go to http://msdn.microsoft.com/ProductFeedback to report issues or sugggestions. All of these will be addressed and responded to. The purpose of the blog (as I have stated in posts in it) is to try and get closer to the xP ideals of communication and feedback. The belief is that with both you end up with the product the customer wants. However, if you don't participate in that then we won't know if we're going down the wrong path for you -- Cyrus (http://blogs.msdn.com/cyrusn)
-
Marc Clifton wrote: Wow. Aspects was at the bottom of the list. Besides logging and asserting, what useful can you do with AOP? BTW, you can do most of these things dynamically by implementing a Decorator pattern. Yes, even I am blogging now!
Marc/Daniel: I want to second this. This exact question came up on the blog: "what would you use aspects for". There were no good responses. In the end people wanted more flexibility anyways and the feature "allow attributes on more locations" seemed to subsume it. We'd like to get this functinality in a way that encapsulates Aspects and things like Pre/Postconditions in a natural way without overly affecting the language negatively. -- Cyrus (http://blogs.msdn.com/cyrusn)
-
John: "Are those people high on drugs or something? Who the hell ever used that when it was available previously?" If you read many of the previous posts made by myself or jaybas_ms, you'll see that there is indeed a large number of people who want this feature. Coming from a java background, I've used this myself. And, of course, in language environments like Smalltalk/OCaml you just get this naturally. For many, the ability to have edit and continue is a great boon to a common problem that occurs in the development cycle, namely that it's a cycle and it can take a long time to return back to a certain point. Anything you can do to reduce that time can be a benefit. Also, there are many (as I have learned) people who use E&C as a means to explore the system. How does a certain function respond to certain inputs? I dunno, I'll just fire up and app and try it out on all the inputs I want. It's very handy for prototyping out behavior and then implementing it once all the niggling questions have been answered. -- Cyrus (http://blogs.msdn.com/cyrusn)
I see you have an argument for it, but it just seems wrong to me on so many levels. If code is properly broken out into component pieces as it should be it's not a big deal to recompile and retest a small portion. On the other hand, I guess if you have a huge method that contains thousands of lines of code which really should be broken into 10 other methods then I can see some use for it. It just seems like an answer in search of a problem to me, but maybe I don't code the same way as you guys do.
An election is nothing more than the advanced auction of stolen goods. - Ambrose Bierce
-
Ramanan: No. If C# is not evolving the way you want it. Then get involved with the C# team by providing feedback on our blogs. You can also go to http://msdn.microsoft.com/ProductFeedback to report issues or sugggestions. All of these will be addressed and responded to. The purpose of the blog (as I have stated in posts in it) is to try and get closer to the xP ideals of communication and feedback. The belief is that with both you end up with the product the customer wants. However, if you don't participate in that then we won't know if we're going down the wrong path for you -- Cyrus (http://blogs.msdn.com/cyrusn)
Metasyntactic wrote: You can also go to http://msdn.microsoft.com/ProductFeedback to report issues or sugggestions. All of these will be addressed and responded to. That's funny because a few months ago I asked here if anyone knew where to make suggestions for c# and the IDE and no one else had a clue either, it's good you posted this here because it seemed to be a bit of a mystery to a very large group of regular users.
An election is nothing more than the advanced auction of stolen goods. - Ambrose Bierce