Originally posted by Tgui
View Post
Announcement
Collapse
No announcement yet.
Mono Project Continues Making Progress
Collapse
X
-
Originally posted by johnc View PostI remember back when Java was cool and I could never figure out why C# / .NET became so popular. And to be honest... I still don't get it.
Comment
-
Originally posted by smitty3268 View PostAre you complaining about high-level languages in general, or are you claiming that Java is better than C#? Because.... no. Just no.
Comment
-
Not surprised considering they're being funded by microsoft to make a bad java clone for non-windows platforms just so microsoft can claim it's "multiplatform"
If you're comparing C#1.2 and .NET1.1, sure, they're pretty cruddy, but those were obsolete like 8 years ago. I can have intelligible conversations with human beings younger than C#2.0.
I can safely say mono is a piece of garbage, and "write once run anywhere" will NEVER apply, you will have so many issues trying to port a .NET app to mono(entire features flat out not implemented, buggy frameworks, many libraries that are .NET only, etc)
It's becoming even less relevant as microsoft is (slowly) killing off .NET because they realize the mistake it was instead of just rewriting their *awful* native API.
WinRT does not obsolete .NET. It sits below .NET because it's a low-level systems library, the same way that glibc sits below Qt5.
I'm not sure who mono appeals to, but if you decide you want to use C#/mono maybe reconsider and give D a look instead... or just use regular Java instead of Microsoft's offbrand Java.
Let's break it down in a way that matters to Real People:
Jobs you can get as a C# programmer: 8919 from just one source
Jobs you can get as a D, Go, or Rust programmer: 0? Not even listed as options on Dice, LinkedIn, or any other site I can think to try
Telling a programmer to pick D over C# is roughly equivalent to telling them to go die of starvation in a cave. Not very nice.
That doesn't mean that C# is empirically better than D, no, but it is indicative.
And honestly, D really isn't that nice if you try using it for anything larger than a small hobby or research project. A lot of the decisions going into D's design are dubious at best. Not only is it severely lacking in tools, it always will be due to its tools-hostile design. It's in many worse even worse than C/C++ and their macros when it comes to writing proper tools. Whoever came up with the string mixins of D needs to be shot in the face with a poison dart. "static if" is almost as bad. Language designers who know what they're doing write languages closer to C# which has an almost religious attention to tooling support. Or take the Clang guys at Google, who make sure they bring up tooling support issues with new proposals at the ISO C++ meetings to try to avoid any further brain-damage from the camp who doesn't get that the cutting edge is longer about the manipulation of semantically-inert text buffers. There's ease of dumping out a toy quickly and then there's ease of maintaining a real application.
Comment
-
Originally posted by johnc View PostI guess I just never understood why there was so much interest in C#. I guess if people were just developing for Windows it was the thing to use.
C# never really caught on with windows for user applications either, though, because the slow startup and memory costs associated with it, like java, seemed to doom that from ever happening. But it's big in business apps and server side where that stuff doesn't really matter much and development speed (RAD) does, since your major cost is paying developers labor costs.
Comment
-
Originally posted by elanthis View PostAnyone claiming that C# is a "bad" Java clone has probably not actually been using any modern incarnation of it. Clone? Sure, no argument. "Bad" clone? wat. Java has if anything been playing catch-up with C#, and rather poorly at that.
If you're comparing C#1.2 and .NET1.1, sure, they're pretty cruddy, but those were obsolete like 8 years ago. I can have intelligible conversations with human beings younger than C#2.0.
Comment
-
Originally posted by Thaodan View PostThe problem is that most C# programms aren't realy portable cause of P/invokes or WFM.
Another thing that is a bit annyoing is that Winforms look like crap.
It is kind of new though. I hope it catches on.
Comment
-
Originally posted by smitty3268 View PostC# brought a whole lot of c++ like functionality to the language that java did not allow. Things like generics, enums, structs and stack types instead of using the heap for everything, function pointers, operator overloading, non-brain dead event handling, much easier integration with c/c++ native libs, the ability to compile your programs to native code instead of VM, and about 1000 other niceties that java has been slowly trying to catch up with over the last decade.
It's a preference thing, of course. I prefer a consistent form to a bunch of random, haphazard constructs that were supposedly designed to make my life easier. (IOW, for me, keeping the functional aspect of the language straight is a better benefit than allowing me to write an iterative loop w/ fewer characters.) Or, to put it more plainly, I have OCD.
The other big downside of C# is that it tied you to Windows, which to me was a huge downside, and pretty much a non-starter for server-side code. But I think for desktop-type applications this would be a large benefit, and especially w/ the native Windows look.
I'm not much of a code snob (I'll even do PHP, which is an awful language)... but I really can't stand what they've done to Java.
Comment
-
The other aspect of it all was that C# was a reaction to Java at a time when the power struggle for dominance and coinciding politics was really predominant in the industry. Microsoft was just coming out of the big monopoly controversy. I guess I was a *nix guy at the time. (I wouldn't really consider myself that; I just didn't think *nix platforms should be excluded from the public conscious.) I really couldn't figure out why developers were throwing their eggs into the Microsoft-exclusive basket.
Here with Java we finally had a cross-platform tech that could have really shaken up the industry and............... nope. C#. Pretty much solidified Microsoft's monopoly.
Comment
Comment