Live data from Hacker News

JDK 8 Release Notes

oracle.com

281–290 of 314 posts

Re: JDK 8 Release Notes

#282
post #240

Earlier quoted context omitted.

This sort of reaction is surprising to me. Java has been a useable, performant language for some time now. The tooling is excellent, the JVM is astonishingly good, and it will run circles around Python, no less Perl. I don't think many of the arguments against Java are based on how it works once you've written it, but rather to the horrendous verbosity, class-explosion-as-a-design-pattern, painfulness to read (not de…

> I mean, Clojure Scala and Groovy all run on the JVM, and we talk about them all the time! 5 years ago those 3 languages were the talk of the town for alternate JVM languages, but things change. Scala's pulled way ahead of the pack, Clojure's consistent, and Groovy's on a downward trajectory, following in Beanshell's and JPython's footsteps. Eclipse users are drifting into Xtend, and IntelliJ users may look at Kotli…

With groovy being pulled more into use with spring and great test frameworks like Spock, I see more groovy use paired with java not less.

Scala is the interesting one I'm interested to see if a simplified type system can be introduced ala http://www.infoq.com/presentations/data-types-issues

Re: JDK 8 Release Notes

#283

Earlier quoted context omitted.

The problem is not java the lang. It's the java developers. Looks like they moved on to do angular now.

That's a good sign. Y'all JS devs need to learn something from Java community (especially the engineering/quality side) even if you guys have to go through the pain of Java growth (small => medium => bloated => denial => acceptance => cleaning up => shaping up for the future).

Amusingly, I'm undergoing that transition right now from doing mostly JS to doing JS & Java professionally.

I'm not sure how I feel about Java so far, although there are problems that I want to solve in the Java backend at work for future scalability, since the quality of code is actually worse than our frontend code currently.

Re: JDK 8 Release Notes

#284

I have to admit I thought Java was dead in the water after Java 6, but Java 7 while a fairly quiet release was a decent release and Java 8 actually moves the language forward into a better place. As for the future here's what I would like to see: - Separation of language and libraries. Really the JDK should just ship with just a very small core of classes and everything else should be optional installed via a depende…

I admit I find my-self thinking from time to time that I need to "return multiple values from this method". But this is not often, and in most cases I find that it is a result of bad design. A method should be short and have a single responsibility, that is at-least the java best practice mantra, having only a single return type help enforce this.

The problem with this is you are forced to violate Occam's Razor by introducing unnecessary classes and methods when you need to return two related but distinct results from an operation.

For example a method to calculate the value of an asset portfolio could return the value of the portfolio and the set of assets that are missing prices in a single call rather than having to make two separate ones (and potentially two iterations through a data collection). Cleaner to be able to return a number (or a money class) and a set of assets rather than having to return CalculationResult. As a bonus you also get to dodge the hardest problem in programming, naming things ;)

Most of my issues with Java stem from violations of Occam's Razor of this manner.

Compare with say Python where introducing classes is much less necessary and ends up with cleaner and clearer designs.

Re: JDK 8 Release Notes

#286

Earlier quoted context omitted.

Actually they use Java the language, except that the code doesn't run on JVM but on a different VM (Dalvik at this time). Dalvik supports Java 6 and parts from Java 7.

Dalvik is dead. Art is the new king

Maybe in the future, I doubt anyone, except Android developers, even knows about Art.

Art is still experimental and not enabled by default.

Re: JDK 8 Release Notes

#287

Earlier quoted context omitted.

You have probably encountered the occasional Java desktop app, without realising. If you can't easily tell it is Java, the development team have done a good job. Two of my company's three products are a Java desktop app for Mac, and they look and feel like typical Mac apps. Best practice? IMO you should spend significant time on the GUI making sure it feels native. Otherwise, Swing is still about as good as it gets f…

Java as a desktop front-end language is dead. Sorry. JavaFX is a sad attempt at trying to re-live it, and no one outside of enterprise environments that are pure JVM shops are attempting to use it.

Actually, no, we have used it for a decade and continue to do so, because it is a reasonably clean and performant UI framework that gives us great control and pretty decent platform-native look and feel.

Re: JDK 8 Release Notes

#288
post #173

Earlier quoted context omitted.

Checked Exceptions and null. I write a lot of Java and I generally enjoy the language, but those two things; if Oracle could fix those somehow I would be extremely pleased. I'm so tired of writing null checks and I hope Optional is not the final answer since it too can be a null due to programmer error. I am really worried about Optional getting abused in Java 8... Actually, I waffle on checked exceptions; it seems e…

I'm so tired of writing null checks ... Could the null checks of Java be compared to the ones used in C#? My C# code is often littered with ternary operators to deal with null values. And that's still not as safe as the Objective-C approach where one can just send messages to nil[0] which is really awesome imo. I guess I kinda wonder if I could avoid the null checks in C# somehow ... I figured using a design by contr…

Have you found C#'s null coalescing operator useful in these situations at all? I've found it to be quite handy.

http://msdn.microsoft.com/en-us/library/ms173224.aspx

Re: JDK 8 Release Notes

#289
post #18

Earlier quoted context omitted.

A major cleanup of the Java libraries is scheduled for Java 9. The JVM actually does not surprise anyone who's been working with it for a while: it is downright the most performant, flexible and awesome runtime environment ever developed. I've been playing around with lots of languages and environments in my pretty long career and, in the past decade, have always come back to Java (or the JVM). It feels like driving…

What is best practice when it comes to Java GUIs? Would you recommend Java for building cross-platform desktop apps with near native UI performance? The IntelliJ IDE looks great but most Java desktop apps I've come across just look and feel weird. Not sure why there is such a big difference.

You might be interested in Nifty: http://nifty-gui.lessvoid.com/

It's hardly any "best practice" or "standard", but it looks like people are managing to ship projects with it. Performance is reasonable; on the inside, it's openGL via lwjgl.

Another option is libGDX: http://libgdx.badlogicgames.com/

Their presentations appear to be oriented largely around games, but the parts could be used for a desktop application just as well. There's a number of mobile games in both the app stores using it.

Re: JDK 8 Release Notes

#290
post #206

Earlier quoted context omitted.

Go work with C++, and you'll pine for Java.

And go work with C# and you'll pine for nothing. I've used all three and after a few years of C#, the other two are just a distant memory.

I did, but then javaagent and JMX pulled me back because hooking to runtime in .net sucks.
Post reply on HN