UP ONE LEVEL: ENEL 315 Home Page

Electrical Engineering 315 Winter 1996
Information about Course-Related Books

Last modified: Thu Jan 18 14:44:16 MST 1996

Contents


Required Textbook

Data Abstraction and Problem Solving with C++: Walls and Mirrors
author: Frank M. Carrano
publisher: Benjamin-Cummings
Lectures and lab assignments will make frequent references to this text. It's pretty hard to learn about data structures without referring to this or some other text on the subject. This text also contains much useful introductory material on C++. If your book budget is small, get this book only.

[back to top of document]


Recommended Textbooks

Copies of both of these books can be found in the Reserve Reading section of MacKimmie Library, in case you wish to do some browsing before making a purchase decision.
Effective C++
author: Scott Meyers
publisher: Addison-Wesley
A small and relatively cheap book full of excellent advice about C++ programming. You can't learn C++ from this book alone, but it often clears up confusion created by other books. The material will start to be useful around Lab[3] of ENEL 315 and will stay relevant as long as you continue to work with C++. As a bonus, the jokes are much better than in the average book on programming.

The C++ Programming Language, 2nd edition
author: Bjarne Stroustrup
publisher: Addison-Wesley
An authoritative text by the original designer of the C++ language. Most C++ beginners find this book tough to understand. However, the more you use C++, the more useful you will find this book to be. The book also contains some good practical advice on software design and development.

[back to top of document]


Reserve Reading in MacKimmie Library

The library has three copies of each of these books; one copy is available for one-hour loan and the other two are available for three-day loan.
Effective C++
author: Scott Meyers
See Recommended Texts for a description.

The C++ Programming Language
author: Bjarne Stroustrup
See Recommended Texts for a description.

C++ FAQs: Frequently Asked Questions
authors: Marshall P. Cline and Greg P. Lomow
publisher: Addison-Wesley
Has good answers to a lot of questions about C++ language features. Also has a lot of good advice about OOP, and object-oriented development. Chapter 9 has an excellent discussion about documenting class member functions with REQUIRES and PROMISES.

Classic Data Structures in C++
author: Timothy A. Budd
publisher: Addison-Wesley
(This is the ENEL 495 textbook.) This is a good alternate to Carrano, if you're looking for more reading material on implementing data structures in C++. The C++ code in this book is of higher quality than Carrano's code. (I chose Carrano for ENEL 315 because it has more coverage of recursion and more discussion of information hiding.)

Writing Solid Code
author: Steve Maguire
publisher: Microsoft Press
A book with much excellent advice on how to avoid writing bugs into C code. A lot of this advice transfers well to development in C++.

Code Complete
author: Steve McConnell
publisher: Microsoft Press
The subtitle is, A Practical Handbook of Software Construction. Very good advice on topics like designing modules and routines, choosing identifiers, good and bad indentation styles, reviewing and testing code to ensure high quality, and so on.

[back to top of document]


More Good Books on C++

This section lists some good books on C++ that are neither course textbooks nor Reserve Reading books.

Not all of these books are currently available at the U of C Bookstore. Two better stores to go to for computer books are Calgary Computer Books (near the intersection of Kensington Road and Crowchild Trail) and The Book Company (downtown in the Bankers Hall building).

C++ Primer Plus, 2nd Edition
author: Stephen Prata
publisher: Waite Group Press
A comprehensive introduction to C++ for the beginning C++ programmer. Well-written with many good examples. It should be easy to read for students who have a good understanding of ENGG 333 material.

Thinking in C++
author: Bruce Eckel
publisher: Prentice Hall
A very up-to-date book with highly readable explanations of C++ features and OOP ideas. Aimed at experienced C programmers.

[back to top of document]


Author's home page