Linked by Eugenia Loli on Mon 19th Sep 2005 17:02 UTC, submitted by Eli M. Dow
Mono Project Build applications for Linux while maintaining cross-platform capabilities using .NET languages.
Permalink for comment 34016
To read all comments associated with this story, please click here.
RE[4]: Costs of Mono
by Anonymous on Tue 20th Sep 2005 14:59 UTC in reply to "RE[3]: Costs of Mono"
Member since:

It is true, but IMHO the .NET will successor of java. The C# and java language, basic class libs are very similar. But the designers of java created many wrong decisions when java was born: no properties, no operator overloading, no databinding, AWT, etc. And some of this early decisions can't change without break the compatibility.

Well, AWT got fixed with Swing... (i know, i know... ;-))
.net is giving sun the kick in the pants it needs though, Swing is getting exponentially better with every release. I find that C# gets more "right" then java, but only in a handful of ways, most of which can be solved with good IDE code generation (manditory plug for the greatest IDE of all time, IDEa ;-))

Not only the swing. IMHO a biggest problem is a virtual machine. The .NET (and Mono) uses only one VM for every desktop applications. But every desktop java apps are uses their own runtime environment. The java 1.5 promised change, but now, after 1 years of 1.5 the most of java apps are use separated JVM.

first of all, keep in mind we are talking 10-20megs overhead here. that being said, the jvm per app thing is because performance in java takes a back seat to security. the 1.5 changes you mention only allowed for shared memory between jvms, not one jvm for multiple apps. imho, they should try to make this an option for situations where security is non-vital (i.e. most desktop apps). in a more general way, i get the feeling that javas design descisions were for the server first, desktop second, while .net is the other way around.

And the biggest problem of desktop java is the future. IMHO if .NET will strong enought the running of desktop java apps will be uneasy on windows. And the 95% of desktop market is windows based. And IMHO in the near future the .NET will replace the flash on the client side. In this case the linux desktops without .NET support will dead.

this is the biggest misconception out there. first of all, the ".net languages" (c# and co) will never replace everything, and they arent meant to. Apple uses objective C, most linux apps are written in C++, these languages arent going anywhere, no matter what windows does or doesnt do. Secondly, java isnt that successful on the desktop. but like i mentioned, its practically synonomous with enterprise computing. java lives in the server room, and the mobile device market. i dont see .net conquoring either any time soon. the only negative effect of not having .net means that programmers who only know the .net languages will have a much higher barrier to entry for writing on linux. while this is not a good thing, it doesnt exactly spell the death of the platform.

At this moment. But IMHO it will change in the near future.

I disagree. Microsoft is very far behind at the moment. I believe we will see a shift to where ms has a decent market share, just for the shear amount of money they are pouring into marketing the damn thing. but java has an *extremely* good reputation in the enterprise, microsoft has a very bad one that they are desperately trying to turn around. everyone is quite aware there has never been an oracleSlammer, but sqlSlammer cost everyone who had the misfortune of running sqlserver quite a bit of time and money. Not to mention that linux is the hip thing now for the server room, and while its possible to run .net on linux (obviously), i dont think anyone here is seriously comparing mono to the sun jvm.

I would say its possible that this will change in the far future, i seriously doubt theres going to be major changes to the enterprise stack any time soon.

It is true, but if you count the potential .NET developers you must count every Visual Basic, Delphi, (or maybe java :-)) and other programmers, not only the C# developers.

Currently, there isnt much non C#,,, etc development being done on the platform. why would you write a perl script on the .net vm? sure, its possible, but its far from desireable, except if you are planning to use it as a dll. and why would you do that in perl? the main attractiveness to the language agnostism of the cli is in porting legacy apps, not writing new ones. imho of course, but i have yet to see anything to suggest otherwise.

Reply Parent Score: 1