Gamma, Helm, Johnson, Vlissides:
Design Patterns: Elements of Reusable Object-Oriented
Software. Addison-Wesley, Reading MA 1995.
The text is as necessary for a software developer as a
dictionary for an English writer.
I will hand out copies of select articles and book chapters. Time
permitting, I will compile them and have them available via some copy
Felleisen, Findler, Flatt, Krishnamurthi: How to Design Programs
MIT Press, Cambridge MA 2001
If you have any doubts what the design recipes are and how to
match the program organization to the data definition, consult this
book. This is where you started and, believe it or not, this is what you
need to remember.
Strunk and White: Elements of Style, 3rd edition.
You will need to write memos if your investment into your
education here is to pay off. This little book will help you formulate
those memos. It is worth purchasing a copy and keeping it on your desk for
the rest of your career, right next to an English dictionary. Your books
on programming and software development will change far more often.