Further Reading

 

The best book on programming for the layman is Alice in Wonderland, but that's because it's the best book on anything for the layman.

 
 --Alan J. Perlis

We offer this list of works for further reading on related topics. The list is necessarily duosyncratic—other excellent works exist on many of these topics. Of course, all the books in this series are recommended for their respective topics.

Java Platform Topics

[biblio01div01entry01] ♦ http://java.sun.com/, Sun Microsystems, Inc. Current information on the Java programming language and related topics, including releases, security issues, and online documentation.

[biblio01div01entry02] ♦ http://java.sun.com/Series/, Sun Microsystems, Inc. Current information about books in this series, including errata and updates. Of special interest will be those errata and updates for this book.

[biblio01div01entry03] ♦ The Unicode Standard 4.0, Addison-Wesley, <year>2003</year>, ISBN 0321185781. More data on Unicode is available at http://www.unicode.org.

[biblio01div01entry04] ♦ IEEE/ANSI Standard for Binary Floating-Point Arithmetic. Institute of Electrical and Electronics Engineers, <year>1985</year>, IEEE Std 754-1985.

[biblio01div01entry05] ♦ http://www.unicode.org/unicode/onlinedat/languages.html One site where you can find two-letter ISO 639 codes for languages.

[biblio01div01entry06] ♦ http://www.unicode.org/unicode/onlinedat/countries.html One site where you can find two-letter ISO 3166 codes for countries.

[biblio01div01entry07] ♦ “Uniprocessor Garbage Collection Techniques,” by Paul R. Wilson, University of Texas, in revision for ACM Computing Surveysalso available from http://www.cs.utexas.edu/users/oops/ Although dated, this is a good survey of uniprocessor garbage collection techniques that may or may not be used by your particular virtual-machine implementations.

[biblio01div01entry08] ♦ Garbage Collection: Algorithms for Automatic Dynamic Memory Management, by Richard Jones, John Wiley, and Sons, <year>1999</year>, ISBN 0-471-94148-4 An extensive coverage of many different forms of garbage collection and their respective trade-offs. Information about the book is available from http://www.cs.kent.ac.uk/people/staff/rej/gc.html, including an extensive online bibliography of over 1800 papers.

[biblio01div01entry09] ♦ http://www.w3.org/ Main site for the World Wide Web Consortium, where you can find documentation for HTML tags, which are usable in doc comments.

[biblio01div01entry10] ♦ http://tycho.usno.navy.mil/systime.html U.S. Naval Observatory data on the time paradigms used in the Date class.

Object-Oriented Design

[biblio01div02entry01] ♦ An Introduction to Object-Oriented Programming, 3rd Edition, by Timothy Budd. Addison-Wesley, <year>2001</year>, ISBN 0201760312 An introduction to object-oriented programming as well as a comparison of Java, C++, Objective C, Smalltalk, and Delphi.

[biblio01div02entry02] ♦ Pitfalls of Object-Oriented Development, by Bruce F. Webster. M&T Books, <year>1995</year>, ISBN 1-55851-397-3. A collection of traps to avoid in object technology. Alerts you to problems you're likely to encounter and presents some solutions for them.

[biblio01div02entry03] ♦ Design Patterns, by Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides. Addison-Wesley, <year>1995</year>, ISBN 0-201-63361-2.

[biblio01div02entry04] ♦ Object-Oriented Analysis and Design with Applications, 2nd Edition, by Grady Booch. Benjamin/Cummings, <year>1994</year>, ISBN 0-805-35340-2.

[biblio01div02entry05] ♦ Structured Programming, by Ole-Johan Dahl, Edsger Wybe Dijkstra, and C. A.R. Hoare. Academic Press, <year>1972</year>, ISBN 0-12-200550-3.

[biblio01div02entry06] ♦ Object-Oriented Programming: An Evolutionary Approach, 2nd Edition, by Brad J. Cox and Andrew Novobilski. Addison-Wesley, <year>1991</year>, ISBN 0-201-54834-8.

Multithreaded Programming

[biblio01div03entry01] ♦ Concurrent Programming in Java: Design Principles and Patterns, 2nd Edition, by Doug Lea. Addison-Wesley, <year>1999</year>, ISBN 0-201-31009-0.

[biblio01div03entry02] ♦ Programming with Threads, by Steve Kleiman, Devang Shah, and Bart Smaalders. Prentice Hall, <year>1996</year>, ISBN 0-13-172389-8.

[biblio01div03entry03] ♦ Programming with POSIX Threads, by David R. Butenhof. Addison-Wesley, <year>1997</year>, ISBN 0-201-63392-2.

[biblio01div03entry04] ♦ The Architecture of Concurrent Programs, by Per Brinch Hansen. Prentice Hall, <year>1977</year>, ISBN 0-13-044628-9.

[biblio01div03entry05] ♦ “Monitors: An Operating System Structuring Concept,” by C. A.R. Hoare. Communications of the ACM, Volume 17, number 10, 1974, pp. 549–557. The seminal paper on using monitors to synchronize concurrent tasks.

Generics

[biblio01div04entry01] ♦ “Making the Future Safe for the Past: Adding Genericity to the Java Programming Language,” by Gilad Bracha, Martin Odersky, David Stoutamire, and Philip Wadler. In Proceedings of the ACM Conf. on Object-Oriented Programming, Systems, Languages and Applications, October 1998 The original proposal for adding generic types to the Java programming language. The ideas expressed here underwent significant revision before generic types actually appeared in the language.

[biblio01div04entry02] ♦ “Adding Wildcards to the Java Programming Language,” by Mads Torgersen, Erik Ernst, Christian Plesner Hansen, Peter von der Ahé, Gilad Bracha, and Neal Gafter. Journal of Object Technology, Volume 3, number 11, December 2004, Special issue: OOPS track at SAC 2004, Nicosia/Cyprus, pp. 97–116; http://www.jot.fm/issues/issue_2004_12/article5 A good overview of how wildcards came about and their implications in the type system.

Regular Expressions

[biblio01div05entry01] ♦ Mastering Regular Expressions; Powerful Techniques for Perl and Other Tools, Jeffrey E. F. Friedl, O'Reilly, <year>1997</year>, ISBN 1-56592-257-3 An entire book devoted to regular expressions and their use. (You can easily know what is specific to the Perl programming language and what is more general.)

[biblio01div05entry02] ♦ “Unicode Technical Report #18: Unicode Regular Expression Guidelines,” http://www.unicode.org/unicode/reports/tr18 Covers how Unicode characters fit into a regular expression language. The simple answer is “about the same as you'd guess,” but this has the formal details.

General Programming Techniques

[biblio01div06entry01] ♦ Hacker's Delight, by Henry S. Warren,, Jr. Addison-Wesley, <year>2002</year>, ISBN 0-201-91465-4.

Related Languages

[biblio01div07entry01] ♦ The C Programming Language, 2nd Edition, by Brian W. Kernighan and Dennis M. Ritchie. Prentice Hall, <year>1988</year>, ISBN 0-13-110362-8 and ISBN 0-13-110370-9 (hardcover).

[biblio01div07entry02] ♦ The C++ Programming Language, 3rd Edition, by Bjarne Stroustrup. Addison-Wesley, <year>1997</year>, ISBN 0-201-88954-4.

[biblio01div07entry03] ♦ The Evolution of C++, edited by JimWaldo. A USENIX Association book from MIT Press, ISBN 0-262-73107-X. A history of C++ as told by many of the people who contributed.

[biblio01div07entry04] ♦ Eiffel: The Language, by Bertrand Meyer. Prentice Hall, <year>1992</year>, ISBN 0-13-247925-7.

[biblio01div07entry05] ♦ “A Structural View of the Cedar Programming Environment,” by Daniel Swinehart, Polle Zellweger, Richard Beach, and Robert Hagmann. ACM Transactions on Programming Languages and Systems, Volume 8, number 4, Oct. 1986.

[biblio01div07entry06] ♦ Mesa Language Manual, version 5.0, by James G. Mitchell, William Maybury, and Richard Sweet. Xerox Palo Alto Research Center Report CSL-79-3, April 1979.

[biblio01div07entry07] ♦ Systems Programming with Modula-3, edited by Greg Nelson. Prentice Hall, <year>1991</year>, ISBN-0-13-590464-1. Introduces Modula-3. Chapter 4 is an excellent discussion of thread programming. Chapter 8 is a fascinating case history of language design.

[biblio01div07entry08] ♦ Programming in Oberon—Steps Beyond Pascal and Modula, by Martin Reiser and Niklaus Wirth. Addison-Wesley, <year>1992</year>, ISBN 0-201-56543-9.

[biblio01div07entry09] ♦ Objective C: Object-Oriented Programming Techniques, by Lewis J. Pinson and Richard S. Wiener. Addison-Wesley, <year>1991</year>, ISBN 0-201-50828-1.

[biblio01div07entry10] ♦ “Self: The Power of Simplicity,” by David Ungar and Randall B. Smith. Sun Microsystems Laboratories Technical Report SMLI-TR-94-30, <year>1994</year>.

[biblio01div07entry11] ♦ Data Processing—Programming Languages—SIMULA. Swedish standard SS 636114, SIS, <year>1987</year>, ISBN 91-7162-234-9.

[biblio01div07entry12] ♦ Smalltalk-80: The Language, by Adele Goldberg and Dave Robson. Addison-Wesley, <year>1989</year>, ISBN 0-201-13688-0.

Software Engineering

[biblio01div08entry01] ♦ The Decline and Fall of the American Programmer, by Ed Yourdon. Yourdon Press, <year>1993</year>, ISBN 0-13-203670-3. Analysis of the revolution taking place in programming. Several chapters discuss object-oriented design. Two chapters of particular interest are “The Lure of the Silver Bullet” and “Programming Methodologies.”

[biblio01div08entry02] ♦ The Mythical Man-Month, Anniversary Edition, by Frederick P. Brooks,, Jr. Addison-Wesley, <year>1995</year>, ISBN 0-201-83595-9. Essays describing how software projects are really managed and how they should be managed. Especially read Chapter 16, “No Silver Bullet: Essence and Accidents of Software Engineering.” You cannot design good classes without understanding how they will be used and changed over time.

[biblio01div08entry03] ♦ Peopleware, by Tom DeMarco and Timothy Lister. Dorset House, <year>1987</year>, ISBN 0-932633-05-6.

Visual Design & GUI Design

[biblio01div09entry01] ♦ Designing Visual Interfaces, by Kevin Mullet and Darrel Sano. Prentice Hall, <year>1995</year>, ISBN 0-13-303389-9. This book describes fundamental techniques that can be used to enhance the visual quality of graphical user interfaces.

[biblio01div09entry02] ♦ About Face, by Alan Cooper. Hungry Minds Inc., <year>1995</year>, ISBN 1568843224. Basics of good GUI design in a straightforward presentation.

[biblio01div09entry03] ♦ Usability Engineering, by Jakob Nielsen. Academic Press, <year>1993</year>, ISBN 0-12-518405-0. A direct how-to guide on testing your interfaces to make sure they are usable by actual human beings.

[biblio01div09entry04] ♦ The Visual Display of Quantitative Information, by Edward R. Tufte. Graphics Press, <year>1983</year>. You shouldn't communicate using graphical media without reading this.

[biblio01div09entry05] ♦ The Non-Designer's Design Book, by Robin Williams. Peachpit Press, <year>1994</year>, ISBN 1-56609-159-4. How to use type, space, alignment, and other basic techniques to make your designs visually appealing and user-friendly. Applicable to paper documents, HTML documents, displaying data, and user interfaces.

[biblio01div09entry06] ♦ The Design of Everyday Things, by Donald A. Norman. Doubleday/Currency, <year>1988</year>, ISBN 0-385-26774-6. Discusses usability design for everyday items (doors, typewriters, and so on) with lessons applicable to any design that humans are meant to use.

[biblio01div09entry06a] The cure for boredom is curiosity. There is no cure for curiosity. —Dorothy Parker

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.14.252.56