Why does Java suck so much?

Discussion in 'Programming & Software Development' started by one4spl, Jun 13, 2008.

  1. Semi-Evolved

    Semi-Evolved Member

    Joined:
    Aug 11, 2003
    Messages:
    7,089
    Location:
    Brisbane
    Perhaps you could detail which capabilities in particular you're talking about that C++ makes harder than it "should" be.

    The unfeasible capabilities that I mentioned are the likes of explicit memory management in C/C++; adding more control and flexibility than a comparable managed language is by definition going to add complexity. That's a worthwhile tradeoff for me.
     
    Last edited: Jun 23, 2008
  2. Luke212

    Luke212 Member

    Joined:
    Feb 26, 2003
    Messages:
    10,058
    Location:
    Sydney
    well using your example, the default behavior for c# is automatic memory management. But by overriding the default behaviour you can access & and * functions (the 'unsafe' modifier). So the functionality is there to use, but it is transparent to the programer until required.
     
  3. cyclonite

    cyclonite Member

    Joined:
    Mar 7, 2002
    Messages:
    824
    Location:
    NSW 2009
    Because phone's run crap OSes with little protection or partitioning. So they figure if they just add a Java VM they can add "Ability to run arbitrary user code" to the list of features on the phone. There's a reason Apple is *tightly* controlling what can/can't go in the AppStore on the iPhone!
     
  4. phreeky82

    phreeky82 Member

    Joined:
    Dec 10, 2002
    Messages:
    9,696
    Location:
    Qld
    I haven't really been following, but when did C# come up? C++ is not C#.
     
  5. Luke212

    Luke212 Member

    Joined:
    Feb 26, 2003
    Messages:
    10,058
    Location:
    Sydney
    its an example of why c++ is harder than it had to be.
     
  6. phreeky82

    phreeky82 Member

    Joined:
    Dec 10, 2002
    Messages:
    9,696
    Location:
    Qld
    It sounds like you're trying to say that all languages should provide all this auto memory management/garbage collection stuff????
     
  7. Luke212

    Luke212 Member

    Joined:
    Feb 26, 2003
    Messages:
    10,058
    Location:
    Sydney
    yes by default, and allow alternative operation on a per object basis, on demand. that would be ideal.
     
  8. phreeky82

    phreeky82 Member

    Joined:
    Dec 10, 2002
    Messages:
    9,696
    Location:
    Qld
    Spent your whole life living in a cushioned garbaged collection world have you?

    How about you write me a boot management application. Or a device driver. Or some embedded application software. Or some other ultra-performance critical system. And then tell me you still want memory management all over the place.

    I can see its merits, and in the world of typical desktop applications I will never argue its use. But when you write low-level code, or you push the CPUs limits, and so on, then it simply doesn't belong.
     
  9. Luke212

    Luke212 Member

    Joined:
    Feb 26, 2003
    Messages:
    10,058
    Location:
    Sydney
    naturally, so you overide the default behaviour. the only thing im arguing is that c++ is harder than it should be.
     
  10. phreeky82

    phreeky82 Member

    Joined:
    Dec 10, 2002
    Messages:
    9,696
    Location:
    Qld
    What is harder about it? The fact that you know something else better?

    Java is hard to somebody who has written C++ their whole life and never used Java. C++ can have garbage collection if it's needed too btw, if that's what you're saying makes it harder: http://www.research.att.com/~bs/bs_faq.html#garbage-collection
     
  11. Luke212

    Luke212 Member

    Joined:
    Feb 26, 2003
    Messages:
    10,058
    Location:
    Sydney
    its more work and more things to know. its harder!

    I know exactly where youre coming from but please stop pushing your favourite language for arguments sake.
     
  12. phreeky82

    phreeky82 Member

    Joined:
    Dec 10, 2002
    Messages:
    9,696
    Location:
    Qld
    I don't agree. It's different and unfamiliar to you, so you think it's harder.

    I'm not, I rarely use C++ anymore anyway as believe it or not I do most of my desktop dev work in C#, a little in Java, and heaps of web stuff in PHP.
     
  13. Bradzac

    Bradzac Member

    Joined:
    Aug 17, 2003
    Messages:
    1,744
    Horses for courses. Being more prone to human error != harder to understand or learn.

    But hey... ignorance is bliss right?

    If low level concepts are too difficult to wrap your head around then I'm going to go out on a limb here and say you'd be a mediocre developer at best when you come to the peak of your career.
     
  14. Luke212

    Luke212 Member

    Joined:
    Feb 26, 2003
    Messages:
    10,058
    Location:
    Sydney
    i disagree. business knowledge, communication skills and problem solving will make a better programmer than low level concepts.

    programming is leading towards higher level tools. abstraction and layering means we dont have to concern ourselves with the low levels. I for one do not want to be the sewage worker of programmers. I want to be the CEO.
     
  15. Luke212

    Luke212 Member

    Joined:
    Feb 26, 2003
    Messages:
    10,058
    Location:
    Sydney
    its more work and more things to know. its harder!
     
  16. phreeky82

    phreeky82 Member

    Joined:
    Dec 10, 2002
    Messages:
    9,696
    Location:
    Qld
    Good luck on becoming CEO, but with your attitude I hope it's not a business I'm involved in.
     
  17. RnR

    RnR Member

    Joined:
    Oct 9, 2002
    Messages:
    16,573
    Location:
    Brisbane
    Bjarne Stroustrup, the author of C++ agrees with you. Sometime ago he stated, "Within C++, there is a much smaller and cleaner language struggling to get out.". Later he said, "And no, that smaller and cleaner language is not Java or C#.".
     
  18. Luke212

    Luke212 Member

    Joined:
    Feb 26, 2003
    Messages:
    10,058
    Location:
    Sydney
    I dont think you understand programming!
     
  19. Bradzac

    Bradzac Member

    Joined:
    Aug 17, 2003
    Messages:
    1,744
    No that would make you a better analyst. Low level concepts are very important to know if you want to do anything more than a trivial implementation.

    You would make a great CEO for a marketing company.
    How on earth can you honestly say that, yet actually believe it too?! You need an IDE and Framework to hold your hand with everything you do.
     
    Last edited: Jun 23, 2008
  20. Kabal

    Kabal Member

    Joined:
    Aug 1, 2001
    Messages:
    1,045
    Location:
    Melbourne
    C++ can be quite simple .. but can also be pretty ridiculous and there is way too many ways to shoot yourself in the foot if you don't know exactly 100% what you are doing - and most people don't. Even if you think you do, you probably don't.

    If you look at something like QT, they limit themselves to a subset of C++ and its actually quite pleasant to use. Things like the Boost library can make it easier too, but the syntax can get revolting, and theres still too many landmines to dodge :)
     

Share This Page

Advertisement: