Boost.Asio C++ Network Programming Cookbook: Over 25 hands-on recipes to create robust and highly-effi cient cross-platform distributed applications with the Boost.Asio library - Softcover

Radchuk, Dmytro

 
9781783986545: Boost.Asio C++ Network Programming Cookbook: Over 25 hands-on recipes to create robust and highly-effi cient cross-platform distributed applications with the Boost.Asio library

Synopsis

Over 30 hands-on recipes to create robust and highly-efficient cross-platform distributed applications with the Boost.Asio library

About This Book

  • Build highly efficient distributed applications with ease
  • Enhance your cross-platform network programming skills with one of the most reputable C++ libraries
  • Find solutions to real-world problems related to network programming with ready-to-use recipes using this detailed and practical handbook

Who This Book Is For

If you want to enhance your C++ network programming skills using the Boost.Asio library and understand the theory behind development of distributed applications, this book is just what you need. The prerequisite for this book is experience with general C++11. To get the most from the book and comprehend advanced topics, you will need some background experience in multithreading.

What You Will Learn

  • Boost your working knowledge of one of the most reputable C++ networking libraries-Boost.Asio
  • Familiarize yourself with the basics of TCP and UDP protocols
  • Create scalable and highly-efficient client and server applications
  • Understand the theory behind development of distributed applications
  • Increase the security of your distributed applications by adding SSL support
  • Implement a HTTP client easily
  • Use iostreams, scatter-gather buffers, and timers

In Detail

Boost.Asio is a powerful cross-platform C++ library designed by experts in the field to reduce complexity and simplify network programming, preserving efficiency at the highest level. Network programming is one of the most complicated areas in the software development industry, especially when high efficiency is a critical requirement. Even experienced software engineers make mistakes when developing distributed applications due to the inherent complexity of the tools available in modern operating systems. This is where Boost.Asio steps in and provides an excellent level of abstraction, making sure that you can create brilliant client-server applications with minimal coding. An additional benefit provided by the library is that the resulting application is cross-platform and can be built for most modern operating systems including Windows, Mac, and Linux.

Starting with recipes demonstrating the execution of basic Boost.Asio operations, the book goes on to provide ready-to-use implementations of client and server applications from simple synchronous ones to powerful multithreaded scalable solutions. Finally, you are presented with advanced topics such as implementing a chat application, implementing an HTTP client, and adding SSL support. All the samples presented in the book are ready to be used in real projects just out of the box.

As well as excellent practical examples, the book also includes extended supportive theoretical material on distributed application design and construction.

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

About the Author

Mark Collin is a professional software tester who has been working in the software testing industry since 2001. He started his career in the financial sector before moving in consultancy. As a consultant, he has had the privilege of working on numerous projects in many different sectors for various large and well-known companies. This has allowed him to gain an eclectic range of skills and proficiencies, which include test automation, security and penetration testing, and performance testing. He loves technology and is always exploring new and exciting technology stacks to see how they can enhance the capability and reliability of automated checks. He is fully aware that though automation is good, at the moment, nothing can replace the human mind when it comes to having a well-rounded test solution. He is a great believer in open source technology and spends a lot of time contributing towards open source projects. He is the creator and maintainer of the driver-binary-downloader-maven-plugin, which allows Maven to download ChromeDriver, OperaDriver, the IE driver, and PhantomJS to your machine as a part of a standard Maven build. He is also a core contributor to the jmeter-maven-plugin, a tool that allows you to run JMeter tests through Maven. Mark has also contributed code to the core Selenium code base.

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