Book Review: Effective Java 2nd Edition

Effective Java is  book in the Effective series, started by Scott Meyers with the excellent book Effective C++. The general format of the series is to present topics of high importance for intermediate to advanced users. The goal is not to teach the mechanics of the language, but the fine topics that make the difference between medi0cre users of language and advanced programmers.

Effective Java was written by Josh Bloch, one of the members of the group that defined the Java libraries. Therefore, Effective Java is a book that provides lessons based on the deep experience of the author with the design of core Java libraries. In particular, it is nice to hear from him what he thinks is wrong with some of the Java libraries, so that you don’t need to repeat the same mistakes the Java creators made.

Focus on Immutable Objects

One of the best topics of the book, and one that I advocate myself through the years, is that of trying to make objects immutable as much as possible. The idea is that objects should be in states that are well defined, and therefore the smaller the number of states, the easier it is to understand what the code is doing. Examples of using the pattern of immutable objects in Java is the String class: after construction, String objects are immutable, and any operation will create a new String that is returned as a result.

Traditional programming techniques use variables as a free-for-all, where state changes as much as needed. But once you learn functional programming, you will start to realize that values don’t need to change for your program to do something useful, and the less they change, the easier it is to figure out what is going on. In fact, in functional programming you just need to apply functions and check the results of the application — nothing else.

Of course, imperative languages such as Java still need variables on loops, but even this is not so important nowadays that we have foreach loops in all major languages other than C++.

Improvements in the 2nd edition

Many topics changed from the 1st edition of Effective Java, but the most important change was in the coverage of generics. The implementation of generics in Java is interesting and surprising, because of their use of the type erasure. That is, parametrized types in Java exist only as viewed by the compiler, and the information is erased from the resulting class files. This makes the resulting code compatible with previous JVMs, so the same code works everywhere. However, it has dangerous downsides, which require the full understanding from programmers.
Effective Java provides a deep introduction to the subject of Java generics, and after reading it you will not probably like generics a little less — but will also be more prepared to use it. The pros and cons of using Array objects instead of native arrays are explained. Also, the important concepts of extends and super are in generic types is summarized using the PECS acronym (produces-extends, consumer-super).    

Conclusion
[ad name=”amazon-effective-java”] Effective Java 2nd edition delivers what it promises. All the basic points in using Java, from creating objects, to managing resources and using generic types are discussed. Maybe some of these topics could be extended in newer editions, or even in another book. But it provides all the necessary material to transform a beginner into a well educated Java programmer.

Similar Posts:

Similar Posts

79 Comments

  1. It’s appropriate time to make some plans for the future and it is time to be happy.
    I’ve read this post and if I could I wish to suggest you some interesting things or advice.
    Perhaps you can write next articles referring to this article.

    I wish to read more things about it!

  2. Oh my goodness! Impressive article dude! Thank you, However I am having difficulties with your RSS.
    I don’t know the reason why I cannot subscribe to it.
    Is there anyone else getting similar RSS problems?
    Anybody who knows the solution can you kindly respond?
    Thanks!!

  3. Every weekend i used to visit this site, because i wish for enjoyment,
    since this this site conations in fact fastidious funny information too.

  4. Many Singapore parents opt f?r primary math tuition t? guarantee th??r children ?eep pace in t?e demanding
    MOE syllabus ?nd avoid falling behind compared t? classmates.

    Secondary math tuition plays ? pivotal role in addressing
    conceptual weaknesses, ?articularly du?ing the shift from
    primary heuristic methods t? the moe conceptually demanding ?ontent introduced in secondary school.

    JC math tuition ?ffers focused instruction ?nd intensive practice required
    t? succes?fully bridge t?e substantial increase
    ?n complexity f?om O-Level Additional Math t? the highly
    abstract ?2 Mathematics syllabus.

    Junior college students preparing f?r A-Levels
    f?nd virtual JC math support invaluable
    ?n Singapore ?ecause it delivers focused ?ne-to-?ne instruction on advanced H2 topics such as vectors
    and complex num?ers, helping th?m achieve t?p-tier results t?at unlock admission t? prestigious university programmes.

    OMT’? inte?esting video clip lessons transform complicated mathematics principles
    ?nto exciting stories, assisting Singapore trainees love tthe subject ?nd
    ?eally feel motivated to ace t?eir examinations.

    Dive ?nto ?e?f-paced mathematics proficiency ?ith OMT’s
    12-month e-learning courses, ?omplete with practice worksheets ?nd taped sessions f?r
    t?orough revision.

    ?ith trainees in Singapore starting official math education f?om the first day and dealing with h?gh-stakes evaluations, math tuition ?ses th? extra edge
    required t? achieve leading efficiency in t?is essential subject.

    Tuition ?n primary school math ?s key for PSLE preparation, ?s
    it presents advanced methods f?r managing non-routine issues t??t stump lot? of candidates.

    Tuition promotes advanced ?roblem-solving skills, crucial f?r addressing t?e
    complex, multi-step questions that specify O Level mathematics obstacles.

    Planning f?r th? unpredictability ?f A Level inquiries, tuition develops adaptive analytical methods f?r real-t?me test circumstances.

    Distinct f?om ?thers, OMT’? syllabus complements MOE’s with a concentrate on resilience-building workouts,
    aiding pupils tackle difficult troubles.

    Endless retries ?n quizzes s?a, excellent for understanding subjects ?nd
    accomplishing those A qualities in math.

    Math tuition gi?e? prompt feedback on practice efforts, accelerating enhancement f?r Singapore examination takers.

    ?lso visit my website … best primary Math tuition singapore

  5. Ahaa, its good conversation about this piece of writing at this place at
    this web site, I have read all that, so at this time me also commenting at this place.

  6. Good day! I could have sworn I’ve been to this blog before but after
    looking at a few of the posts I realized it’s new to me.
    Nonetheless, I’m certainly happy I discovered it and I’ll
    be book-marking it and checking back regularly!

  7. Thanks for ones marvelous posting! I really enjoyed reading it, you are a great author.I will make
    certain to bookmark your blog and may come back sometime soon. I want to encourage continue your great writing,
    have a nice holiday weekend!

  8. An outstanding share! I have just forwarded this onto a colleague who had been doing a little research on this.
    And he actually ordered me dinner due to the fact that I discovered it for him…
    lol. So allow me to reword this…. Thanks for the meal!!
    But yeah, thanks for spending the time to discuss this issue here on your blog.

  9. I don’t know whether it’s just me or if perhaps everybody else experiencing issues with your blog.
    It appears as though some of the written text in your content are running off the screen. Can somebody else please comment and
    let me know if this is happening to them as well?
    This could be a problem with my internet browser because I’ve had this happen previously.
    Cheers

  10. I think what you typed was actually very reasonable. However,
    what about this? suppose you composed a catchier post title?
    I am not saying your content is not good, but suppose you added a headline that grabbed a person’s attention? I mean Book Review:
    Effective Java 2nd Edition | Carlos Oliveira – Optimization &
    Engineering is kinda vanilla. You ought to glance at Yahoo’s home page and watch how they create news titles to get people to click.

    You might add a video or a related pic or two to grab
    people interested about everything’ve written. In my opinion, it could make
    your posts a little bit more interesting.

  11. It’s really very difficult in this active life to listen news on TV, therefore I just use world
    wide web for that purpose, and obtain the most up-to-date news.

  12. I have been exploring for a little bit for any high-quality articles or weblog posts in this sort of space
    . Exploring in Yahoo I ultimately stumbled upon this
    site. Studying this information So i am happy to express that I’ve a very good uncanny feeling I discovered just what I needed.

    I most certainly will make sure to don?t forget this site and
    give it a glance regularly.

  13. Pretty element of content. I simply stumbled upon your web site
    and in accession capital to say that I get in fact loved
    account your blog posts. Anyway I’ll be subscribing in your augment and even I achievement
    you access persistently quickly.

  14. I really like your blog.. very nice colors & theme.
    Did you make this website yourself or did you hire someone to do it for you?

    Plz respond as I’m looking to create my own blog
    and would like to find out where u got this from. thank you

  15. whoah this weblog is wonderful i really like
    reading your articles. Keep up the good work! You
    recognize, a lot of persons are looking around for this information, you can help them greatly.

  16. Heya superb website! Does running a blog like this require a large amount
    of work? I’ve virtually no expertise in programming however I was hoping to start my own blog soon. Anyways,
    if you have any recommendations or techniques for new blog owners please share.
    I know this is off topic nevertheless I simply wanted to ask.
    Cheers!

  17. Unl?ke ?arge classroom settings, primary math tuition ?ffers personalized attention t?at allows children to quickly clarify doubts ?nd deeply understand difficult topics ?t th?ir own comfortable pace.

    Regular secondary math tuition equips students t? overcome persistent challenges
    — ?articularly time pressure ?n problem-solving, graph analysis, ?nd multi-step logical reasoning.

    ? l?rge proportion ?f JC students depend ?n math tuition t? gain mastery ?ver and refine sophisticated ?roblem-solving techniques f?r the conceptually deep ?nd proof-based questions t??t characterise
    H2 Math examination papers.

    Secondary students t?roughout Singapore increasingly choose online math
    tuition t? receive ?mmediate corrections on practice papers ?nd recuring errors in topics including sequences and differentiation, speeding
    ?p improvement tow?rd A1 or A2 result? in Additional Mathematics.

    ?hrough simulated exams ?ith motivating responses, OMT builds
    durability ?n mathematics, cultivating love ?nd inspiration for Singapore trainees’ test triumphs.

    Established ?n 2013 ?y Mr. Justin Tan, OMT Math
    Tuition ??? assisted numerous students ace exams ?ike PSLE,
    ?-Levels, ?nd A-Levels with tested analytical
    strategies.

    Singapore’? emphasis ?n crucial thinking thro?gh mathematics highlights t?? value ?f
    math tuition, wh?ch assists students develop
    t?e analytical abilities required ?? the nation’s forward-thinking curriculum.

    primary tuition iss essential f?r constructing strength versus PSLE’? difficult concerns, ?uch as thos? on probability
    ?nd basic statistics.

    Structure s??f-assurance t?rough consistent tuition assistance ?s
    vital, as ? Levels c?n ?e difficult, and cert?in pupils execute far ?etter under stress.

    Tuition ?rovides strategies f?r t?me management t?roughout the prolonged ? Level
    mathematics tests, enabling students t?
    allot initiatives su?cessfully ?cross areas.

    Inevitably, OMT’? one-?f-a-kind proprietary curriculum matches t?e Singapore MOE educational program ?? cultivating
    independent thinkers equipped for lifelong mathematical
    success.

    ?he self-paced ?-learning ?ystem fr?m OMT is ver? flexible lor, making it m?ch easier t? manage school and tuition f?r
    gr?ater math marks.

    Math tuition integrates real-?orld applications, m?king abstract curriculum subjects
    relevant ?nd easier to use ?n Singapore examinations.

    H?r? is my blog post :: jc math tuition

  18. It’s the best time to make some plans for
    the future and it’s time to be happy. I have read this post and if I could I wish
    to suggest you some interesting things or advice.
    Maybe you can write next articles referring to this article.
    I want to read even more things about it!

  19. Unli?e larg? classroom settings, primary math tuition ?ffers individualized guidance th?t ?llows children to qui?kly
    clarify doubts ?nd fu?ly grasp difficult topics at thei? ?wn comfortable
    pace.

    Numerous Singapore parents invest ?n secondary-level math tuition t? maintain a strong academic edge
    ?n ?n environment w?ere class placement heavily rely ?n mathematics result?.

    Math tuition at junior college level supplies personalised feedback
    ?nd A-Level oriented ?pproaches that mainstream
    JC lessons seldom provide adequately.

    Secondary students ?cross Singapore increasingly
    depend ?n online math tuition t? receive instant doubt-clearing sessions on demanding topics li?e logarithms, sequences and differentiation, us?ng shared digital
    whiteboards ?egardless ?f traffic conditions.

    Thematic devices ?n OMT’s curriculum connect math to rate
    ?f int?rests ?ike technology, firing ?p curiosity ?nd drive f?r leading
    examination ratings.

    Discover t?e benefit ?f 24/7 online math tuition ?t OMT, w?ere engaging resources make discovering fun ?nd
    reliable for al? levels.

    In Singapore’? extensive education ?ystem, whe?? mathematics is compulsory ?nd t?kes in around 1600 hours of curriculum tim? in primary and secondary schools, math tuition ?ecomes necessar? t? assist
    trainees develop ? strong foundation fo? lifelong success.

    Tuition stresses heuristic analytical ?pproaches, vital
    for dealing w?th PSLE’? challenging ?o?d probl?ms t?at need multiple actions.

    ?ith the ? Leveel math syllabus periodically developing, tuition ?eeps students updated ?n modifications,
    ensuring t?ey are well-prepared for existing layouts.

    ?or those seeking H3 Mathematics, junior college tuition supplies
    innovative support ?n res?arch-level topics to excel in this difficult
    expansion.

    OMT distinguishes ?ith a proprietary educational program t?at sustains MOE ?ontent ?ia multimedia combinations,
    ?uch as video clip explanations ?f key theories.

    Aesthetic aids ?ike diagrams ?elp imagine issues lor,
    improving understanding ?nd examination performance.

    Math tuition supports ? development ?tate of mind,
    urging Singapore pupils t? check ?ut obstacles as possibilities fo?
    test quality.

    ?ere i? my webpage: online math tuition Singapore summary notes

  20. I do trust all of the ideas you’ve presented on your post.
    They’re very convincing and can certainly work. Nonetheless, the posts are
    very short for starters. May just you please lengthen them
    a bit from next time? Thanks for the post.

  21. It’s hard to come by experienced people on this subject,
    however, you seem like you know what you’re talking about!

    Thanks

  22. This is very attention-grabbing, You are an overly skilled blogger.
    I’ve joined your feed and stay up for looking for extra of your magnificent post.

    Also, I’ve shared your website in my social networks

  23. Hello, Neat post. There’s a problem along with your website in web explorer, might check this?
    IE nonetheless is the marketplace chief and a huge part of
    other folks will omit your great writing due to this problem.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.