Microsoft’s bet-the-company initiative turns 4 this year. Are developers happier? Has the Windows experience improved? InfoWorld reviews .Net’s tools and technologies for a top-to-bottom evaluation.
Microsoft’s bet-the-company initiative turns 4 this year. Are developers happier? Has the Windows experience improved? InfoWorld reviews .Net’s tools and technologies for a top-to-bottom evaluation.
Passport…Hailstorm… .Net…the grand vision of the Microsoft Internet is nowhere to be found in 2004. Windows.Net is now just Windows Server. Where are all the apps.Net? Office.Net? SQLServer.Net?
Oddly enough in many ways the .Net platform (CLR, C# etc) seems technically viable even if the branding has disappeared from the key products.
I can only assume that there was a heated discussion one night in an MS conference room and the .Net evangelist lost for one reason or another.
<rant>I really wish people would stop using that term with Microsoft. With what $50 billion in the bank, bet the comapny, really isn’t an option. No Microsoft can screw up a lot, then come out with a life saver that actaully works.</rant>
As for .Net, well it is either invisible to the average user(can be a good thing) or not widely deployed. I come across java apps on a daily basis, But not .Net. Only time will tell which will be better.Java had a longer run time, but longer to be mature, .Net is mature faster, but runs on a smaller number of systems. No, .Net can only run on windows, hence it is limiting.
Working for a MS based web-hosting company, I’ve seen the transformation to asp.net in the last couple years. The asp.net platform runs incredibly well (especially on Windows 2003 servers).
I think the .Net framework for writing clientside apps still hasn’t caught on though. This is a guess, but I think Longhorn is going to be the start of .Net convergence amongst MS applications.
Windows Server 2003 ships with the .NET Framework integrated.
SQL Yukon (currently in beta) hosts the .NET runtime.
Office Outlook Business Contact Manager is a .NET app.
The bulk of the apps built on .NET will be launched with or shortly after Longhorn, as most will include Longhorn-specific functionality. The replacement for Win32/64, WinFX, is managed code.
.NET has only been scaled back as far as placing it as a suffix to MS’ products no matter how little they depend on the .NET Framework and runtime. As far as product integration with and/or construction using managed code, the majority of products MS produces are moving towards .NET.
Hailstorm and improvements to Passport will also debut with Longhorn, but in a more advanced and federated (TrustBridge) form.
It doesn’t seem like we’ve seen much of .NET yet, but when Longhorn comes out, it’s on! And the Win32 API can kiss my ass
The 26MB was the framework/runtime. These will be standard on every Longhorn desktop (the OS depends on it). Windows Server 2003 includes it, and Windows XP SP2 may include it (it already ships with most OEM machines).
Unless you pay by the minute, 26MB isn’t that hard to download on dialup (you can do it when not actively using the net). Auto Update can even download it a bit at a time in the background whenever you’re on the net. Besides this, I believe it’s also available on the free Windows Update CDs MS distributes.
I’ve programed four years now on Delphi and C++ Builder, I never touched VB nor VC++, I never liked MFC but I enjoyed VCL and Interbase, I started a litle proyect on Visual C# and I dont feel it as powerful as VCL, I know it is, but many simple things I did with Delhi/C++ builder need more steps on VC#, I know many VC++ programmers are enjoying C# cause it is a step forward, but someone like me who has a lot of experience with VCL don’t feel the same.
Unlike Java, .NET hasn’t had the chance to spread out. Also another poster pointed out; .NET isn’t just for Windows. Microsoft themselves released a runtime for Mac OS X and FreeBSD. Not to mention the Mono project, which runs .NET on pretty much everything else
Give it some time and it’ll come…..
It’s total lack of a linker and a vb style runtime dragging behind you, maybe a better VB with a different syntax but I just don’t see any real innovation there, especially in the cross platform arena. Their support for other os’s has been know to expire, don’t take that as some sort of commitment.
The security aspect still worries me too. I’m a little concerned with how much of the longhorn generation of apps could still be Win32 based.
MS have said they are porting the entire suite to .Net, but will all of it be managed code or just the upper layers?
I think MS is right that managed code and XML based guis are the way of the future. I guess Mozilla is really the one that is ahead of the game in this respect. XUL apps are maturing quite quickly, and they are mostly cross-platform as well. I doubt they have the muscle to survive the .Net juggernaut tho.
As for “Does it measure up”? Well, it better because almost all windows development will be done in a managed environment.
The reason you don’t have shrink-wrapped software yet is (a) it takes a long time to develop these apps(duh) (b) .NET uses interop better than java can ever dream of so you’ll see parts of apps written in managed code at the same time hooking into COM or native libraries(see Visual Studio).
The whole title is pretty ridiculous though because anybody can see that .NET is better than the win32api/MFC mess. At least .NET isn’t having the years of growing pains that Java did with regards to apps being slow. Bloat is another matter, but at least there is VM sharing. I’ll argue that coming from a C++ background C# is a better language than Java.
To best take advantage of Longhorn’s APIs (WinFX), apps will need to be managed. Win32 will mainly be there for legacy support, and WinFX isn’t built on top of it.
Longhorn will also include new default policy which limits the capability of unmanaged apps, and can break them in some cases. Apps will need to have manifests that detail the execution permissions needed or be approved by the user as trusted, and there’ll be changes to the Admin account to limit what most apps can do under the account without explicit approval from the user.
It will take a while for .NET to catch on. i remember the old days of Mac OS X public beta and Rhapsody, code writers didnt want to take the trouble of porting apps over to Objective C more or less relying on Carbon to get the job done, now we are seing a convergence of Mac upgraded applications utilize cocoa and I think the same will happen to Microsoft. Im sure you will have old VB 6 code running around and others will rely on MFC and not bother with C# and Managed code just yet. I find C# and Managed code to work extremely well and its slowly picking up speed. One thing I love about C# is that there are initiatives to port VB apps to it and Mono is coming along nicely which will result in cross platform interoperability. I think VB will be a thing of the past but as we saw with the Mac its going to be a later than sooner situation.
.net is to hungry for resources! I still haven’t gotten over the fact that a spreadsheet program once fit on a 720KB disk. The only useful add on in my opinion since then is the spell check. While VBA is nice most spreadsheets had their own language. What I’m saying is I’m sick of the application bloat that seem to consistently happening, and from a user perspective I’m getting very little new from this, except the ever going software install sizes.
“I am looking forward to the day Microsoft actually produces a good IDE for developing software.
Visual Studio .net is a terrible IDE to work with, it is slow, strange to use and the debugger sucks major.
They should start looking at a IDE like IntelliJ IDEA for Java which is a world class IDE for developing software. ”
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Whats better, Emacs and gcc and gdb? Codewarrior? Eclipse? Xcode?
Get real.
I program in C# and ASP, amongst other things, at work. As far as the end user goes, I think .NET, like many other Microsoft technologies, is quite lackluster. However, for developers, .NET is fairly nice.
As the article said “There’s nothing new here”, all of the technologies have been done before, .NET just happens to be a better implementation of them for the developer.
The original sofware rental model has disappeared. The Hailstorm personal data intergration system has dissappeared. Passport has not gained critical mass, perhaps thanks to online stores not wanting to have there revenue cut off should someone DDOS Passport (the Passport DNS was cut off in the early years so it is possible, even against the resources of MS, which stopped anyone from loggin into any site using Passport) through no fault of their own, plus of course the privacy worries of users. The branding has also disappeared, remember how everything used to be named .NET? Personally I think this is a good thing, but it is still a large hole in the original structure.
They have finally got rid of DLL Hell, and the registry, getting them up to the standard as deployment of Java, or Mac OS X, or Linux with a haft decent package manager by copying most of Java .Jar’s system and adding a bit more metadata.
The only things that remain from the original ideas are the development enviroment, the CLR, and C#. They just took most of Java and swopped GUI speed for cross platform surport, and designed multi-language surport in from the start (so long as the languages in question conform to the CLS and so are in large part syntax skins of C#). Yes I know that Mono exists, however it will never be fully compatable with .NET, rather it will be good enough in the way that WINE is. For the most important components (ADO.NET and WinForms) where not included in there submission to the ECMA, and MS will use the IP they have over these components to kill Mono should it implement them and get too sucessfull.
RE: Net is too hungry for resources
– It looks like it’s time for you to upgrade your system. The days of programmers working in assembler is long gone. Of course nobody is stopping you from just running DOS.
RE: Needs a better IDE
Have you even used Visual Studio? It’s not a terrible IDE. I presume what you miss from IDEA is refactoring. This will be coming in Whidbey. OSNews had a link to a video demo showing some new features. They looked pretty good. By the way, Intellij is supposedly producing a massive plugin for VS.NET that will do a lot refactoring. I don’t know how you can say it’s slow because even though IDEA is pretty fast for a swing app, it and Eclipse will bog down hard on large projects. Visual Studio is mostly native code. As far as the debugger is concerned the only issues I’ve ever had is that sometimes it’s hard to drill down into the data you really want. There’s a new feature in Whidbey that will adresss this. You can’t even compare Intellij or even Eclipse to Visual Studio because Intellij only does Java the only language that Eclipse does really good is java. The C++ plugin is not primetime ready yet. With Visual Studio you get, what 5 languages, right out of the box.
RE: cynical.NET
For the most important components (ADO.NET and WinForms) where not included in there submission to the ECMA, and MS will use the IP they have over these components to kill Mono should it implement them and get too sucessfull.
Yeah, and tomorrow you could get hit by a meteor and Sun could start charging licensing fees for every runtime shipped. You’re not Kreskin. You have no clue what Microsoft is going to do. By the way, dotgnu is working on winforms that is not tied to WINE and Mono is using GTK# for its crossplatform gui stuff.
.NET with all its APIs is meant as a replacement for Win32. I think everybody who as ever worked with the Win32 api or the various “higher level” apis such as MFC will see that .NET is a hige improvement.
There are many weaknesses in some APIs such as Windows.Forms, but the core platform including the VM is very high quality. The VM is capable of handling high-performance client applications (e.g. Q2.Net or the various samples for DirectX9.Net). It has a much saner type system than java, a much better generics system, and it is capable of supporting many radically different languages. (Don’t even try to tell me that SML.NET is just C# with different brackets.)
RE: Net is too hungry for resources
I have been running my first .NET apps on a K6-2 with 350MHz and 256MB. VS.Net was a bit slow, but the apps ran just fine, as opposed to some java GUI apps I tried. Maybe you should upgrade. I can give you the above mentioned old box 🙂
RE: cynical.NET
For the most important components (ADO.NET and WinForms) where not included in there submission to the ECMA,
You must be joking, right. WinForms is just a stopgap until Avalon is available, and ADO.NET is just a database API.
The most important parts of .NET are (in that order) the VM, the most important language (C#) and the core APIs (most of which are in mscorlib.dll). All three are available via a real standards bodies.
…on the web-development camp, ASP.Net was a HUGE step forward compared to ASP. It allows the creation of very professional web apps, so for that alone I think .Net was worthy. C# is a beautiful language too (as well as VB.net), at least for those who were using VBScript for ASP pages before.
Personally I like VS.Net a lot, especially version 2003. Some nice features are coming in the future, such “edit and continue” (code editing during debugging) and “click once deployment” that will add up to an already nice (though a bit heavy) environment. There are also some interesting alternatives such as WebMatrix.
I am looking forward to see Mono hit primetime because I think the Linux web developers could also benefit from ASP.net (and remember, it’s about freedom of choice)
With the .NET framework microsoft finaly has a chanse to port
most of their software on something else then Win32. If they
realy mean business, they should port their GUI, .NET and applications to BSD, like Apple did with Mac.
Why bother with awkward NT core any more ?
Java and DotNet gainning mainstream acceptance will open the market to other VM based environments or even to some interpreted ones.
Unlike Java, .NET hasn’t had the chance to spread out. Also another poster pointed out; .NET isn’t just for Windows. Microsoft themselves released a runtime for Mac OS X and FreeBSD. Not to mention the Mono project, which runs .NET on pretty much everything else
Give it some time and it’ll come…..
where are microsofts OSX or BSD implimentations of .NET? AFAIK, nothing exists, and if they do exist, they sure are making them hard to find. the only project i know of trying to make .Net truly platform independent is the Mono project ( http://www.go-mono.com/ ).
as far as languages used for .Net, both C# and VB.Net feel like C++ and VB respectively with Java idealogy shoehorned onto them.
what does .Net do that Java doesn’t? why would i want to lock myself into writing software that runs on a VM (oh, i’m sorry Framework) when i know exactly what architecture and platform it will be running on?
>> where are microsofts OSX or BSD implimentations of .NET? AFAIK, nothing exists, and if they do exist, they sure are making them hard to find. the only project i know of trying to make .Net truly platform independent is the Mono project ( http://www.go-mono.com/ ). <<
Here you go smart guy. Not hard to find at all if you actually look for more than a couple seconds. <http://www.microsoft.com/downloads/details.aspx?FamilyId=3A1C93FA-7…
>> what does .Net do that Java doesn’t? why would i want to lock myself into writing software that runs on a VM (oh, i’m sorry Framework) when i know exactly what architecture and platform it will be running on? <<
What about compile COBOL code in to something that is usable in todays web driven world? I don’t remember Java doing that? What about language independence so people that don’t know Java can use what ever language they are familure with and use your code just the same. Oh yeah. Java can’t do that either?
My question is what can Java to better than .Net besides being on more than one platform? And that is really becomming a moot point with Mono. So when Mono is in full swing who is going to continue to use Java?
I have never met a single person who actively seeks .Net as a solution for anything. For me, this was the straw that broke the camels back. After my frustration at how bloated and out of touch Microsoft had become, I moved completely over to Linux and ahve never looked back.
With the .NET framework microsoft finaly has a chanse to port most of their software on something else then Win32. If they realy mean business, they should port their GUI, .NET and applications to BSD, like Apple did with Mac.
Chances are that if they find that they can no longer make money from Windows, they’ll move to release good ports of the .Net framework (with Windows.Forms, Asp.Net, and all the rest) for BSD, OS X, and (maybe even) Linux. First, though, they have to get their core applications running on .Net, which will take some time. Luckily (for them), Windows is still making plenty of money.
Why bother with awkward NT core any more ?
Because they put in the time and money to build it and have no real reason to get rid of it. It’s problems are fairly well known and relatively few (at the core, anyway). In the current environment their biggest concern is maintaining enough backwards compatability to keep their users around, and that’s something that’s much harder to do with a BSD core than with the core that many of these applications were originally built for (though with so many apps built for 9x that didn’t run on NT, there’s a lot of work for compatability that would be more or less the same on BSD).
The only things that remain from the original ideas are the development enviroment, the CLR, and C#.
All of the remaining ideas were built on this foundation. Considering that they have yet to ship a desktop OS with the CLR (yes, you can download the .Net runtime, but as we’ve seen in the past, that doesn’t equate to anywhere near a guaranteed user-base), it’s impossible to say that the remaining ideas will never be implemented. That being said, I’m not exactly sad to see some of those ideas disappear.
They just took most of Java and swopped GUI speed for cross platform surport, and designed multi-language surport in from the start (so long as the languages in question conform to the CLS and so are in large part syntax skins of C#).
GUI speed has little to do with the design of .Net itself. Instead, it has everything to do with the implementation of Windows.Forms. At the same time, I don’t even need Windows.Forms to put a GUI on a .Net-based application; I can still write code to the Win32 APIs for a GUI or to any other GUI toolkit, if I want to. The real power of the runtime is in the ability to marshall data between managed (.Net) and unmanaged (anything else) code. As for languages needing to be syntax skins of C#, you obviously haven’t looked at the implementation of C++, or the features of many of the languages that 3rd parties have implemented for .Net. The last release of Visual C++ managed to not only make the language more compliant with the C++ standard than it has ever been before, but also allowed a great deal of freedom to move between managed and unmanaged code with full access to the .Net runtime, without sacrificing the ability to maintain legacy code in the same source file. That is something I could only wish for in VB.Net.
Yes I know that Mono exists, however it will never be fully compatable with .NET, rather it will be good enough in the way that WINE is. For the most important components (ADO.NET and WinForms) where not included in there submission to the ECMA, and MS will use the IP they have over these components to kill Mono should it implement them and get too sucessfull.
ADO.Net and Windows.Forms are both stop-gaps to interface with Win32. They will remain in Longhorn, but mostly for the purpose of maintaining compatibility rather than as something they’re actually pushing developers to use for that OS. ASP.Net and Windows.Forms remain side-by-side with Avalon in Longhorn, but over time will be completely phased out, as Avalon is designed to replace them both with a single interface. Similarly, ADO.Net exists next to WinFS. Everything in Avalon is designed to replace ASP.Net and Windows.Forms, and everything in WinFS is designed to replace ADO.Net. The three technologies being replaced (and not submitted to the standards body) were designed in the first place to simply exist as an interface to Win32, which was destined to be replaced, and barely shows a sign of existence in the documentation for Longhorn.
man…even most non-ms people say they have a pretty sweet IDE……stop your mindless bashing.
People like you with your retarded comments are why your love for openess is never going to happen.
thanks for the constructive comment. sorry about my lack of eloquence. my point was that if you’re writing for java, you know you are accruing VM overhead, but the benefit is you are almost completely platform independent. with .Net you are accruing VM overhead, but you do not gain platform independence as you are stuck running your software on Windows running on x86 processors. now that may change in the future, but microsoft doesn’t seems to be all talk and not much walk when it comes to true platform independence. show me a full .Net framework for OS X or Unix, and i’ll show you a company who’s not just blowing smoke up your crack.
i’m really not trying to flame, but why would you want to compile cobol to .Net? sure you can do it, but why? what is my cobol code going to do as a .Net binary that it couldn’t do as a native binary?
why can’t i compile cobol to a java bytecode binary ( http://www.legacyj.com/lgcyj_perc1.html )? how about 173 different languages ( http://grunge.cs.tu-berlin.de/~tolk/vmlanguages.html )?
so it seems java and .Net’s capabilities are pretty similar with java having the added advantage of being platform independent. so again i ask, what does .Net do that java doesn’t?
I have never met a single person who actively seeks .Net as a solution for anything. For me, this was the straw that broke the camels back. After my frustration at how bloated and out of touch Microsoft had become, I moved completely over to Linux and ahve never looked back.
Thats just great for you. But see most here could careless what you like or don’t like. The fact is .NET is being implemented more and more and is being requested by many. You must wake up and smell the coffee little man….both linux and ms have there place and I dont think that will be changing very soon.
>> so it seems java and .Net’s capabilities are pretty similar with java having the added advantage of being platform independent. so again i ask, what does .Net do that java doesn’t? <<
There aren’t a 173 different languages there are only about 10 with various implimentations of the language. So again you are misrepresenting the facts.
>> why can’t i compile cobol to a java bytecode binary ( http://www.legacyj.com/lgcyj_perc1.html )? <<
It doesn’t actually get compiled to bytecode. If you look at the description it provides an interface between COBOL and Java. Where at the .Net version compiles the COBOL into IL code.
…show me a full .Net framework for OS X or Unix, and i’ll show you a company who’s not just blowing smoke up your crack.
They’ve submitted all the core areas to the EMCA.
What, you want them to bake you a cake, too? The specifications are out there for people to pick-up and use. Hence, we have the Mono project. It is not their responsbility to make a VM for another OS. They are Microsoft, interested in Windows. However, they have given you the capability, with the EMCA specifications, to duplicate the platform on another OS.
Teach’em to fish and you won’t have them hiding under your table for dinner scraps, man.
m really not trying to flame, but why would you want to compile cobol to .Net?
So COBOL programmers can create up to date programmers using the expansive .NET library? So they can reuse their old, existing tools in new applications? Because in the end, its all just IL code, so no matter what language you utilize it all runs on the .NET platform?
>> Actually I find it hard to believe that you were the fastest sperm. Didn’t your daddy teach you not to spur insults especially when you come out looking stupid? Java does run on a VM, and does pay a performance penalty, but the payoff is that it can run on multiple platforms. What is the payoff for .Net for incurring the cost of using VM and interpreted code? <<
Last time I checked everything was there for .net on Linux, FreeBSD, OS X, etc. This argument is really getting old. Yes .net runs on a VM and yes all developers understand this. No end users won’t understand this but they won’t understand it with Java either, so give up that argument. In addition contrats Java has had a 10 year gain on .Net, but that really makes Java look sad with how fast .Net is catching on.
I remember this same agrument in a different form when .Net came out 2 years ago. Everybody was saying nobody will use .Net when they all love Java. Two years later .Net is activily sucking all the Java developers in because they find it a much friendly environment to program on. Also who cares about cross compadibility. 90% of the machines in the work run Windows, so if you are selling a program you are not going to worry about a port for that other 10%. And yes you do have to port it, it is not as cross compatible as most people would have you beleive.
So please guys give it a rest you are fighting a loosing battle and in the end you are going to be the one with egg on your face when Mono starts getting widly used in a Year.
“It doesn’t seem like we’ve seen much of .NET yet, but when Longhorn comes out, it’s on! And the Win32 API can kiss my ass ”
we’ve seen just as much .NET as we’d expect, but when longhorn comes out don’t expect to use all it’s features because it will take another decade until everybody’s switched to the new platform
“Also who cares about cross compadibility. 90% of the machines in the work run Windows, so if you are selling a program you are not going to worry about a port for that other 10%. And yes you do have to port it, it is not as cross compatible as most people would have you beleive.”
I see that 90% marketshare has endeared a kind of blindness. If someone ruled the world, why care about a lowly peasent.
Cross-platform isn’t just about the present but the future as well. Writing with a cross-platform mindset means that your code will be more robust, and cleaner. Go look at the Linux kernel sometime and see what cross-platform has done. And while something may not be as cross-platform as we are suppose to believe (benefit of the doubt here) it is at least a further step than locking one’s self into the present, while possibly breaking one’s future.
“So please guys give it a rest you are fighting a loosing battle and in the end you are going to be the one with egg on your face when Mono starts getting widly used in a Year.”
And if it doesn’t then what? You’re basically promising us a particular future.
“So COBOL programmers can create up to date programmers using the expansive .NET library? So they can reuse their old, existing tools in new applications? Because in the end, its all just IL code, so no matter what language you utilize it all runs on the .NET platform?”
Unfortunately for your argument. COBOL is mainly used on mainframes. Time tested code used by conservative companies and individuals. Were’s the VM for mainframes? At best .NET might make an appearance on the client-side of things. But again were talking conservatives here, who might already be invested in Java. Doesn’t make sense to rip all that out to make Microsoft happy.
Were’s the VM for mainframes?
http://www.go-mono.com/
The power of open source. ;0
Its all well and good until the time comes to upgrade (by force or suspicious fire in the datacenter), at which point you are faced with three options: buy aging mainframes and use the old code, setup a Linux cluster + mod your existing source, or… start over from scratch.
Whats better, Emacs and gcc and gdb? Codewarrior? Eclipse? Xcode?
Get real.
You answered your own question with Eclipse and Xcode, then said “Get real”. Care to provide some justification for that remark?
“Its all well and good until the time comes to upgrade (by force or suspicious fire in the datacenter), at which point you are faced with three options: buy aging mainframes and use the old code, setup a Linux cluster + mod your existing source, or… start over from scratch. ”
Or fourth: Buy a new mainframe which has better backwards compatibility than what PC’s have demonstrated (planned obsolesence)
“Last time I checked everything was there for .net on Linux, FreeBSD, OS X, etc. This argument is really getting old. Yes .net runs on a VM and yes all developers understand this. No end users won’t understand this but they won’t understand it with Java either, so give up that argument. In addition contrats Java has had a 10 year gain on .Net, but that really makes Java look sad with how fast .Net is catching on.”
Last time I checked, the majority of classes for .Net are not ported over to any other platform… making .net on other platforms as useful as a hole in someones head. Last time I checked, Mono is forced to use wine to get any type of compatibility with .NET. Last time I checked, Microsoft is adding thousands of features to keep anyone from using any alternative.
“I remember this same agrument in a different form when .Net came out 2 years ago. Everybody was saying nobody will use .Net when they all love Java. Two years later .Net is activily sucking all the Java developers in because they find it a much friendly environment to program on. Also who cares about cross compadibility. 90% of the machines in the work run Windows, so if you are selling a program you are not going to worry about a port for that other 10%. And yes you do have to port it, it is not as cross compatible as most people would have you beleive.”
I care about cross compatibility. Especially now since Linux is having Microsofts lunch. In a few years, when the only way you can justify paying $200 for Windows and $500 for office is if your manager is insane, I think many people would care too. I’d rather not have my future locked to anyone platform vendor. Besides, 10% of the desktop market is a few million machines… not exactly a market you want to ignore. And worst, on the server side… it is around 60% of the market you will be ignoring.
“So please guys give it a rest you are fighting a loosing battle and in the end you are going to be the one with egg on your face when Mono starts getting widly used in a Year.”
Right… Mono isn’t even going to be slightly usable for another three years. And by that time… it will have the features .Net offerred in 2002. Why don’t you go start a new Java project using Java 1.1?
The fact of the matter is that Java has long since died on the desktop. It’s over. People are looking for alternatives and many feel that C# and the CLR is superior to Java. Mono only needs wine for those winform apps that hook into native windows libraries. Mono’s preferred cross-platform GUI is gtk#.
Since you’re pretty clueless about Mono I’ll inform you that ADO.NET and ASP.NET are basically feature complete right now. Not in 3 years. Mono already has some generics support. No matter how much you want Mono and .NET to die the fact of the matter is that Mono has been way over the hump of dying in some open source graveyard for a long time now.
I’ll leave you to your regularly scheduled programming of FUD. Thanks
By the way, Java 1.5’s implementation of generics is a joke. All it does is do boxing and unboxing of objects at compile time. So you still get a big performance penalty with the unboxing and you can forget about using reflection to build a generic of a certain type. You’re lucky .NET is around or Java would still be languishing around without features that developers have been wanting for years. Just face it, Java is relegated to the server.
Does mono mean i will be able to run new .NET apps seamlessly on my powerbook? In that case, .NET would be great for apple, no?
And how does .NET compare to cocoa/Xcode, if they can be compared
Yes .NET has a VM just like Java does, that is the only reason why you mention both in the same sentence. I’m sure that there were languages before Java that had a VM. What you people fail to see is that the .NET Class Library looks more like the Delphi VCL since Anders Hejlsberg jumped ship from Borland to Microsoft. Read this funny memo from Sun http://www.internalmemos.com/memos/memodetails.php?memo_id=1321 .
9MB for “hello world” in java, which is pathetic. Read that memo; it is extremely funny when you compare how sun says that java is the messiah of programming in public and what they say internally. .Net apps are not interpreted, they are compiled to native at runtime.
The JIT work for PowerPC is coming along nicely. I believe Novell/Ximian just recently hired another runtime programmer. You’ll be able to run Mono apps on Powerbook by the time 1.0 comes out, which should be some time this year.
Now, as far as a GUI is concerned, I’m not sure how the gtk# will work on Macs. In theory, if there is a gtk2.x on Mac then it should run. By the way, Portable.NET, or dotGNU as it seems to be called these days, runs on MacOSX right now. Portable.NET also has a winforms implementation that rides on top of X for unix platforms.
I’m currently porting a library from Java to C#/.NET. The current .NET APIs, while being fairly broad, are at about the same level of richness as Java was in the JDK 1.1 days. In short, there’s a lot that is not there yet. Yes, it will eventually be there — in two or three years. I wonder (and look forward to seeing) what Java will be like by then.
//I have never met a single person who actively seeks .Net as a solution for anything. //
Apparently, you’re either a high-school script kiddie, or you don’t deal with Fortune 500 business.
//I have never met a single person who actively seeks .Net as a solution for anything. //
You should tell my employer that and also the state of MN which is doing some large .net projects as we speak.