| ▲ | cynicalsecurity a day ago |
| Why did it suck exactly? |
|
| ▲ | riffraff a day ago | parent | next [-] |
| The goal is go make java easier to learn for people new to programming. When they start with the old style there is an overload of concepts where the teacher just have to say "ignore all this", which is not ideal. With new style they grasp fewer concepts at first. I'm not truly convinced this is such a big deal, but I lived through my university switching from Pascal to Java in the first programming class, and I can confirm people did get much more confused during the first few classes (to be fair they got way less confused later not having to deal with pointers tho). |
| |
| ▲ | thefz 18 hours ago | parent [-] | | > The goal is go make java easier to learn for people new to programming. "public static void main (String[] args)" teaches A LOT if one takes the time to inquiry about every keyword in there. | | |
| ▲ | riffraff 2 hours ago | parent [-] | | Yes, but not all of that you want to learn on your first day learning to code. |
|
|
|
| ▲ | olalonde a day ago | parent | prev | next [-] |
| Excessive boilerplate code. |
|
| ▲ | thefz 18 hours ago | parent | prev | next [-] |
| Some people have so much time or so few things to do during the day that they can write a blog post about meaningless programming languade aestheticisms that only other frivolous people will understand and enjoy. |
|
| ▲ | hdjrudni a day ago | parent | prev [-] |
| That's what I wanted to know too, but all we get is this one line: > 1: When I was a Freshman in High School I asked a Junior what it meant. He had no clue. OK... so it's confusing for juniors. A lot of stuff is. I probably didn't know what it all meant when I started either, but so what? You copy and paste it and move on. Eventually it makes sense. Not a big deal. |
| |
| ▲ | _moof a day ago | parent [-] | | I don't understand how anyone ever didn't know what this meant. You have a class. It has a static method. The runtime starts your program by calling the method, passing it an array of command-line arguments. What's mysterious about this? | | |
| ▲ | hmry a day ago | parent | next [-] | | The fact that you have to explain what classes are, and what static methods are, a huge load of information, for a hello world program. And what's worse, it will leave students rightly confused about what the point of the class is, if it only has static members... Making it more likely they don't retain any of the information. Or alternatively, just say "type it exactly like this, don't think about what the magic words mean" which is a great way to ruin programming for people | |
| ▲ | maxlybbert a day ago | parent | prev | next [-] | | The first book I read on Java managed to explain "public static void main(String[] args)" by the end of the first chapter. It wasn't a long chapter, either. I don't like Java, and the excessive boilerplate is a big part of that opinion. But it was never nearly as arcane as some people here are making it. | |
| ▲ | antonvs a day ago | parent | prev | next [-] | | When you first learn programming, you don't know what a class is, or a method, let alone a static method. But if you teach people using Java, you have to teach them to write this: public class Main {
public static void main(String[] args) {
System.out.println("Hello world");
}
}
...instead of just: print "Hello world"
The latter is easy for a student to understand. With the former, you just have to tell them to use it without understanding it, and that they'll understand it later. | |
| ▲ | GaggiX a day ago | parent | prev [-] | | Why there is a class in the first place |
|
|