c/c++ required?

Discussion in 'Java' started by jesse, Jan 4, 2004.

  1. jesse

    jesse Guest

    i'm interested in learning java because i want to move on from perl and php
    and general web applications like that. i read somewhere that, to learn
    java, knowing C and C++ is required.

    any feedback on that?

    - jesse
    jesse, Jan 4, 2004
    #1
    1. Advertising

  2. jesse wrote:
    > i'm interested in learning java because i want to move on from perl and php
    > and general web applications like that. i read somewhere that, to learn
    > java, knowing C and C++ is required.
    >
    > any feedback on that?
    >
    > - jesse
    >
    >


    http://java.sun.com/docs/books/tutorial/index.html
    Lee Yeow Leong, Jan 4, 2004
    #2
    1. Advertising

  3. jesse

    ak Guest

    > i'm interested in learning java because i want to move on from perl and
    php
    > and general web applications like that. i read somewhere that, to learn
    > java, knowing C and C++ is required.


    it is really better if you _don't_ know c and c++ before you start with
    java.

    ____________

    http://reader.imagero.com the best java image reader.
    ak, Jan 4, 2004
    #3
  4. jesse

    Sudsy Guest

    jesse wrote:
    > i'm interested in learning java because i want to move on from perl and php
    > and general web applications like that. i read somewhere that, to learn
    > java, knowing C and C++ is required.
    >
    > any feedback on that?
    >
    > - jesse



    I wouldn't go so far as to say REQUIRED. It can certainly help if you
    know C syntax as Java is almost indistinguishable from that (within
    methods, of course). And if you've got a sound basis in Object-Oriented
    programming from C++ then you're more than halfway there. That's a big
    IF, BTW. Estimates from companies like Forrester Research suggest that
    upwards of 70% of "C++ code" is actually procedural C.
    You could also just leap into learning Java and not have to worry
    about baggage from previous use of C/C++. Fewer bad habits to unlearn.
    Enjoy!
    Sudsy, Jan 4, 2004
    #4
  5. "jesse" <> wrote in message
    news:ayQJb.48079$...
    | i'm interested in learning java because i want to move on from
    perl and php
    | and general web applications like that. i read somewhere that,
    to learn
    | java, knowing C and C++ is required.

    No. To program C++ effectively you need to
    understand OO - same with Java.

    C ..C(?!) is not an OO language. I guess it
    would not be very helpful in learning Java.

    With either you would have to 'unlearn' bits
    of the C/C++ when coming to Java, so I
    see no advantage to learning them if you
    ultimately only want to code Java.

    OTOH, it can be very helpful to have several
    languages under your belt. It helps avoid the
    'this is the only language for the job' syndrome..

    [ Just a few ..meandering thoughts.. ]

    --
    Andrew Thompson
    * http://www.PhySci.org/ PhySci software suite
    * http://www.1point1C.org/ 1.1C - Superluminal!
    * http://www.AThompson.info/andrew/ personal site
    Andrew Thompson, Jan 4, 2004
    #5
  6. jesse

    J Guest

    On Sun, 4 Jan 2004 3:55:34 -0500, jesse wrote
    (in message <ayQJb.48079$>):

    > i'm interested in learning java because i want to move on from perl and php
    > and general web applications like that. i read somewhere that, to learn
    > java, knowing C and C++ is required.
    >
    > any feedback on that?
    >
    > - jesse
    >
    >


    It makes it esier for C/C++ programmers to learn java since the syntax is
    similar. However, you DON'T need c/c++ to understand java.

    Learn java should be easy from a perl background. But things are little more
    lower level than they are in perl.

    J
    J, Jan 5, 2004
    #6
  7. jesse

    Jorge Rivera Guest

    ak wrote:
    >>i'm interested in learning java because i want to move on from perl and

    >
    > php
    >
    >>and general web applications like that. i read somewhere that, to learn
    >>java, knowing C and C++ is required.

    >
    >
    > it is really better if you _don't_ know c and c++ before you start with
    > java.
    >

    Why? I don't think I could agree with that.

    > ____________
    >
    > http://reader.imagero.com the best java image reader.
    >
    >
    Jorge Rivera, Jan 5, 2004
    #7
  8. jesse

    Sudsy Guest

    Jorge Rivera wrote:
    > ak wrote:
    >> it is really better if you _don't_ know c and c++ before you start with
    >> java.
    >>

    > Why? I don't think I could agree with that.


    Because people can develop bad habits using these languages. And then
    they have the audacity to demand equivalent functionality in Java
    instead of "unlearning what they have learned" (Yoda paraphrased).
    I think that ak is right! It's better to come to the OO table with
    no preconceptions. Learn Java, find out what it can do and then
    learn further how to utilize it best.
    Generics are arriving in 1.5? Big deal! Kowtowing to the C++ crowd
    is not the way to improve the breed. If C++ was so great then why
    are the practitioners migrating to Java?
    I'm buttoning up my Nomex(tm) suit after that observation but I
    stand behind my aluminum-silicate brick wall on this one... ;-)
    Sudsy, Jan 5, 2004
    #8
  9. "Jorge Rivera" <> wrote in message
    news:pK5Kb.53489$...
    | ak wrote:
    | >>i'm interested in learning java because i want to move on
    from perl and
    | >> php
    | >
    | >>and general web applications like that. i read somewhere
    that, to learn
    | >>java, knowing C and C++ is required.
    ....
    | > it is really better if you _don't_ know c and c++ before you
    start with
    | > java.
    | >
    | Why?

    Look in this thread at the posts of Sudsy and myself.
    Keywords 'baggage' and 'unlearn'.

    | I don't think I could agree with that.

    Why?
    Andrew Thompson, Jan 5, 2004
    #9
  10. Jorge Rivera <> scribbled the following:
    > ak wrote:
    >>>i'm interested in learning java because i want to move on from perl and

    >> php
    >>>and general web applications like that. i read somewhere that, to learn
    >>>java, knowing C and C++ is required.

    >>
    >> it is really better if you _don't_ know c and c++ before you start with
    >> java.
    >>

    > Why? I don't think I could agree with that.


    Having to learn C or C++ before Java is the same as having to learn
    Fortran before C or C++, or having to learn Algol before Fortran, or
    having to learn machine code before Algol.

    --
    /-- Joona Palaste () ------------- Finland --------\
    \-- http://www.helsinki.fi/~palaste --------------------- rules! --------/
    "To err is human. To really louse things up takes a computer."
    - Anon
    Joona I Palaste, Jan 5, 2004
    #10
  11. In article <ayQJb.48079$>,
    "jesse" <> wrote:

    > i'm interested in learning java because i want to move on from perl and php
    > and general web applications like that. i read somewhere that, to learn
    > java, knowing C and C++ is required.
    >
    > any feedback on that?


    Not a chance. Knowing other languages always helps learn a new one, but
    there is no reason to spend time learning something other than your
    target.

    I knew them both, but I did paying work in Basic, Pascal, and FORTRAN as
    well. Knowing these others helped me learn Java just like knowing Perl
    and PHP will probably help you a lot.

    Scott

    Java, Cocoa, WebObjects, and Database consulting
    Scott Ellsworth, Jan 5, 2004
    #11
  12. Sudsy wrote:

    >
    > Jorge Rivera wrote:
    >
    >> ak wrote:
    >>
    >>> it is really better if you _don't_ know c and c++ before you start with
    >>> java.
    >>>

    >> Why? I don't think I could agree with that.

    >
    >
    > Because people can develop bad habits using these languages. And then
    > they have the audacity to demand equivalent functionality in Java
    > instead of "unlearning what they have learned" (Yoda paraphrased).
    > I think that ak is right! It's better to come to the OO table with
    > no preconceptions. Learn Java, find out what it can do and then
    > learn further how to utilize it best.
    > Generics are arriving in 1.5? Big deal! Kowtowing to the C++ crowd
    > is not the way to improve the breed. If C++ was so great then why
    > are the practitioners migrating to Java?
    > I'm buttoning up my Nomex(tm) suit after that observation but I
    > stand behind my aluminum-silicate brick wall on this one... ;-)
    >


    I have to agree with you. I learned c/c++ first, and I had hard time to
    understand java in the first place. Now it is the oposite!
    Manolis Christodoulou, Jan 5, 2004
    #12
  13. jesse

    Tim Ward Guest

    "Scott Ellsworth" <> wrote in message
    news:...
    >
    > Not a chance. Knowing other languages always helps learn a new one, but
    > there is no reason to spend time learning something other than your
    > target.


    After some mistakes with hiring some people who only understood high level
    languages and hadn't a clue how a computer actually worked I've taken to
    being very reluctant to hire someone who's never written assembler. They
    don't have to have done much work in assembler, just a college course will
    do, but that's enough to give them a clue why similar looking lines of high
    level code might have a factor of 1,000 difference in execution times.

    Really one might prefer only to hire people who've written compilers, but
    that's a bit like wanting to hire programmers only if they've got a
    touch-typing qualification - there aren't enough around.

    --
    Tim Ward
    Brett Ward Limited - www.brettward.co.uk
    Tim Ward, Jan 6, 2004
    #13
  14. jesse

    Loco Pollo Guest

    "Tim Ward" <> wrote in message news:<bte197$674ou$-berlin.de>...
    > "Scott Ellsworth" <> wrote in message
    > news:...
    > >
    > > Not a chance. Knowing other languages always helps learn a new one, but
    > > there is no reason to spend time learning something other than your
    > > target.

    >
    > After some mistakes with hiring some people who only understood high level
    > languages and hadn't a clue how a computer actually worked I've taken to
    > being very reluctant to hire someone who's never written assembler. They
    > don't have to have done much work in assembler, just a college course will
    > do, but that's enough to give them a clue why similar looking lines of high
    > level code might have a factor of 1,000 difference in execution times.
    >
    > Really one might prefer only to hire people who've written compilers, but
    > that's a bit like wanting to hire programmers only if they've got a
    > touch-typing qualification - there aren't enough around.


    depends on what your doin. if your just writing front ends for
    database apps it really doesn't matter how efficient your code is. any
    modern machine will have minimal impact based on code(unless your
    really really bad about it). whats important is your understanding of
    sql and making your code easy to read and modify. but yeah when you
    deal with high level languages you get spoiled and don't bother with
    exactly how many lines a function will execute.

    question is how much does this matter when your just writing a java
    applet that'll end up runnin locally on someone's machine and whether
    the performance difference will make up for the cost of not being able
    to come up with a solution quickly and under budget. not to mention
    the cost of modifications in the future.
    Loco Pollo, Jan 6, 2004
    #14
  15. Hi!

    Sudsy wrote:
    > If C++ was so great then why
    > are the practitioners migrating to Java?


    Tell me why linux is not implemented in Java? It would be one Java for
    all platforms... ;)

    Java is completely different from C++. Java is generic and C++ is efficient.

    I still like C++ more than Java, because Java is not as mature as C++
    yet. Java is somewhat limited in its syntax (e.g. operators cannot be
    overloaded).

    Frank
    Frank Birbacher, Jan 6, 2004
    #15
  16. In article <bte197$674ou$-berlin.de>,
    "Tim Ward" <> wrote:

    > "Scott Ellsworth" <> wrote in message
    > news:...
    > >
    > > Not a chance. Knowing other languages always helps learn a new one, but
    > > there is no reason to spend time learning something other than your
    > > target.

    >
    > After some mistakes with hiring some people who only understood high level
    > languages and hadn't a clue how a computer actually worked I've taken to
    > being very reluctant to hire someone who's never written assembler.


    For me, this is more a question of experience. Someone with a lot of
    experience has almost always had to delve into the machine pretty deeply
    on at least one occasion. Junior employees, on the other hand, may not
    have.

    I have found profilers to be my watershed question. If someone has used
    one, and understands the "premature optimization is the root of all
    evil", especially why it is evil and why premature is such an important
    word, then they probably understand just how things can differ.

    Heck, asking the loaded question "I am told that my matrix factorization
    routine runs 100x more slowly on one machine than another. Where to
    begin hunting down the problem?" will often tell me a great deal about a
    candidate. If he knows to ask whether it uses a square root, then
    points out that on G3 and G4 architectures, the square root fn was in
    software, he gets extra points, but merely considering that
    architectures differ is a good start.

    > They don't have to have done much work in assembler, just a college
    > course will do, but that's enough to give them a clue why similar
    > looking lines of high level code might have a factor of 1,000
    > difference in execution times.


    My experience says that anyone who can haul out a profiler gets the low
    level understanding points. I do not do embedded systems, though, where
    even C can be too high level, and the best coders write code that is
    several orders of magnitude faster and somewhat smaller to boot than
    that written by the also rans.

    > Really one might prefer only to hire people who've written compilers, but
    > that's a bit like wanting to hire programmers only if they've got a
    > touch-typing qualification - there aren't enough around.


    Heh. I know what you mean. When I was a wee college lad, I skipped the
    formal compiler design course, figuring I would not need it. I then got
    to pick it up from the dragon book and a lot of sweat when I was put in
    charge of implementing a matrix language for a client.

    Scott

    Java, Cocoa, WebObjects and Database consulting
    Scott Ellsworth, Jan 6, 2004
    #16
  17. jesse

    Sudsy Guest

    Loco Pollo wrote:
    > depends on what your doin. if your just writing front ends for
    > database apps it really doesn't matter how efficient your code is. any
    > modern machine will have minimal impact based on code(unless your
    > really really bad about it). whats important is your understanding of
    > sql and making your code easy to read and modify. <snip>


    You wouldn't make many DBAs happy with that attitude. No matter how
    sophisticated the tools, it's STILL possible to come up with horribly
    inefficient SQL. Have you not heard stories about 1,000 fold (or more)
    performance improvements from simply rewriting queries?
    That's why I'm frightened by providing ad hoc query capabilities to
    the users. Programmers who don't understand and appreciate the schema
    can be just as dangerous.
    While YOU might not care that a query takes five seconds to complete,
    your users might well be expecting sub-second response times. And if
    you're dealing with a web application then you'd better be working
    hard at squeezing the last iota of performance out of your servers
    before 10,000 people start simultaneously hitting them.
    Sorry, but the old "throw more hardware at it" argument still doesn't
    hold water.
    Sudsy, Jan 6, 2004
    #17
  18. jesse

    Sudsy Guest

    Frank Birbacher wrote:
    > Hi!
    >
    > Sudsy wrote:
    >
    >> If C++ was so great then why
    >> are the practitioners migrating to Java?

    >
    >
    > Tell me why linux is not implemented in Java? It would be one Java for
    > all platforms... ;)


    It's not implemented in C++ either... ;-)

    > Java is completely different from C++. Java is generic and C++ is
    > efficient.


    Recent benchmarks on the server side suggest that there is only
    ~2% performance penalty for using Java.

    > I still like C++ more than Java, because Java is not as mature as C++
    > yet. Java is somewhat limited in its syntax (e.g. operators cannot be
    > overloaded).
    >
    > Frank


    Thank you for illuminating two points:
    - you're posting to a Java newsgroup, yet
    - Java is limited because it doesn't offer operator overloading

    Perhaps move the discussion to one of the advocacy groups or to
    comp.lang.c++ and denigrate Java some more. Your choice.
    Sudsy, Jan 7, 2004
    #18
  19. Hi!

    Sudsy wrote:
    > Thank you for illuminating two points:
    > - you're posting to a Java newsgroup, yet
    > - Java is limited because it doesn't offer operator overloading
    >
    > Perhaps move the discussion to one of the advocacy groups or to
    > comp.lang.c++ and denigrate Java some more. Your choice.


    I just said I like C++ more than Java. I didn't say Java was crap. I
    like Java, too. And I gave reasons for my opinion. Did I do something wrong?

    Frank
    Frank Birbacher, Jan 7, 2004
    #19
  20. jesse

    Tim Ward Guest

    "Frank Birbacher" <> wrote in message
    news:btgqsc$78d5a$-berlin.de...
    >
    > I just said I like C++ more than Java. I didn't say Java was crap. I
    > like Java, too. And I gave reasons for my opinion. Did I do something

    wrong?

    Yes. On this newsgroup some people don't make you welcome unless you say C++
    is crap.

    --
    Tim Ward
    Brett Ward Limited - www.brettward.co.uk
    Tim Ward, Jan 7, 2004
    #20
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Mark Kamoski
    Replies:
    7
    Views:
    8,611
    Mark Kamoski
    Aug 9, 2003
  2. Dinesh Upare

    help required urgent

    Dinesh Upare, Aug 13, 2003, in forum: ASP .Net
    Replies:
    1
    Views:
    993
    Carl Prothman [MVP]
    Aug 13, 2003
  3. Avi
    Replies:
    0
    Views:
    441
  4. Rashmi Panduranga

    link required

    Rashmi Panduranga, May 5, 2005, in forum: ASP .Net
    Replies:
    1
    Views:
    522
    Thomas Scheidegger [MVP]
    May 6, 2005
  5. Just D.
    Replies:
    0
    Views:
    432
    Just D.
    Mar 10, 2006
Loading...

Share This Page