Oracle is shooting itself in the foot with that article. The shown Scala/Groovy operators are so much nicer than the new Java way, in an article meant to showcase the new Java way.
Announcement
Collapse
No announcement yet.
Microsoft To Open-Source .NET, Bring It Officially To Linux
Collapse
X
-
Server development
From what I am reading from this discussion I come to the conclusion that most of the folks here have not tried using .NET for anything than building mighty "Hello, World!" applications.
Most of the things written in .NET nowadays are server-side with heavy ASP.NET integration -- this means websites. Sure, there are games and WPF applications, but most of it is purely server-side development. What this means? Tons of multi-process, multi-thread code interacting with each other through WCF. Inversion of control. Entity Framework. Reflection. Lync. Parallel library, including Parallel Linq. Functional Programming through Lambdas. Expressions (Exprssion Trees) and the things you may build with them (Compiled custom code? Self-optimizing routines based on user input, readily available? Automatic network interface implmentations? Dynamic typed queries? Custom filters, created on Client Side, and executed on the Server with literally 3 lines of code? You have it.). All of this in a single language, most of which makes perfect sense, known to a large amount of people already, with successful deployments.
Having spent more than a decade on coding in C++, C, Java, Delphi (yuck), I find C# to be the most concious and well-built developer-oriented stack. True, most of the cool development comes to Windows later, if ever, but still, there is tons of things that affect us as developers that you simply can't find in _any_ other software stack. I mean, seriously. I don't think the other languages lack something fundamental in that manner (esp. Java). I do, however, think that they are stuck in the middle ages, with thoughts like "C++ is the best language!", "Java is the way forward!", etc. without acknowledging even half of the things that happen on the other side of the fence. Don't get me wrong -- I detest Windows as a platform and think it should not have lived the light of day if not for its over-agressive market. But C# is a completely different story. It is(was) closed-source, true, but there is a reason why developers using it are paid better and that reason is they are usually more productive. True, the language gives you enough freedom so you can become lazy, write crap, etc., but that's everywhere, and has more to do with personal culture than with programming skill set.
I, for one, welcome the change for an open .NET. Once you can safely code server-side stuff for Linux in .NET, things will get much better in here.
Comment
-
Originally posted by curaga View PostOracle is shooting itself in the foot with that article. The shown Scala/Groovy operators are so much nicer than the new Java way, in an article meant to showcase the new Java way.
I actually like Java, especially with the changes that has come in Java 8. But it seems that I am in a minority today But there are a lot of things in Java that other people say is a problem that I like about Java, like f.i. checked exceptions... But everyone has their own opinions of stuff... I am happy as long as I am lucky enough to get to work with stuff I like
Comment
-
Originally posted by vein View PostActually...this way of doing this in java in pretty old....I suggest you read about "Optional" in Java8, it should make your life easier:
http://www.oracle.com/technetwork/ar...l-2175753.html
The Groovy ?. operator - and as the same article mentions, the "Elvis" operator ?: - work with any Java.
Comment
-
Originally posted by Michael_S View PostThe problem with Optional in Java 8 is that it's not retroactive. If I'm calling a method from an Apache Commons Java library, or a Spring library, and even from half a million lines of Java we've already got on our own application, I can't apply Optional to it.
The Groovy ?. operator - and as the same article mentions, the "Elvis" operator ?: - work with any Java.
Comment
-
Originally posted by Michael_S View Post... which disappoints me. Java 6 is no prize. Maybe the best hope for ending developer nightmares is cross-platform toolkits written in other languages, like Xamarin and (as polarathene already mentioned) Haxe.
There are _dozens_ of cross platform toolkits targeting Android and I wouldn't consider Xamarin in the top 10. Think Corona, Cordova, Sensa Touch, Unity (C#), libgdx, many other HTML based ones...
I suspect there are legal reasons blocking an upgrade to Java 8. I'm still shocked Google hasn't just made a non-Oracle successor language.
Comment
-
Originally posted by Michael_S View PostOften in Java, I'm doing something like this:
SomeClass someInstance = null;
if (foo != null && foo.getBar() != null && foo.getBar().getBaz() != null) {
someInstance = foo.getBar().getBaz().getQuux();
}
In Groovy, they have the "save de-reference" operator "?." - which returns null if the variable it modifies is null, otherwise it walks the object graph. So that becomes
SomeClass someInstance = foo?.getBar()?.getBaz()?.getQuux();
If any of the objects in that graph relationship is null, someInstance is just set to null.
Comment
-
Originally posted by DanLamb View PostAs boring as Java 6 is, it's probably adequate for basic Android GUI wiring code. Java 8 would be nicer.
There are _dozens_ of cross platform toolkits targeting Android and I wouldn't consider Xamarin in the top 10. Think Corona, Cordova, Sensa Touch, Unity (C#), libgdx, many other HTML based ones...
I suspect there are legal reasons blocking an upgrade to Java 8. I'm still shocked Google hasn't just made a non-Oracle successor language.
Originally posted by pal666 View Posti am not a java programmer, but you can rewrite it with non-member functions s=h(g(f(foo))), which will check for null argument
Comment
-
Originally posted by Michael_S View PostThe problem with R is that the open source versions expect to manipulate the entire data set in RAM. That's why my employer does all of their data manipulation in other languages, because they didn't feel like modifying R to work with data sets larger than 10TB.
Comment
-
Originally posted by DanLamb View PostR is also terrible at making web pages and writing video games. Most tools have a niche where they make sense, and sure, you have described a scenario outside of R's niche. Matlab isn't a good choice for super large data sets either, that's really not it's niche either.
Comment
Comment