Welcome to the Java Programming Forums


The professional, friendly Java community. 21,500 members and growing!


The Java Programming Forums are a community of Java programmers from all around the World. Our members have a wide range of skills and they all have one thing in common: A passion to learn and code Java. We invite beginner Java programmers right through to Java professionals to post here and share your knowledge. Become a part of the community, help others, expand your knowledge of Java and enjoy talking with like minded people. Registration is quick and best of all free. We look forward to meeting you.


>> REGISTER NOW TO START POSTING


Members have full access to the forums. Advertisements are removed for registered users.

Results 1 to 17 of 17

Thread: Anybody recommends good Java books (up-to-date)

  1. #1
    Junior Member
    Join Date
    Jul 2014
    Posts
    10
    Thanks
    5
    Thanked 0 Times in 0 Posts

    Default Anybody recommends good Java books (up-to-date)

    Hello all.

    I am a totally new programmer to Java. In fact, as a computer scientist, Java is an essential part of programming. I plan it as my secondary, if not primary, language. I only know Assembly and Python fully, and Python isn't as powerful as Java or C, and it isn't as much as OOP as Java/C. Now, I want to enhance my Java. I've read a few hundred pages of Headfirst Labs : Headfirst Java, and it's for Java 1.5 (i.e. not for 1.8, the latest, and as the Pragmatic Programmer says, we should update our knowledge as technology evolves.), so I've two questions.

    Can "outdated" knowledge be improved if I understand all of its concepts? If I complete the Headfirst Java book, will I be able to understand its newer version in three days or less? If no...
    Can you refer me good, in-depth, critically acclaimed books? Please refer me some books that are up-to-date, and although the entertaining style of Headfirst is preferred, it is not required (obviously, since Headfirst is the only non-serious-serious tech book)


  2. #2
    Member Ada Lovelace's Avatar
    Join Date
    May 2014
    Location
    South England UK
    Posts
    411
    My Mood
    Angelic
    Thanks
    27
    Thanked 61 Times in 55 Posts

    Default Re: Anybody recommends good Java books (up-to-date)

    C is not OOP - neither is C++ really, C uses structured concepts
    and C++ does use OOP but is a multi-purpose language, allowing
    the programmer to write in procedural or OOP way. Objective-C
    is more of a OOP language.

    Anyway to your actual question - it is absolutely fine to learn from
    Head First Java - as all concepts covered are also in Java 6, 7 and 8.
    Very few additional Java features are added to each revision of the
    language, and the ones that are will not really effect the standard
    core of the language syntax. However, anything below standard 4
    is considered outdated by today's standard.

    Most textbooks available today are mostly up to date and support
    Java 6, 7 and or 8. Your overall knowledge will expand as you delve
    deeper into the language and learn about new and exciting concepts.
    You can never have too much knowledge in a language, and I do not
    believe James Gosling would be able to remember the entire language
    off the top of his head without a reference book

    Keep working hard and Good luck

    Wishes Ada xx
    If to Err is human - then programmers are most human of us all.
    "The Analytical Engine offers a new, a vast, and a powerful language . . .
    for the purposes of mankind
    ."
    Augusta Ada Byron, Lady Lovelace (1851)

  3. #3
    Super Moderator
    Join Date
    Jun 2013
    Location
    So. Maryland, USA
    Posts
    6,304
    My Mood
    Mellow
    Thanks
    252
    Thanked 778 Times in 763 Posts

    Default Re: Anybody recommends good Java books (up-to-date)

    Can "outdated" knowledge be improved if I understand all of its concepts?
    Can knowledge be outdated? I think knowledge is always useful, but I think I get the point of your question.

    Java has had few dramatic changes in the last 10+ years. The last (IMO?) was the leap to 1.4. Even then, the basic programming tools and mechanics did not change and they are similar to the same basic tools in many other languages that you probably already know. What you should add to that with your Java 1.5 book are the specifics of using those basic tools in Java PLUS the graphics, OOP, GUI, and advanced SE classes that may be similar to but not exactly the same as those in other languages. The changes since then are relatively minor and can be easily learned as you need to. Hundreds of articles are written on the new features planned and actually delivered with each release.

    Can you refer me good, in-depth, critically acclaimed books?
    This question is asked so often that a 'net search will give you a wide variety of answers to choose from. That's what will always get in response to this question: a wide variety of answers that are largely based on people's opinions, preferred learning styles, existing experience with Java and other languages, preferred area of study, etc., etc., etc., and few (if any) of those factors may match yours.

    If you find a book that sounds interesting and you want to get our opinions, ask, but again, you'll get a wide variety of answers. For example, I think the "Head First . . ." series are hard too read and spend too much time trying to be cute and too little time getting to the point. I dislike them. At the other end, you can't go wrong with a Deitel book on any programming subject. They cover the subject matter in excruciating detail, include tons of examples and exercises, and are relatively heavy and expensive. You can occasionally find old versions of their books on the web, but I'm never sure how legal any of those copies are.

  4. The Following User Says Thank You to GregBrannon For This Useful Post:

    Harmone (August 1st, 2014)

  5. #4
    Member Ada Lovelace's Avatar
    Join Date
    May 2014
    Location
    South England UK
    Posts
    411
    My Mood
    Angelic
    Thanks
    27
    Thanked 61 Times in 55 Posts

    Default Re: Anybody recommends good Java books (up-to-date)

    I think the "Head First . . ." series are hard too read and spend too much time trying to be cute and too little time getting to the point. I dislike them.
    I agree - but I also think that is exactly the authors intent. They cater to be rather
    childlike in their text with little pencil arrows and scribbles with notes and tips.
    Also, the exercises (I once owned Head First C) are crosswords and quizzes which
    is a neat addition and a more "fun" way to learn a language.

    I do also agree that Deitel produces and EXCELLENT series of books on most
    languages. Their content is depth and knowledge. The only gripe I have against
    Deitel is the lack of change in their textbooks. For example, Java How to Program
    3rd Edition has the same exercises as Java How to Program 9th edition. I mean,
    would it really be a stretch to write some new exercises?

    Wishes Ada xx
    If to Err is human - then programmers are most human of us all.
    "The Analytical Engine offers a new, a vast, and a powerful language . . .
    for the purposes of mankind
    ."
    Augusta Ada Byron, Lady Lovelace (1851)

  6. The Following User Says Thank You to Ada Lovelace For This Useful Post:

    Harmone (August 1st, 2014)

  7. #5
    Junior Member
    Join Date
    Jul 2014
    Posts
    10
    Thanks
    5
    Thanked 0 Times in 0 Posts

    Default Re: Anybody recommends good Java books (up-to-date)

    Quote Originally Posted by Ada Lovelace View Post
    C is not OOP - neither is C++ really, C uses structured concepts
    and C++ does use OOP but is a multi-purpose language, allowing
    the programmer to write in procedural or OOP way. Objective-C
    is more of a OOP language.

    Anyway to your actual question - it is absolutely fine to learn from
    Head First Java - as all concepts covered are also in Java 6, 7 and 8.
    Very few additional Java features are added to each revision of the
    language, and the ones that are will not really effect the standard
    core of the language syntax. However, anything below standard 4
    is considered outdated by today's standard.

    Most textbooks available today are mostly up to date and support
    Java 6, 7 and or 8. Your overall knowledge will expand as you delve
    deeper into the language and learn about new and exciting concepts.
    You can never have too much knowledge in a language, and I do not
    believe James Gosling would be able to remember the entire language
    off the top of his head without a reference book

    Keep working hard and Good luck

    Wishes Ada xx
    The Pragmatic Programmer always said that you should learn the new version of language as it releases (of course, for more job opportunists, more libraries, more safety and cleaner syntax), but of course, it's not necessary to think of it while learning a new language (we can worry about that later, when we'd actually understand the syntax).

    While I'd surely like good, in-depth books (that don't teach bad programming habits), Headfirst seems fine for now. Although it seems too short, I can comprehend it better than Thinking in C++ or C++ primer, they are too...complex and brief, they aren't fun at all, even though I consider programming itself fun. Headfirst tries a different approach, and that I actually like, but they're too, brief.

    --- Update ---

    Thanks, I'll check Deitel. Although Headfirst works, it's too brief (but simple to understand). Alas, I'll try to learn with Headfirst the basics (first few hundred pages) before moving into more advanced (and up-to-date) books.

  8. #6
    Member Ada Lovelace's Avatar
    Join Date
    May 2014
    Location
    South England UK
    Posts
    411
    My Mood
    Angelic
    Thanks
    27
    Thanked 61 Times in 55 Posts

    Default Re: Anybody recommends good Java books (up-to-date)

    Bare in mind also - that Deitel books are well known for their
    rich amount of exercise (as Greg mentioned) at the end of
    each chapter. These range from the simple "Write a program
    that finds the largest of ten integers" to the more complex
    "Write a simulation that creates the tortoise and hare race
    using OOP and inheritance."

    When you finish your Head First journey - and if you do pick
    up deitel, it is always a good idea to go back over the first
    chapters, even if it's just to do the exercises. Re-enforcing what
    Head First taught you - and you will feel more confident and
    prepared to tackle the more advanced features of Java.

    Wishes Ada xx
    If to Err is human - then programmers are most human of us all.
    "The Analytical Engine offers a new, a vast, and a powerful language . . .
    for the purposes of mankind
    ."
    Augusta Ada Byron, Lady Lovelace (1851)

  9. The Following User Says Thank You to Ada Lovelace For This Useful Post:

    Harmone (August 1st, 2014)

  10. #7
    Super Moderator
    Join Date
    Jun 2013
    Location
    So. Maryland, USA
    Posts
    6,304
    My Mood
    Mellow
    Thanks
    252
    Thanked 778 Times in 763 Posts

    Default Re: Anybody recommends good Java books (up-to-date)

    The only gripe I have against Deitel is the lack of change in their textbooks.
    I agree that this can appear to be lazy book writing and almost cheating, but there's a benefit to the reader: if one has already learned one language using the Deitel book, learning another language using a Deitel book is like walking through familiar territory wearing a different pair of sunglasses. This benefit has made my learning C enjoyable - though I haven't gotten to memory management yet which has to be new material.

  11. The Following User Says Thank You to GregBrannon For This Useful Post:

    Harmone (August 1st, 2014)

  12. #8
    Junior Member
    Join Date
    Jul 2014
    Posts
    10
    Thanks
    5
    Thanked 0 Times in 0 Posts

    Default Re: Anybody recommends good Java books (up-to-date)

    (*Ahem*, I am sorry, I until now, was thinking that the small "plus" sign embedded with the quote mark, was a "thank you"/+1 button, sorry if it bothered you)
    My Headfirst journey is quite a long one (five-hundred pages remain), and they won't be finished by two or three days, but probably will not last longer than one-and-half-a-week (six-to-fourteen days to finish).
    What now I plan is, I'm going to master Java, then its latest edition, then master C/C++ (of course, i'll read a book of "advanced" level, since by then I'd have pretty much advanced knowledge about OOP programming), is this okay in your opinion? If not, what can I do to enhance my Java knowledge further before moving to C?

  13. #9
    Member Ada Lovelace's Avatar
    Join Date
    May 2014
    Location
    South England UK
    Posts
    411
    My Mood
    Angelic
    Thanks
    27
    Thanked 61 Times in 55 Posts

    Default Re: Anybody recommends good Java books (up-to-date)

    Java is a language created in C. Hence why the syntax of the
    language is C-like. That said, C/C++ and Java are completely different
    in terms of technical syntax.

    Like Greg mentioned, one of the biggest and most difficult aspects of
    C/C++ is memory management - the use of pointers. Java does all of
    this internally for you via the garbage collector tool. You can learn all
    about Java, it's features and functions - this will indeed by a great
    help if you do decide to step into an unmanaged language.

    The similarities of the syntax will make it easier than having to
    learn it all from scratch. From Java, you would already know what
    a variable is, what a type is, what a method/function is, what a class
    is, an object, scope, inheritance and polymorphism is.

    What you will have to learn is the subtle differences in how each language
    approaches the definition and implementation of each one.

    The most basic example of pointers (in C++) is this:

    int *ptr = NULL;
    int total = 100;
    ptr = &total;
    std::cout << *ptr;

    That would print the value held in the variable total. Not to hard,
    but remember understanding something that Java has hidden from
    you is a difficult task. Although it is fully understandable and knowing
    how memory is allocated/de-allocated and how class objects are
    created and destroyed on the data heap is also important knowledge.

    I went the other way to you myself, learnt C first then leapt into
    Java. It's the handling of the syntax that is the first hurdle.

    Wishes Ada xx
    If to Err is human - then programmers are most human of us all.
    "The Analytical Engine offers a new, a vast, and a powerful language . . .
    for the purposes of mankind
    ."
    Augusta Ada Byron, Lady Lovelace (1851)

  14. #10
    Junior Member
    Join Date
    Jul 2014
    Posts
    10
    Thanks
    5
    Thanked 0 Times in 0 Posts

    Default Re: Anybody recommends good Java books (up-to-date)

    Yes, I've heard the infamous pointers. While I've a fair understanding of programming itself (Python and Assembly. Assembly is, I am slowly forgetting, Python is more high-level, but nonetheless, a programming language), C/C#/C++ is going to be hard, if we consider pointers and such, which were automatically done for us in Java.

    For Java, we'd use simple
    System.Out.Prinln.("Something");
    It's difficult to use
    org 0x7c00
     
    mov bx, RANDOM_MSG
    call print_string
     
    mov bx, SOME_MSG
    call print_string
    But I think once my grip over Java (and OOP itself) becomes more strong, I'd be a pretty good C programmer.

  15. #11
    Member Ada Lovelace's Avatar
    Join Date
    May 2014
    Location
    South England UK
    Posts
    411
    My Mood
    Angelic
    Thanks
    27
    Thanked 61 Times in 55 Posts

    Default Re: Anybody recommends good Java books (up-to-date)

    Exactly

    C is like a layer that covers assembly. It's the lowest format
    of a high level language that gives you the most access to the
    computer hardware without being too cryptic in the sense
    that assembly is/can be. C is also extremely fast at execution,
    due to it's closeness to assembly - hence why today it is
    primary used for assemblers, device drivers, operating systems
    and video games - all applications where speed and performance
    out-weigh almost all other areas.

    Wishes Ada xx
    If to Err is human - then programmers are most human of us all.
    "The Analytical Engine offers a new, a vast, and a powerful language . . .
    for the purposes of mankind
    ."
    Augusta Ada Byron, Lady Lovelace (1851)

  16. #12
    Junior Member
    Join Date
    Jul 2014
    Posts
    10
    Thanks
    5
    Thanked 0 Times in 0 Posts

    Default Re: Anybody recommends good Java books (up-to-date)

    Yes. Even Microsoft uses C in all latest Windows edition (including, if I am right, Windows XP, and Vista. I am sure Windows 8/7 is written in C/C++, with only a few hundred lines of code 'hand-tuned' with Assembly).
    So, is Effective Java Second Edition worth it, after reading Headfirst : Java?

  17. #13
    Member Ada Lovelace's Avatar
    Join Date
    May 2014
    Location
    South England UK
    Posts
    411
    My Mood
    Angelic
    Thanks
    27
    Thanked 61 Times in 55 Posts

    Default Re: Anybody recommends good Java books (up-to-date)

    The only way to answer that is read the book reviews and look
    over the chapter summary on Amazon or other online retailer
    sites. Each Java book is written by different authors and their
    approach will not be the same as another author.

    There are many Java books you could possibly purchase and
    it is all about trial and error if you pick the right on for you.
    What I can say, is most books are available online for free via
    a pdf format - so that is another option open to you.

    Buying a book is an investment - and one that takes time to
    consider. Head First Java would of taught you the basics to
    some intermediate level, so unless you want to do otherwise
    get an intermediate level book. It is bound to cover topics
    like threads, lists and advanced object-orientated design.

    Wishes Ada xx
    If to Err is human - then programmers are most human of us all.
    "The Analytical Engine offers a new, a vast, and a powerful language . . .
    for the purposes of mankind
    ."
    Augusta Ada Byron, Lady Lovelace (1851)

  18. The Following User Says Thank You to Ada Lovelace For This Useful Post:

    Harmone (August 1st, 2014)

  19. #14
    Junior Member
    Join Date
    Jul 2014
    Posts
    10
    Thanks
    5
    Thanked 0 Times in 0 Posts

    Default Re: Anybody recommends good Java books (up-to-date)

    Thank you.

    While I mostly use PDF books while learning, there are some really good authors that are underrated and need to be supported. What my point was that after reading HFJ, should I read a two-thousand paged book that had everything I knew from the scratch, or should I read a book that is understandable and two-thousand paged? It doesn't matter the size, it matters what I learn.

    However, thanks still. I shall try a few more books.

  20. #15
    Super Moderator
    Join Date
    Jun 2013
    Location
    So. Maryland, USA
    Posts
    6,304
    My Mood
    Mellow
    Thanks
    252
    Thanked 778 Times in 763 Posts

    Default Re: Anybody recommends good Java books (up-to-date)

    Effective Java Second Edition worth it
    Worth it? Hard to say. My OPINION is that it is a GREAT reference book to skim through and then have near your desk when programming to look up the general concepts that you remember are there but don't quite remember the details. It is a "DO this" or "DON'T DO that" book that spends whole chapters explaining why DOING this and NOT DOING that will make you a better Java programmer. Every serious Java programmer who has reached the later intermediate or early advanced stage should have this book handy and be generally aware of what's in it.

  21. #16
    Junior Member
    Join Date
    Jul 2014
    Posts
    10
    Thanks
    5
    Thanked 0 Times in 0 Posts

    Default Re: Anybody recommends good Java books (up-to-date)

    Quote Originally Posted by GregBrannon View Post
    Worth it? Hard to say. My OPINION is that it is a GREAT reference book to skim through and then have near your desk when programming to look up the general concepts that you remember are there but don't quite remember the details. It is a "DO this" or "DON'T DO that" book that spends whole chapters explaining why DOING this and NOT DOING that will make you a better Java programmer. Every serious Java programmer who has reached the later intermediate or early advanced stage should have this book handy and be generally aware of what's in it.
    Thank you. I just needed confirmation that is an excellent book as Stackoverflow said, since every book (Thinking in Java, the Pragmatic Programmer, Effective C++ and Effective Java) has recieved at least ten negative reviews on Goodreads and Amazon. And by the way, what's the difference between Pragmatic Programmer and this, other than focusing on Java?

  22. #17
    Super Moderator
    Join Date
    Jun 2013
    Location
    So. Maryland, USA
    Posts
    6,304
    My Mood
    Mellow
    Thanks
    252
    Thanked 778 Times in 763 Posts

    Default Re: Anybody recommends good Java books (up-to-date)

    I haven't read "Pragmatic Programmer" so can't say. I'll look through it when I get a chance.

Similar Threads

  1. Java Date Format in Date Object
    By Ashr Raza in forum What's Wrong With My Code?
    Replies: 1
    Last Post: November 13th, 2012, 10:47 AM
  2. Need good books on generics
    By sabitha2081 in forum Java Theory & Questions
    Replies: 2
    Last Post: August 2nd, 2012, 01:29 PM
  3. Any good books for java game development?
    By u-will-neva-no in forum Java Theory & Questions
    Replies: 1
    Last Post: September 23rd, 2011, 06:30 AM
  4. JAVA books- help
    By the_marija in forum Java Theory & Questions
    Replies: 2
    Last Post: September 19th, 2010, 06:59 AM
  5. java books
    By bbr201 in forum Java Theory & Questions
    Replies: 0
    Last Post: July 20th, 2010, 10:51 AM