Prague College Library: Tom Swan's GNU C++ for Linux (Professional Dev. Guide)
Title:      Tom Swan's GNU C++ for Linux (Professional Dev. Guide)
Categories:      Computing
BookID:      CO-HND-00101
Authors:      Tom Swan
ISBN-10(13):      9780789721532
Publisher:      Que
Publication date:      1999-12-06
Edition:      1
Number of pages:      848
Language:      English
Rating:      0 
Picture:      cover
Description:      Product Description
Tom Swan's GNU C++ for Linux teaches C++ programmers how to program for the Linux operating system using the GNU C++ compiler. It deals with Linux-specific programming issues and covers topics such as Linux programming fundamentals, Kernel programming, device drivers, Tom Swan's "Developer Toolbox", X Windows development, class libraries, object-oriented programming, and references to reserved words, operator precedence, and Internet sites for more information. Review
Significantly, Windows-world author Tom Swan and publisher Que Corporation are turning their attention to Linux. The author's heavily branded new book Tom Swan's GNU C++ for Linux begins on his houseboat in the Caribbean where the prolific explicator of compilers discovers Linux and GNU C++ after failing to hook his evening meal. Swan's discovery comes late in the day, both literally and figuratively, but it is good news nonetheless. The late adopters are here--they even brought their favorite author--so let's welcome them by tolerating their egotistically self-titled tracts.

The story begins with the basics of a Linux installation. (Mandrake 6.1--a variant of Red Hat--is included on CD-ROM.) In the new day of Linux, everything works the first time, so Swan's 20-page précis gives cursory attention to error recovery, since that would spoil his Caribbean calm. True Linux newbies are advised to refer to any book by Matt Welsh for the whole story (in no less palatable form), but Swan's quibbling about Unix conventions honestly reflects the frustrations of newcomers.

Ironically, all of the hype for Swan, Que, Linux, and GNU seems misplaced next to the simple fact that C++ is an ANSI standard compiler. By any branding scheme, C++ should smell as sweet. In fact, GNU C++ does have its own accent, and Swan dedicates only one of his 800 pages to portability issues. The large middle ground of the book rests securely on Swan's methodical explanation of object-oriented code design and the details of C++.

Swan has written seven other books on C++ for the Windows environment, and GNU's accent isn't so different. He employs patient hand-holding methods, and the book's many notes, tips, and warnings reflect his depth and breadth of understanding. For skimming or studying, the middle passage is useful to newcomers and a welcome refresher for students who will value the detail and code examples.

In a mystifying denouement, Swan includes 150 pages on the X11 libraries, suggesting that Linux/C++ newbies should cut their teeth on 15-year-old graphical user interface (GUI) tools before their learning is done. He would have been wiser to end with links between C++ and object-oriented scripting languages such as perl5 and python, both of which have GUIs that are more accessible than X11. Evidently, we must wait for Tom Swan to discover GUI scripting languages--perhaps while on a llama trip in the Andes. He would do better to focus his energies on a GNU C++, for Windows is where his real expertise lies. --Peter Leopold