PUBLIC STATIC VOID MAIN STRING ARGS
Technology
This is a most excellent place for technology news and articles.
Our Rules
- Follow the lemmy.world rules.
- Only tech related content.
- Be excellent to each another!
- Mod approved content bots can post up to 10 articles per day.
- Threads asking for personal tech support may be deleted.
- Politics threads may be removed.
- No memes allowed as posts, OK to post as comments.
- Only approved bots from the list below, to ask if your bot can be added please contact us.
- Check for duplicates before posting, duplicates may be removed
Approved Bots
INT MAIN INT ARGC CHAR POINTER ARGV ARRAY BODY
you know how it goes
Say it with me:
PUBLIC STATIC VOID MAIN STRING ARGS
PUBLIC STATIC VOID MAIN STRING ARGS
As of java 21, you can actually just use:
void main()
You'll definitely get to use Java 21 in whatever job you get.
It feels like some arcane spell when you first learn it, but once you are familiar with Java, each token in that declaration feels totally justified. Like yeah, the args are an array of strings. Yeah, the main function needs to be static and public. Yeah, it doesn't return anything inside the JVM, so it's void.
The world can be so cruel.
“Python::The” That looks like Perl tho.
Back when I was in school, corporal punishment was the norm. I would still prefer that over Java.
We get it, you have no idea what modern Java looks like
I know exactly what modern Java looks like, and it could be beautiful. But… legacy cruft and lazy devs make it painful. And tech debt, let’s be honest.
I’d view a greenfield project rather differently, but those are unicorns.
I’d view a greenfield project rather differently, but those are ~~unicorns~~ written in Kotlin.
I get it, you have no idea what trying to optimize around an ever-changing JIT recompiler looks like
It looks like something that doesn't happen
Found the guy thinking java can be as fast as C/C++
The just-in-time compiler isn't bad, but the rest of it is. An optimized hot loop has the potential to emit better instructions than a C/C++ compiler not using PGO, but you're never going to see that in any real workload.
If you could rip out/avoid the garbage collector, give it the ability to use escape analysis to avoid heap-allocating every single object, and prevent it from implicitly making every function virtual, then maybe. But at that point, you might as well just a different language.
Ha I love it when I'm right 😁😉
There's a difference between the JIT being able to emit better native code than an unguided compiler, and the language being as performant as another language. Java is never going to be as fast as C or C++, and that's something you can blame its design for.
They traded speed for safety, that's why, not something right or wrong that you should "blame" anything for IMO.
Kids in Asia are way ahead of that. Some countries have had programming on their curriculum for more than a decade
I had programming (Pascal) in school in a random-ass country in Europe 20 years ago (I was like 14).
This has been widespread all over the world for a long time.
At 14 I could barely get a for loop and if statement working properly. Pascal then VB for me, once a week for 2 years. Only really started programming in uni. Some Asian countries start in primary school at as early as 3 years old. It's as important as languages to them. By 14 they're already doing robotics and writing social media clones.
We are quite far behind in the west.
Java... I started with Java myself when I was a teen. It's not a good idea.
I think Java is still a good language for beginners. The tooling around it is really good and it catches lots of issues at compile time.
I'd recommend Python or JavaScript to beginners. Also, Java is dying out right now.
I seriously don't get why Python is so popular for learners. Its a weird ass very isolated language syntactically. The libraries for it are great but still.
JavaScript sometimes can be weird as hell. That's why I prefer Python. I don't know, for me it seemed logical from the beginning. Java definitely ain't better.
Because it dared to change the shitty syntax of bad syntax languages so humans can actually read it.
"Java is dying" is what people who've never actually worked as a dev for a big company think.
The company I work at is currently replacing all of their legacy Java shit with Go
You say legacy code?
Java is absolutely not dying... unfortunately. Billions of people depend on spaghetti code written by corporations every day. I think Java will be the next COBOL. It won't die and it's unfortunate.
Java is a great language. Still one of the most used languages in the world. Ditto python
Java is a good language if you're a beginner, but if you've already coded before in other languages, it's going to suck.
Especially for beginners its a bad language. You have the understand artificial concepts about classes, objects, abstract states before you re able to learn the important stuff like if/else, looping etc pp.
I would always give beginners a language which is at least in their way as possible.
They should've just picked Kotlin.
It also encourages good basic habits, such as not making a variable mutable unless you specifically need to (val
is way more common than var
, the IDE makes them very visually distinct).
Why after school? I was able to take programming classes in highschool in 2010. In the us
2002, but it was Visual Basic. I got a fucking C in that class because I spent more time helping other kids figure out the assignment than spending time putting worthless clutter in my interfaces to the teachers standards.
Oh well. At least I learned how to write a GUI to track the hackers IP address.