6515 S '13
Lab Book


Required text:

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 place.

Recommended texts:

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 (or its second, on-line edition). 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.

Texts you might find useful for the course or your career:

Beck:  Extreme Programming Explained  Addison-Wesley, Reading MA 1999

The philosophies of extreme programming are similar to those of the design recipe. The book also includes ideas on pair programming and why it is effective. It is a handy reference though it could have been written as a 10 page essay.

Fowler, Scott:  UML Distilled  Addison-Wesley, Reading MA 1997

For better or worse, you will encounter UML during your career. This is a book of which you should be aware.

Hunt and Thomas  The Pragmatic Programmer Addison-Wesley, Reading MA 1999

This book presents practical and most good advice from experienced programmers in a guru-style manner. If this kind of presentation is better for you than lectures and text books, you may prefer reading this book instead of or while taking this course.

last updated on Tue Jan 8 12:07:19 EST 2013generated with Racket