 |
"Totally splendid variable-renaming facility" in Visual Studio 2005
Posted by kirillcool on October 27, 2005 at 06:59 AM | Comments (12)
You will chuckle, you will grin and sometimes you will want to laugh. Read this talk delivered by Charles Petzold, the author of "Programming Windows" book (and 12 other Windows books). Charles is one of the gurus of Windows GUI programming on C / C++ and lately .Net. After having programmed for about 5 years (three of them exclusive) with Visual Studio 6, i agree with everything he says on wizards and generated code in VS. Of course, the same has been said repeatedly about GUI builders (long gone and emerging) in Java IDEs.
However, the really funny stuff can only be seen by us, Java developers that have come to expect everything (and then some) from our IDEs. Let's see.
Quote: IntelliSense is a technology that is inevitable. If Microsoft hadn’t done it, somebody else would have. Hmmm, are we talking about Ctrl+Space that has been like, forever, in Java IDEs?
Quote: Visual Studio 2005 has a totally splendid variable-renaming facility. You know how sometimes you really want to rename a variable to be more in tune with its actual function in the program but you’re afraid to because of possible side effects of search-and-replace? Well, this new variable-renaming avoids all that, and it will also tell you if you’re renaming something to an existing name. I hope people take advantage of this to rename their controls to something other than the Visual Studio defaults. Hmmm, guess now Microsoft will patent it and make JetBrains guys pay them. Brrrrrr.
Quote: Along with Visual Studio is also the .NET Framework 2.0, with some significant enhancements to Windows Forms, including a very strong commitment to "dynamic layout" (sometimes also known as "automatic layout"). Dynamic layout is also a significant part of the design philosophy of Avalon.... The FlowLayoutPanel and the TableLayoutPanel together with the SplitContainer and the Dock property provide a full array of tools for dynamic layout. Hmmmm, significant indeed, only to be eclipsed by FlowLayout / GridBagLayout present in Java since, like, forever?
Addition - as pointed out in the comments, Microsoft has added this feature in Visual Basic 5 that came out in February 1997. JBuilder 2 that came out in March 1998 was the first (as far as i remember) Java IDE to feature the CodeInsight (as opposed to IntelliSense). The next in line must have been Visual Cafe 3 that came out in October 1998 with Code Helper. Altough obviously both were released after Visual Basic 5, i think that the origins of IntelliSense come from UNIX editors such as vi and xemacs (remember the Alt+/?)
Bookmark blog post: del.icio.us Digg DZone Furl Reddit
Comments
Comments are listed in date ascending order (oldest first) | Post Comment
-
Most of my friends use Visual Studio and I'm getting tired to hear them tell me what cool stuff Microsoft invented. I remember when I had to explain them that code folding is older than us and that VS.NET did not invent it.
Posted by: gfx on October 27, 2005 at 11:46 AM
-
"Hmmm, are we talking about Ctrl+Space that has been like, forever, in Java IDEs?"
Hmmmm, okay - can somebody confirm that a Java IDE had intellisense before the Visual Basic IDE?
Posted by: applebanana8 on October 28, 2005 at 02:27 AM
-
Umm... I totally agree with all your rants, except the bit about IntelliSense. I was using IntelliSense in Visual C++ in 1998, which was a full four years before a worthwhile Java IDE came out. All of us are now spoiled by IDEA and Eclipse, but do you all remember how God-awful Java IDEs used to be?
Posted by: actionboy on October 28, 2005 at 08:38 AM
-
(applebanana8/actionboy) That said, code completion/IntelliSense is way ahead in Java IDEs than in VS.NET. MS might have invented it, but since then they've not done much innovation.
What pains me the most when seeing VS users at work is how much trouble they go to navigating code. They might have a drop-down box listing methods in a class, but other than that it's mostly Ctrl+F, F3.
Posted by: sumitkishore on October 28, 2005 at 08:44 AM
-
Automated refactoring was absolutly unknown to Microsoft until now and still, VS betas are far behind eclipse, idea or any of the java IDE out there. The fact that Mr Petzold is amazed by the variable renaming utility (which he has no name for :) ) probes me right. That's not to mention eclipse quick fixes and alikes. IMHO VS just sucks.
Posted by: edovale on October 28, 2005 at 08:58 AM
-
Most people don't look outside their ecosystem. A friend of mine was at PDC 2003 and talked to a lot of microsoft people that promoted the rather primitive refactoring tools in VS "Whidbey", now 2005. He told them about the stuff available in IDEA. Shrug. They simply didn't know. They were convinced the stuff in VS was the newest and coolest.
But hey, how many people know Smalltalk's refactoring browser?
Posted by: mernst on October 28, 2005 at 10:22 AM
-
In fact, IntelliSense has become the first warning sign that you haven’t properly included a DLL reference or a using directive at the top of your code. You start typing and IntelliSense comes up with nothing. You know immediately something is wrong.
You "immediately" know, after you've pressed ctrl-space (which you were expecting to work, obviously). Then you back up, change one letter, press ctrl-space again, mash the keyboard, try it again, do the chicken dance, hit it again ...
As Visual Studio is generating code, it is also erecting walls between that code and the programmer.
I really like this point, and the rest of his talk, about not letting VS generate all the boilerplate for you. Start with an empty project and do it yourself. As an IntelliJ/Textpad/Commandline person, I don't like it when the IDE hides the directory structure, and VS is particularly horrible about this.
Posted by: jsando on October 28, 2005 at 10:26 AM
-
In all fairness... after trying VisualCrappe and after Kawa was removed from the market.. I settled back to my VisualStudio v5.0 for my Java development. I did this for quite a while until I discovered JEdit. Then Eclipse finally convinced me to switch with its debugger.
Posted by: dog on October 28, 2005 at 03:55 PM
-
(actionboy): I really don't think that 2002 was the first time that a worthwhile Java IDE emerged. We were using JBuilder/JDeveloper around '98 and most Java IDEs migrated to actually BEING Java applications around '99. The first Java IDE that I remember using was Optima++, which could generate C++ and Java source, but was renamed to Power++ and eventually split to PowerJ in 97/98. I have always heard that Netbeans was the first Java IDE, which appears to be confirmed here: http://www.netbeans.org/about/history.html
Posted by: evickroy on October 28, 2005 at 11:16 PM
-
Well, I have had 6 years of Java experience before I was engaged in C# / .NET 1.1 / VS 2003 project for 4 months. My opinion is:
1. C# is on pair with Java, somewhere better (using/IDisposable, delegates/events, properties/indexers, ICloneable done right), somewhere worse (checked exceptions, annonimus and non static inner classes, primitive wrappers, static imports...).
2. CLR is solid, but edged by modern JVMs.
3. VS2003 is out of league of modern Java IDEs (IDEA, Eclipse and JBuilder), but with the addition of JetBrains ReSharper it manages to come close but not catch. I can't judge improvements in VS2005 as didn't have a chance to take a look at it.
4. At the end, nothing compares with Java APIs, libraries, frameworks and community!
Posted by: mcekovic on October 29, 2005 at 02:30 PM
-
I seem to remember it being in other products before it made it into VB - I think Access was the first MS product with this feature.
Kirill I think you should have a closer look at the article since you seem to be on the ball with the new window bar thingy. It sounded to me like the aim of at least one of those dynamic layouts was to act as a magnifying glass - leaving components in their proper x/y coordinate relationship. Which could be fairly difficult to do in Java? (Maybe paint the component to an offscreen buffer and then use Java 2d to scale / transmogrify it???)
I had to laugh at the slashdotters who were accussing Mr Petzold of windows bashing and FUD. They need to be slapped with a history book (or better yet 'Programming Windows 3.1' becuase it is bigger than most history books :D ).
Posted by: rickcarson on October 30, 2005 at 05:39 PM
-
With talk about Visual Studio 2005 shipping too early, it's a good thing our favorite open source Java tools are developed very carefully.
Posted by: mparaz on November 12, 2005 at 01:18 AM
|