Ars Technica Tours Mono
Kevin Francis writes "Over the coming weeks, Ars Technica will be taking a look at Mono, including a basic introduction to Mono, MonoDevelop, and C#, and then branching out to GTK#, database access, ASP.NET, advanced C# topics, and conclude with a discussion of the future of Mono, and the C# standard. All the examples will work on Windows and Linux, with OSX support coming shortly. Part 1 of the series is online now."
I am writing an app for mono that is supposed to run on linux mac and windows in the end. From what I see it's nowhere near just starting a .NET app on linux using mono.
The app clearly has to be written with crossplatform execution in mind. (I know this goes for c and java too, but some people seem to think they will run office on mono in the future.).
You need to steer clear of anything that depends on a platform.
- if you define a path, make sure you use path.combine or path.directoryseparatorchar instead of a / of \.
- don't depend on environment variables
- pay attention to casing, don't say "file.ext" when it's "File.ext"
I know it should be ovbious to any cross platform dev out there, but I just thought I'd bust some bubbles with some of the less informed.
Artists against online scams http://www.aa419.org/
Uninformed slashdotters with tin foil hats should click this link. .NET, Rotor and Mono are implementations.)
ECMA-335 Common Language Infrastructure (of which
And, of course, there's the fact that his latter two complaints are kind of sort of fixed in 1.5.
:-)
:-)
So...
Personally, I think the C# folks make too much of a big deal about the mandatory exception handling in Java. Heard a fellow from Microsoft say "Frequently, Java folks just put an empty catch() block to catch the exception they know won't happen, so why make it mandatory?"
I've got bad news for you. I find situations like that about once a week when auditing my programmers' code, and it's almost always a situation that -can- happen, but the programmer couldn't see it.
Don't trust the programmer. I know, I am one.
Right. Of course that's all about to change - from the Java 1.5 ("5") new features site:
You still need to deal with exceptions - that's a bad thing?
Switch back to Slashdot's D1 system.
Yes, you have correctly tracked down the source of that misconception. It's an easy misconception to have, given what the Mono project writes about itself.
Now, dig down a little deeper and go to the downloads. What do you see? A "Mono Stack" on the left, consisting of OSS libraries and APIs, and a
Now, turn to the FAQ:
What does that tell you?
Why is the Mono project seemingly saying one thing and delivering another? Well, in part, it's because the term ".NET" is really ambiguous. In part, it's because where their money comes from and where their commercial interests are (they aren't doing this out of religion, they are in it for commercial purposes).
So, your confusion is understandable. I wish the Mono project were clearer on their front page, too, but I suspect they have reasons for what they are doing. Either way, you should really dig a little deeper.