Tag Archive for book

Boost.Asio C++ Network Programming


I recently finished reading “Boost.Asio C++ Network Programming” written by John Torjo and published by Packt Publishing. Information given by the publisher:

Overview:

  • Augment your C++ network programming using Boost.Asio
  • Discover how Boost.Asio handles synchronous and asynchronous programming models
  • Practical examples of client/server applications
  • Learn how to deal with threading when writing network applications
  • Harness the power of Boost with plenty of examples that you can build upon

What you will learn from this book:

  • How to easily reference Boost.Asio programming
  • Synchronous versus asynchronous using Boost.Asio
  • How threading affects programming using Boost.Asio
  • Create your own echo client and server
  • More examples of client/server applications, both synchronous and asynchronous
  • Implement your own asynchronous operations
  • Co-routines: asynchronous operations with a synchronous feel
  • Use Boost.Asio for SSL Networking
  • Debug Boost.Asio
  • Use Boost.Asio for more than just networking

I love the Boost libraries, and I’m interested in network programming, so I decided to read this book. The book has a hands-on approach with a couple of sample programs. What I like is that these sample programs have been structured in such a way so they can be reused for your own projects. They are like skeleton examples, and all source code can be downloaded from the book’s website.

The book does not cover any real networking theory. For example don’t expect an in-depth discussion of how the TCP, UDP, or ICMP protocols work; that’s not the goal of this book. The goal is to show, with practical examples, how to use the Boost.Asio networking library.

While reading chapter 1, my initial reaction to the contents was rather negative. Chapter 1 is a bit convoluted, not so easy to understand, and even has a couple of errors in it. However, subsequent chapters are structured more logically and are understandable, though sometimes a discussion accompanying a piece of code can be a bit brief.

As an introduction to the library, Chapter 3 shows a basic Echo client/server example which is quite good. There is a synchronous and asynchronous TCP implementation of the client and server, and also a synchronous UDP implementation of the client and server. Subsequent chapters implement more useful client/server applications.

The book is not your one-stop destination for everything related to the Boost.Asio library, but it’s a great introduction to get you started with the library, to get to know the terminology used in the library, to learn about the difference between synchronous and asynchronous programming, to learn how to use multi-threading using the Boost threading library, and to get nice skeleton applications that you can reuse in your own projects. Several skeleton applications are provided such as synchronous and asynchronous versions, and single-threaded and multi-threaded versions.

Share

Professional C++, 2nd Edition, Extract

DeveloperFusion has posted an extract from my book “Professional C++, 2nd Edition”. The extract explains constructors in C++11.
You can read it here.
For more information about the book, source code, sample chapters, the book forum and other resources, go to the book’s homepage on wrox.com.

Share

“Professional C++, Second Edition” Featured on the Microsoft VC++ Team Blog

My book “Professional C++, Second Edition”, published by Wiley/Wrox, is now featured in a dedicated post on the Microsoft Visual C++ Team Blog :)
Read the VC++ Team Blog post here.

Share

Work On My Book “Professional C++, Second Edition” Is Finished

I just finished everything for my book “Professional C++, Second Edition” by Wiley/Wrox :)
I think it will go on sale maybe around October, I don’t know the exact date yet.
After a bit more than a year of work, it’s finished :D
It was really a huge amount of work, but it was definitely worth it, and a very interesting experience.

Here is the official link.

Share