Hi Stephen Jordan,
First of all, a warm welcome to CodeRanch!
Stephen Jordan wrote:Anyway, I just have a question regarding the use of the new APIs introduced in Java 8, since this will be the JDK I'm required to use. I'm just wondering if it makes sense to exclude the new features ( lambdas, method referencing, Streams, etc) from my assignment submission for simplicity purposes. I personally love these new features in java but the assignment does say it should be easily understandable by Junior developers and functional programming concepts aren't easy to grasp for someone who hasn't used it before.
What do you think? I think I could argue it either way in my choices.txt but I'd be interested in hearing some opinions on it.
If you decide not to use the new Java 8 APIs, I would definitely add this in choices.txt. Otherwise you risk losing points, because you didn't show good knowledge of the Java API as you didn't use it to its full extent.
If I were you I would simply use the new Java 8 APIs. There's no reason I can think of that would justify not to use them. If you currently are a junior developer, you have to know about functional programming concepts; otherwise within 2-3 years you won't have a job anymore. And if you have had a good education, students will nowadays have a good understanding about functional programming concepts when they graduate. But I would of course make sure the code is still simple and easy to understand. The Stream API relies heavily on method chaining which can result in complex and hard to understand code. So I would try to avoid code with a boatload of method chaining as it's getting complex and hard to understand
Hope it helps!
Kind regards,
Roel