Arbitrary thoughts and musings on life, the universe and everything else
My Photos
Ayal Rosenberg on Saturday's P&P session: “The best way to do Java today, is on .NET”.
Well two things come to mind reading that comment. 1. You have never used Java. 2. You are still writing 'Hello World' apps in .Net. I have been using .Net solidly for 2 years now(ASP .Net & Winforms). I love the ease of use and where this product is going and I will continue to support Microsoft. I've reached the point now though where I am prepared to go back to J2EE for my next large project. I'll always favour .Net for smaller projects since the development time is cut in half but .Net is just failing to deliver. As the product matures my feelings will change but it has a long way to go before it catches up to J2EE. Why? As soon as you start building real applications you will run into issues that developers just shouldn't have to face. Visual Studio desperately needs a service pack. Hot fixes already issued (and you have to beg for them) don't always work. The integration with Source Safe is scary. Unexplained stuff happens all the time. Memory leaks. Etc... Check this out as one example: Controls disappear from the Windows Forms Designer in Visual Studio .NET 2003 http://support.microsoft.com/default.aspx?scid=kb;EN-US;842706 - cool but the fix doesn't work. So now you are on a huge Winform project, the client is waiting and uuuummm now what? Re-create the forms if you have the time? Incidentally, from my experience you can see MS has invested heavily in ASP.Net and Winforms is just a tag along product. So it's a great deal better but when you have to turn caching off on a huge site because the wrong things are being pulled out of cache you are once again stuck with your clients moaning at you. I haven't listed many examples, do a search - you will find them. Get some perspective. I'm looking into Delphi at the moment - seems it supports C#. Anyone else out there considering alternative tech?
“The best way to do Java today is on .NET” In what context did Ayal say that? I have corresponded with him previously and also chatted to him in person at the P&P Sessions in Johannesburg last year. Ayal will be the first one to tell you that his core focus is .NET and that he cannot comment on Java, thus I find it very odd that he would make a statement like the above. If Ayal has ever used a proper Java IDE he would not make that comment unless he is not using VS.NET. Is there something better that I don’t know about? (Borland…) I also have to support the above comment. Having done substantial work with J2EE I can tell you that I might consider giving up Java for C# as a language but I’m not parting with Eclipse, JBuilder or IntelliJ IDEA any time soon because of the following issues: 1. Having to delete bin/obj directories because of DLL locking. 2. Usercontrols vanishing of forms. 3. The dreaded “A failure occurred while attempting to start the compilation.” 4. Intellisense issues 5. Corrupt csprojdata files The IDE is just not ready for developing large enterprise projects. (I’m taking about WinForms here, I cannot comment on ASP.NET) Personally, I can be much more productive in a Java environment just because of the IDE and that is all that matters to my customers at the end of the day. Nox, when investigating the Borland IDE don’t install it on the same box as VS.NET. You might just end up re-loading… Schalk – SQL Server MVP
First of all, NO, I don't write "hello world" apps on .NET :P Visual Studio and .NET are two *entirely different* animals. C# and VS is *not* the same thing, VS is just an IDE to aid you in programming the .NET Framework. Other IDE's are available. VS certainly has it's pains, but .NET as a framework provides a super framework to develop on. It is a known fact that the Java world as been lightyears ahead of the MS world, for years, regarding (1) OOP The Java guys have had the luxury of OOP all along, while the (majority) MS guys have been crunching out old-school procedural code. (2) Methodology The Java guys have had brilliant TDD methodolgy all along, and this has spawned many tools like JUnit, Hibernate, Ant, etc. which had to be ported to .NET equivalents since MS didn't provide anything relating methodology for all these years. MS has lately been pushing an awareness amongst its developers regarding OO and development patterns, and I think this is what Ayal meant when he said what he said. Whidbey (with Team System) provides developers with everything and more the Java guys have had all this time, and it is easier to use.
See http://dev.mainsoft.com for Java development with VS.NET mixing both .NET and Java code to produce pure J2EE applications. The Free edition is cool to play with!