9781861003010: Professional Linux Programming

As Linux increases its presence throughout the world as a target platform for professional application development, its growth as a powerful, flexible system offering many free development tools assures its place in the future. By giving you easy access to this comprehensive range of tools, supporting new and nascent technologies, at little or no cost, developing with Linux allows you to apply the solution that's right for you.

In this follow-up to the best-selling Beginning Linux Programming, you will learn from the authors' real-world knowledge and experience of developing software for Linux; you'll be taken through the development of a sample 'DVD Store' application, with 'theme' chapters addressing different aspects of its implementation. Meanwhile, individual 'take-a-break' chapters cover important topics that go beyond the bounds of the central theme. All focus on the practical aspects of programming, showing how crucial it is to choose the right tools for the job, use them as they should be used, and get things right first time.

Who is this book for?

Experienced Linux programmers and aspiring developers alike will find a great deal of practical information in this book on libraries, techniques, tools and applications. You should be familiar with a simple Linux system, have a good working knowledge of programming in C, and a basic understanding of object-oriented programming with C++ for the Qt/KDE chapters.

What does this book cover?

  • Data storage in Linux - including coverage of PostgreSQL, MySQL and XML
  • Implementation of Linux GUIs - covering both KDE and GNOME
  • Web-based interfaces - using the PHP module for Apache
  • Python - including extending and embedding the language
  • Using RPC and CORBA to construct distributed object-based applications
  • Versioning (with CVS), documentation, internationalization and project distribution
  • Distributed hardware solutions such as diskless Linux and Beowulf clustering

  • "synopsis" may belong to another edition of this title.


    By tapping the strengths of the open-source movement, developers can write custom Linux software without spending a dime on licensing fees. Aimed at the experienced C/C++ programmer, Professional Linux Programming provides a wide-ranging and hands-on guide to the different pieces of the puzzle that are required to program successfully on this exciting new platform.

    The book is framed as a case study for building a custom database program in Linux for a video rental store. After a tour of the requirements and a brief look at project management for creating this software, the various Linux packages that are needed to implement this system are described, along with sample code, most of which is written in C. Some packages, such as the CVS version-control package, come with most distributions of Linux; others will require downloading additional software over the Internet. In every case, you're provided with the actual command-line arguments that are needed to install, configure, and run each package.

    Besides a great exploration of CVS for version control, this title offers excellent coverage of the free PostgreSQL and MySQL databases, which are two very popular choices for Linux databases. The book also does a good job of explaining UI design under both the GTK+/GNOME and KDE (two popular Linux desktops), and how to extend the reach of the sample database application by using Remote Procedure Calls (RPCs) and CORBA. Of course, the finished application doesn't use every Linux API that's covered here, but the book does cast a wide net, and introduces features and tools that are available.

    Two prominent chapters take you on a tour of the essentials of other programming languages. There's PHP for Web development and an appealing, enthusiastic introduction to Python (which probably will turn you into a Python convert). Later chapters provide practical tips for testing and debugging applications, including how to profile your code. The book closes with a useful guide to creating Red Hat Package Manager (RPM) packages for deploying applications, as well as an overview of your options for internationalization.

    By covering so many APIs, languages, and tools effectively, Professional Linux Programming gives experienced C/C++ programmers all that they need to get started with Linux development. With its remarkably clear presentation style and abundance of practical tips, the book is an admirably useful blueprint for building custom software. --Richard Dragan

    Topics covered:

    • Introduction to open-source software and Linux requirements
    • Use cases and sample C objects for sample video rental store
    • Version control and CVS (command-line options, revisions, branches, and multiuser version control)
    • Open-source freeware packages compared (mSQL, MySQL, and PostgreSQL)
    • Introduction to databases
    • Installing and using PostgreSQL
    • Tutorial on psql SQL
    • PostgreSQL C database APIs using libcq and embedded SQL calls with ECPG
    • Installing and using MySQL (command-line utilities and C database APIs)
    • Debugging with gdb
    • Introduction and tutorial to UI programming with glib
    • GTK+ and GNOME
    • Source trees and GNOME
    • UI design with Glade
    • Testing strategies (including regression testing, profiling, and memory bounds checking)
    • KDE/Qt UI programming
    • Introduction and quick tutorial to Python (keywords and basic syntax)
    • PHP for Web programming
    • Introduction to Remote Procedure Calls (RPCs) and CORBA
    • XML basics (document structure, parsing, and libxml)
    • Strategies for documentation (including custom man pages)
    • Distributing Linux applications with Red Hat Package Manager (RPM) packages
    • Code patches

    From the Publisher:

    This book is for people who have Linux installed, are comfortable with it and have some knowledge of programming. They may well have bought BLP and now want to delve deeper. Advocating the "right tool for the job", but with different tools in mind, this volume shows the reader how to program databases, next-generation GUIs, and controlling devices.

    "About this title" may belong to another edition of this title.

    Top Search Results from the AbeBooks Marketplace


    Neil Matthew and Richard Stones, Brad Cl
    Published by Peer Information Inc. (2000)
    ISBN 10: 1861003013 ISBN 13: 9781861003010
    New Paperback Quantity Available: 2
    Murray Media
    (North Miami Beach, FL, U.S.A.)

    Book Description Peer Information Inc., 2000. Paperback. Book Condition: New. Never used!. Bookseller Inventory # P111861003013

    More Information About This Seller | Ask Bookseller a Question

    Buy New
    US$ 44.94
    Convert Currency

    Add to Basket

    Shipping: US$ 1.99
    Within U.S.A.
    Destination, Rates & Speeds


    Matthew, Neil; Stones, Richard; Clements, Brad; Froggatt, Andrew; Goodger, David J.; Griffin, Ivan; Licquia, Jeff; Loon, Ronald van; Rawat, Harish; Ranawake, Udaya; Sundbakken, Marius; Thomas, Deepak; Turnbull, Stephen J.; Woodhouse, David; Stones, Richard; Chri
    Published by Peer Information Inc.
    ISBN 10: 1861003013 ISBN 13: 9781861003010
    New PAPERBACK Quantity Available: 1
    Cloud 9 Books
    (Wellington, FL, U.S.A.)

    Book Description Peer Information Inc. PAPERBACK. Book Condition: New. 1861003013 New Condition. Bookseller Inventory # NEW7.1710903

    More Information About This Seller | Ask Bookseller a Question

    Buy New
    US$ 59.99
    Convert Currency

    Add to Basket

    Shipping: US$ 4.99
    Within U.S.A.
    Destination, Rates & Speeds


    Neil Matthew and Richard Stones; Brad Clements; Andrew Froggatt; David J. Goodger; Ivan Griffin; Jeff Licquia; Ronald van Loon; Harish Rawat; Udaya Ranawake; Marius Sundbakken; Deepak Thomas; Stephen J. Turnbull; David Woodhouse; Richard Stones; Christopher Browne
    Published by Apress (2000)
    ISBN 10: 1861003013 ISBN 13: 9781861003010
    New Paperback Quantity Available: 1
    Irish Booksellers
    (Rumford, ME, U.S.A.)

    Book Description Apress, 2000. Paperback. Book Condition: New. book. Bookseller Inventory # M1861003013

    More Information About This Seller | Ask Bookseller a Question

    Buy New
    US$ 172.29
    Convert Currency

    Add to Basket

    Shipping: FREE
    Within U.S.A.
    Destination, Rates & Speeds