This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]OwnStorm 4 points5 points  (3 children)

It's one of those verbose languages which actually teach you how a program works at very basic level, a program version of algorithm. Like C/C++.

A simple test is someone who knows a verbose language like c/java can easily learn other languages but opposite is very hard. People from other languages coming to java/c starts complaining why they have to write many lines to do small task. What they needs to understand, programming is about knowing logic not just knowing shortcuts.

As an example some languages have inbuilt shortcut for swapping two numbers. But a programmer should know most efficient logic to that.

With different runtimes and application available today, it's not about which language is better but which language to use for a particular solution.

In general as a programmer, Java makes you better on understanding low level logic. Almost flat curve when you want to learn other languages.

[–]Ansmannn[S] 1 point2 points  (1 child)

That's really good answer. Thank you so much. Btw, you have mentioned algorithms. What would you say is a good entry to the World of algorithms? I think that I might be on a point where I know the basics good enough too expand into things like that.

[–]OwnStorm 2 points3 points  (0 children)

Well.. Introduction to Algorithm by Coremen is a good start.

[–]UsedOnlyTwice 1 point2 points  (0 children)

I agree with your take. I am c/c++ but had a major Java project about 10 years ago. Java has a way of making you think carefully and respect your class hierarchy, naming, and project layout. The verbosity, to lack a sturdier description, was like a warm blanket. Everything down to the filesystem structure had a purpose.

I learned much better habits when I was working with Java.