Hacker News new | ask | show | jobs
by hackermailman 2698 days ago
Effective Java by Joshua Bloch is probably the best book for starting to work with a large codebase, supplemented with course notes from any software engineering intro course like https://www.cs.cmu.edu/~charlie/courses/17-214/2018-spring/i... if new to Java. SEI CERT has some recommendations too you can adapt to whatever version you're using at work https://wiki.sei.cmu.edu/confluence/display/java/SEI+CERT+Or...
1 comments

I second Effective Java. It's an advenced/master level guide to write good java code. Some of the subjects are outdated as it is so engraved in Java that probably a tool does it for you(eg. dependency injection) but really helps to get the big picture if you are an experienced developer but new to java.

To work with legacy code I recommend Working with Legacy Code by Martin Fowler. Lots of good ideas for handling messy codebase are described there.

Hey! Working Effectively with Legacy Code is a great book, but it written by Michael Feathers.
Whops, right! Thanks for the fix.