Programming Books C Java PHP Python Learn more Browse Programming Books
C++ Network Programming, Volume 2 and over one million other books are available for Amazon Kindle. Learn more
  • List Price: $59.99
  • Save: $15.86 (26%)
Only 10 left in stock (more on the way).
Ships from and sold by
Gift-wrap available.
FREE Shipping on orders over $35.
Used: Acceptable | Details
Sold by extracash4kids
Condition: Used: Acceptable
Comment: A lot of wear to cover and some pages, dust jacket may be missing, with writing and/or highlighting Has water damage, still usable Ships Fast!!!!
Access codes and supplements are not guaranteed with used items.
Sell yours for a Gift Card
We'll buy it for $2.00
Learn More
Trade in now
Have one to sell? Sell on Amazon
Flip to back Flip to front
Listen Playing... Paused   You're listening to a sample of the Audible audio edition.
Learn more
See this image

C++ Network Programming, Volume 2: Systematic Reuse with ACE and Frameworks Paperback – November 8, 2002

ISBN-13: 978-0201795257 ISBN-10: 0201795256 Edition: 1st

Buy New
Price: $44.13
15 New from $22.00 20 Used from $14.98
Amazon Price New from Used from
"Please retry"
"Please retry"
$22.00 $14.98
Free Two-Day Shipping for College Students with Amazon Student Free%20Two-Day%20Shipping%20for%20College%20Students%20with%20Amazon%20Student

Frequently Bought Together

C++ Network Programming, Volume 2: Systematic Reuse with ACE and Frameworks + C++ Network Programming, Volume I: Mastering Complexity with ACE and Patterns + The ACE Programmer's Guide: Practical Design Patterns for Network and Systems Programming
Price for all three: $133.50

Buy the selected items together

Shop the New Digital Design Bookstore
Check out the Digital Design Bookstore, a new hub for photographers, art directors, illustrators, web developers, and other creative individuals to find highly rated and highly relevant career resources. Shop books on web development and graphic design, or check out blog posts by authors and thought-leaders in the design industry. Shop now

Product Details

  • Paperback: 384 pages
  • Publisher: Addison-Wesley Professional; 1 edition (November 8, 2002)
  • Language: English
  • ISBN-10: 0201795256
  • ISBN-13: 978-0201795257
  • Product Dimensions: 7.4 x 0.7 x 9.1 inches
  • Shipping Weight: 1.4 pounds (View shipping rates and policies)
  • Average Customer Review: 4.7 out of 5 stars  See all reviews (22 customer reviews)
  • Amazon Best Sellers Rank: #241,704 in Books (See Top 100 in Books)

Editorial Reviews

From the Back Cover

Do you need to develop flexible software that can be customized quickly? Do you need to add the power and efficiency of frameworks to your software? The ADAPTIVE Communication Environment (ACE) is an open-source toolkit for building high-performance networked applications and next-generation middleware. ACE's power and flexibility arise from object-oriented frameworks, used to achieve the systematic reuse of networked application software. ACE frameworks handle common network programming tasks and can be customized using C++ language features to produce complete distributed applications.

C++ Network Programming, Volume 2, focuses on ACE frameworks, providing thorough coverage of the concepts, patterns, and usage rules that form their structure. This book is a practical guide to designing object-oriented frameworks and shows developers how to apply frameworks to concurrent networked applications. C++ Networking, Volume 1, introduced ACE and the wrapper facades, which are basic network computing ingredients. Volume 2 explains how frameworks build on wrapper facades to provide higher-level communication services.

Written by two experts in the ACE community, this book contains:

  • An overview of ACE frameworks
  • Design dimensions for networked services
  • Descriptions of the key capabilities of the most important ACE frameworks
  • Numerous C++ code examples that demonstrate how to use ACE frameworks

C++ Network Programming, Volume 2, teaches how to use frameworks to write networked applications quickly, reducing development effort and overhead. It will be an invaluable asset to any C++ developer working on networked applications.


About the Author

Dr. Douglas C. Schmidt is the original developer of ACE and The ACE ORB (TAO). He is a Professor at Vanderbilt University, where he studies patterns, optimizations, middleware, and model-based tools for distributed real-time and embedded systems. He is a former editor-in-chief of C++ Report and columnist for C/C++ Users Journal.

Stephen D. Huston is President and CEO of Riverace Corporation, a provider of technical support and consulting services to companies who want to keep software projects on track using ACE. Steve has nearly ten years of experience with ACE, and more than twenty years of software development experience, focusing on network protocol and C++ networked application development in a wide range of hardware and software environments.

More About the Authors

Discover books, learn about writers, read author blogs, and more.

Customer Reviews

4.7 out of 5 stars
Share your thoughts with other customers

Most Helpful Customer Reviews

13 of 13 people found the following review helpful By Joseph K. Cross on December 9, 2002
Format: Paperback
Writing networked applications using modern operating
systems and languages looks like it should be easy, but it
is emphatically not. The na‹ve designer of networked
applications will encounter a thicket of problems including
lack of portability, distributed performance bottlenecks,
maintaining correctness during shutdown, and managing
recovery from partial failures.
"C++ Network Programming, Volume 2, Systematic Reuse with
ACE and Frameworks" by Douglas Schmidt and Stephen Huston
provides some powerful help in the design and implementation
of networked applications. This help comes in the form of
several frameworks.
A few words about the definition of "framework." The first
step up from writing applications that interface directly
with operating systems is to insert object-oriented wrappers
between the application and lower level services. These
wrappers are classes that encapsulate the low level,
functionally specified, services such as operating systems
and protocol stacks. This first step was taken in the
predecessor volume to the present book, "C++ Network
Programming, Volume 1: Mastering Complexity with ACE and
Patterns", by the same authors, where a collection of
wrappers, called the ACE wrappers, is provided that not only
raises the level of the application interface from
functional to object-oriented, but also provides portability
at the same time.
For example, consider an application that directly uses
sockets. This application would depend on the syntax and
functional details of that operating system's s operating
system's socket implementation.
Read more ›
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
4 of 4 people found the following review helpful By Andrew T. Finnell on November 21, 2002
Format: Paperback
Finally, a book that presents, clearly and concisely, the philosophy and design patterns behind the ACE framework. It is refreshing to read from two authors so well-versed in design patterns and gifted in what it takes to create a robust, cross-platform, network programming framework.

"Systematic Reuse with ACE and Frameworks" reads as a tutorial for the seasoned C++ programmer, but also presents the material in small digestible chunks that you can refer to again and again. It lays out a series of best-practices, and is a "must-have" for any programmer who wants to CORRECTLY create strong networking software or even wants to see good examples of how patterns can simplify effort in such a complex environment.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
2 of 2 people found the following review helpful By Craig Rodrigues on November 25, 2002
Format: Paperback
C++ Network Programming, volume 2, continues in the tradition
of volume 1, of doing an excellent job of explaining how to
program robust network software in C++ using the ACE framework.
The book is well-structured, and easy to read. Each section explains:
- the general concepts associated with a specific network programming
topic, for example reactive event loops, or asynchronous I/O
- the underlying operating system API's associated with each topic, for
example, for reactive event loops, the Unix select()
or the Windows WaitForMultipleObjects() calls
- the underlying design patterns for properly using these facilities,
such as the Reactor, Proactor, Service Configurator
- and the accompanying C++ class in ACE for using this design pattern
The text and code examples are very clear and easy to follow.
I particularly like the technique of using sidebars throughout the
text, which draws your attention to particularly interesting
nuggets of information.
My favorite parts of this book were the parts which covered in depth three
of the most core concepts in the ACE framework:
- the Reactor (reactive event loops),
- the Proactor (using asynchronous I/O for dispatching events),
- the ACE_Task (using concurrency/multithreading efficiently in an
object-oriented fashion)
Understanding these core concepts is essential for building
high-performance middleware and networked software. These concepts
were used extensively by Schmidt, when his team used ACE to build
The ACE ORB (TAO), a C++ CORBA implementation, so this book
will help with understanding some of the internal implementation
details of TAO.
Read more ›
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
2 of 2 people found the following review helpful By Shahzad Aslam-Mir on November 21, 2002
Format: Paperback
The second of an invaluable 'living' text on network programming. I'd rate it six stars, so the rating scale needs revision. This second volume is probably to network programming and using a pattern language for it, what Knuth's books are to the practice of computer science, and heres why -
Schmidt and his research group has put in many years of painstaking research in this work and evolved the ACE-TAO network programming platform which these texts use to illustrate the sound guidance on the principles and practices they refer to in the texts.
The books are not meant to be exhaustive in their descriptions, rather give concise and effective pointers and guidance in the most important areas - if you need exhaustive details and full working code, go to the website and get the source and research papers.
Writing network software is hard and developing in C++ is no picnic either. Doing the two together for enterprise level of scalability and performance is an extremely complex and difficult task. Realistically it takes many revisions to get this type of software robust, and bug free. Personally, I wish I had this book when I started out in my personal quest of discovery in these areas. The book eloquently and effectively identifies and illustrates the moving parts of any generic canonical client or server side network application through patterns. These in my opinion are one of the strengths of Schmidt's work. The other is the example implementations illustrated in ACE-TAO for the diehards wanting to see the code details that work. The authors also highlight oft forgotten issues and gotchas that might surface during development. The book does this by talking about the design of the ACE toolkit.
Read more ›
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again

Most Recent Customer Reviews