Ranter
Join devRant
Do all the things like
++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatar
Sign Up
Pipeless API
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
Comments
-
TeachMeCode5175280dIt doesn’t. Neither does any other language. Shit devs can write bad code in any language
-
Lensflare17095280d@TeachMeCode yeah but some languages make it more easy to write shit code than others.
-
AleCx0428240279d@Lensflare we have ValueType albeit it is newer, not a clue what NRE means, not sure what is wrong with callback based concurrency as a whole nor why its object oriented approach would be bad.
I would rather deal with Java or C# projects than many other things as they are in the wild. But that is just me tho. I like strictness, what I do dislike is over engineered shit, which does lends itself to the two languages I mentioned rather frequently -
AleCx0428240279dnot a clue, pays the bills and does what I want it to do. Has libraries or frameworks for damn near everything.
So do many other languages for that matter. Say no to being a neckbeard lads, languages are just tools. As long as they are not TCL or bash then everything is good -
netikras35196279d@Lensflare what's NRE? Missspelled NPE? If so - I don't see how that's different from unassigned refs in other languages
what's a custom value type? Isn't a custom class a custom type...? -
Lensflare17095279d@netikras NullReferenceException. Sorry I was confusing it with how it’s called in C#. Java calls it NPE, even though it uses references and not pointers 🤡.
Look at how Kotlin, Swift or Rust solved it.
C# tried but failed because it was too late in its development.
A class lets you define a custom type but it’s a type with reference semantics. C# has structs which have value semantics. In java you only have primitive types which have value semantics and you can‘t define your own (custom). -
Lensflare17095279d@AleCx04 see previous post for NRE and custom value types.
Callback based concurrency is archaic. There are much better solutions in other languages now. Like async/await and structured concurrency. The advantages are obvious: Less nesting (no callback hell), more safety (can‘t forget to handle or provide a callback), more clarity (easier to reason about the code)
Obsession with OOP:
Everything must be a class or an instance of a class: Callbacks, enums, annotations, everything. This is just too much boilerplate, especially for callbacks. Java clearly tries to make you use OOP wherever possible. But sometimes OOP is not the best tool. So it’s better to be more general like C#, Kotlin, Swift, Rust, … -
Lensflare17095278d@AleCx04 I have to disagree. Mostly objective shortcomings. OOP obsession maybe being the single exception and actually a preference. Maybe.
-
retoor11893276dI'm on my way to a Java gig. The spring tutorial says enough why it sucks - all that freaking work including xml for a freaking endpoint?
Edit: but I won't do lame webstuff. I turnover millions worth of recycling monehh weekly with this project
why java sucks?
random