21
FredCpp
8y

Started learning Java, already hate it....

Comments
  • 12
    Meh. Are you one of those JavaScript devs trying to learn a real programming language? :/
    Java is beautiful, trust me. Stick with it for a couple of months. Go through all those painful sleepless nights it gives you. You *will* fall in love with it.
  • 0
    @crearo sure you'll love it. The same way as Java loves urls or other normal things every normal language handles in a non-retarded way.

    \_(~„~)_/
  • 2
    @crearo Falling in love with it might be a bit of an overstatement (coming from a truly beautiful language: C# ;) ) but it is definitely quite amazing once you get to know it.
  • 1
    There's a free course on udemy called ' Become an android developer from scratch '
    Explains Java , then XML
    You can learn only Java from itif you want , or Java & XML too.
  • 3
    What are the reasons behind your hate if you don't mind me asking? Or are you just joining the hate train? 🚂
  • 3
    @LucaScorpion Everyone has their own definition of beautiful language
  • 1
    @tahnik I know, that part was just kidding ^^
  • 3
    @KeyWeeUsr we meet again! What does java handles in a retarded way?
  • 0
    It is a bit hard to get started, but keep going. You'll be glad you did.
  • 1
    @tahnik Hehe, I know. https://mobile.twitter.com/eviltrou... https://m.reddit.com/r/programming/...

    The first is the "url" explained. It's still in Java 8 or what's the version now. It's more confusing than pointers to a person who's never even seen code.

    The fact that the code is in so many files I wouldn't be surprised if each function was in a separate file in the future.

    Compile once, rune everywhere? Please... Nowadays there's either interpreter which if is on the desired platform then the code will run in the same shape or there's a framework which does a similar thing. Java screw this one majestically.

    And the rest is in the reddit page.

    Personally I hate java for: repetitiveness, for many students it's the first language (which brings a confusion when learning another lang and that java hype train), some companies in the past chose the lang for production and are still on that hype train.
  • 4
    @KeyWeeUsr That's just one problem. Even that can be fixed using the right library.

    Do you mean Java versioning is confusing? I don't know how simple it can be other than 1 2 3 4 ... 8

    The code is in different files? If you don't like it being in different files why don't you just have a single file and write all the functions in it?

    And why an interpreter if you can use the JVM to run the software everywhere? I get it, JVM is slow to start. But once it starts it is as fast as any other language.

    Again, any language has it's pro and cons. What language do you like? I am pretty sure you'll be able to find out a list like that in reddit for it.

    And what is wrong with most of the students learning Java as their first language!
  • 4
    @KeyWeeUsr As for your companies choosing Java, it's really hard to find a language other than Java for enterprise level software. I code in C++ in a company which serves their machines over 140 countries and trust me, understanding a C++ code is far more difficult than Java.

    In case you want to know, C++ is the first language I learned.
  • 1
    @tahnik The point about the files isn't that I'm not able to put everything into one file, but that the community behaves this way so most of the projects I've seen with java had like maximum of class per file if not less. So learning more and trying to tweak the code changes to "oh, let's google which file has this class of a single behavior", not to mention that in e.g. github you can't look for an exact string, so if the project is big, you're pretty much screwed.

    What? No, I just couldn't remember the actual version and with pressing home button I'd probably crash my devrant app (not sure why, sometimes it just crashes) :D

    Of every lang has pro/con, but I just wrote why I hate java and that there is a pile of issues though the hype train fancies the motto "compile once, run everywhere". I like Python and C, but mostly Python (it's quicker for coding)
  • 1
    @tahnik: Of course C++ is difficult *insert Ben Parker's quote*, but that's why a lot students learn it and stay with it. And if companies require it, that means a lot of legacy code in old Java. For what I've seen of older software written in Java, it looks shaggy and poorly made. Many people chose Java because it's easier than C++ but that's a poor excuse. If you are a company which develops a poorly made software (no matter if Java), it's about time to start thinking more with head, not with the wallet and go against the hype current if it means a harder language will give you much better results.
  • 4
    @KeyWeeUsr I never said our software is poorly made. I said it's harder to understand what's going compared to java codes. Our software is written in C++.

    Modular code is one of the best part of java. Everything is divided making it modular enough to develop individual component without having to disturb other components.

    You are not supposed to find behaviour by looking at files. JavaDoc is another strong point for Java and if the community project is not using it then it's their fault.

    You said "old software written in Java". People abused Java a lot considering how popular it was. Java had it's problem but came a long way since then.

    Now that you've said you like python, I kind of understand your hatred towards Java. I am guessing you like shorter codes with less modularity and files. But in reality it's different. Large scale software using python is really difficult. This is where Java or C# shines.
  • 1
    @tahnik I didn't mean to exactly say you and your company, I was targeting all companies with such behavior (mostly I just sound offensive or something) ^^

    This is in python too, yet not in an extreme way. If you code in python, you'll know what I mean. However I must disagree, because how do you want a new user to learn how the code works? By reading it. If you have so many files for simple stuff then there's a problem though I have an experience of Java-people not seeing it.

    Hehe, so you know what I'm talking about at least a little bit :P

    In python there's a well written text https://python.org/dev/peps/... and it applies to a lot of langs, though there are some differences about flattness and explicitness, but mostly - if the code is simple, on one known place and readable, it's win-win for devs and beginners.

    It's quite ironic I like C# (Unity mostly) and Java I hate, but then again, Java seems to me like highly stripped C++ and C# like corrected Java. _(._.)"_
  • 5
    @KeyWeeUsr I feel like we both like two different languages for two different reasons.

    While you like beginner friendly codes with less complications, I like enterprise codes with modularity.

    The difference is I'm not hating python because of it's beginner friendly structure but you are hating java because of it's organisation oriented design.

    This is one of the core reason I don't get the hate towards Java. Many people fail to understand that aim of java completely. The moment it came out most of the big companies took it immediately because...it was made to scale and stay modular at the same time. And it succeeded in that. Google is using Java for their android UI and IBM is using java in their Watson AI.

    While it might not be exactly beginner friendly or small community projects friendly it definitely stays as one of the top choices for enterprises.
  • 4
    @KeyWeeUsr I didn't used C# extensively so I won't comment on that. It felt extremely similar to me, so Java being open source and cross platform kind of made me lost interest in it. I don't want to be constrained by Microsoft .NET
  • 0
    @tahnik I know :D But it's not I hate organised code, no. If I let the repetitiveness go, I hate the mess which happens to be "modular". You can't treat everything as a module. What's the point of modules if everything is a module then?

    However, ok, let's have modularity until it's really messy. It's nothing bad on modular code - if each module is maintained, tested and secure, because well... companies such as banks most likely use at least a piece of Java too.

    But in the real world, there's no perfect code, nothing is idiotproof and to imagine other devs, mainly new devs come and have to maintain the code(everyone loves that) while that code drives bank operations in the background... I have a trust issue for that modularity.

    I'm not saying let's base e.g. the mentioned bank IS on node js, go or python, but treating the whole code "the Java way" isn't the best idea either. For present use, I dunno. For future use? Definitelly no. Code grows rapidly, the responsibility even more.
Add Comment