Cue Java vs .Net "debate"....
...descending into name-calling within 10 posts... :)
Learn to use both, make twice as much money!"
But for which one? Or make twice as much money for/from both of them?
Methinks one may be enticed/tempted with the usual enticements/temptations to make a choice, so it may be a battle of number$. How crass is that in what would really be an Intellectual ProActive XXXXercise to engage with IT Programmers, who are actually, Really, ITs Hot Shot Drivers.
"...descending into name-calling within 10 posts... :)" ....:-) Crikey, that descent needed no posts, only 34 minutes.
Never works the same between different versions of the same browser, let alone different browser flavours... Yuck, Yuck, Yuck...
Admittedly, I hate VBScript just as much and ASP most. Makes my skin crawl just thinking about my brief experience with those two spawns of the devil (even though it was waaay back in early '99).
More to the topic: Even though I was an early adopter of Java, and generally hated everything about Microsoft, I never really thought it was such a big deal that M$ was making Java work nicely with their OS/Tools. If you follow an MVC approach, having a custom front end for Windows makes sence - and anyone that's had to work with the hideous Java AWT GUI would certainly welcome something better.
>I never really thought it was such a big deal that M$ was
>making Java work nicely with their OS/Tools.
The COM integration was very nice and useful.
Adding new methods to core classes and not even documenting that these were MS extensions was pure evil. Simply, a MS Java coder could write a pure Java program eschewing all the Windows extensions, and still end up with something not portable beyond Windows.
I always thought that the fact that Sun's java implemented was cross platform was a bit a myth too. It would be nice if I could assume my little java applet written and tested in windows would work flawlessly on linux without the need for more testing.
MS are also ramping up the competition (or trying to) against flash, with Silverlight on the way, but I fail to see any real advantages yet with their "new" tech against all the pre-existing ones we already have.
I'm not sure I really give a toss anymore with anything to do with this, my assumption that MS takes any standard with a creative pinch is salt is still valid. it seems when their engineers get hold of a standards document, it never appears to be good enough for them.
Not to mention inter-browser quirks, courtesy of IE. I'm just waiting for someone to do something stupid like coding an online bank system in AJAX so the damn crapware shows how unreliable the turd is. Eek!
As for Visual Basic ... I haven't seen uglier syntax like that except in ill-advised compiler courses. ugh!
"Pure Java", if developed using the "correct" (non-MS) specs will truly run anywhere there is a "true" (non-MS) JVM.
And the biggest difference between Java and .NET is ... the net ... Java doesn't need it to run whereas .NET needs Windows and ... the net.
And Tim Anderson is right, following on the heels of the also-right James McGregor. As for AJAX performance ... ye reaps what ye sows.
As a language though it's superb. Loosely typed, sure, but strong minds can handle weak types. It has closures and all of the fun bits that make Ruby so popular, and in terms of speed of development it's hard to beat.
I'm normally up to my eyes in Java but I've been using it a lot in it in non-browser environments lately and it's a pleasure (ok, it would be more of a pleasure if Sun and Mozilla hadn't diverged a few releases back - JSAdapter vs getters/setters, anyone?)
Don't make the mistake of tarring it because of it's users - like communism and religion, the underlying principles are sound but it's usually adopted by clowns. Take a look at here first. Or just go and use gmail for crissake.
We have needed little work to make our applets run on "all" platforms (Windows/Mac/Linux, various browsers).
The biggest issues are to avoid bugs in various older versions (including MS "Java" 1.1), the different execution speeds of different library functions (which we have to be aware of in our real time applications), and minimising the creation of garbage - the garbage collectors' performance doesn't seem to be defined.
A streaming video player is one of the most complete demonstrations of cross platformness, requiring real time download, decompression, video display, synchronised audio playback, and mouse interaction - so if anyone wants to test out "cross platformness" in Java, have a look at some videos at http://clesh.com/
Unfortunately, since it was subsequently built into nearly every web browser on the planet, it allowed the hordes to foist their crawling horrors on the rest of us via the magic of the internet.
In fairness I should point out that the comparison also holds in the sense that it isn't actually necessary to code like a retarded monkey on crack in either language, despite all the evidence to the contrary.
I've written with Java and .NET. The Java applet project I was involved with was written with MS J++, but tested with Suns JVM. I just prefer the developer tools from Microsoft, compared to things like NetBeans, which seemed to take 1/2 hour to start-up on my system and looked and felt totally different to all my other windows software.
I also think .NET is one thing Microsoft has actually done very well. Both C# and Visual Basic.NET are ahead of Java imho with respect to things like generics and the richness of their libraries. WPF (Windows Presentation Foundation) is another technology that I think is going to ably compete with Flash (Action Script if I remember was a royal pain in the arse). I would even go so far as to say MS are ahead of the game with their WPF coding model, especially as it's backed by the .NET CLR.
I don't hold out much hope of true .NET platform cross-compatibility; people speak of Mono, but as far as I can tell the application would have to be pretty limited to succeed (and as such, why not just use Java?). In any case, in these days of Virtualisation, does cross platform compatibility really matter? I wonder.
The article suggests that the $20 million was sufficient to settle the spat between Sun and Microsoft about Java. However, Sun filed an antitrust lawsuit against Microsoft in 2002 for using Windows to undermine Java. This was resolved in April 2004 to the tune of $700 million! At the same time, Microsoft and Sun signed a $900 million licensing deal.
Might make more sense to only comment after you've read something about what .NET is.
The .NET VM is far faster than the JVM (which makes sense) and is better implemented than Java in general. I've spent a few years coding in Java, I did C++ before that, I now do C++, but I prefer working with C# (and I was a diehard C++er until I started learning C#). It has a few problems with the language (that will be here to stay unfortunately), but overall it's fantastic, and a joy to be using VS as well (let's face it, there's IDEs that come close, but the only one I've used that I would consider an alternative to VS in Java is iDEA, but it deleted about 70% of the work I was doing on refactoring so I lost some faith in it).
Biting the hand that feeds IT © 1998–2021