Code Together
C++ Http Client (with boost asio)
Description
Good software developers invest considerable time into learning. Learning programming languages, techniques, getting the basics, and having a clear theoretical knowledge is a starting point and is definitely necessary. Though, what comes next is often even more valuable. Unfortunately, many times it is ignored.
“Gaining real-life experience while developing something actually useful and doing it together with someone who knows what s/he is doing”.
Doing homework, reading, or writing code snippets have their own merits, but some things can only be learned through experience. It is through this valuable experience that you actually internalize what you have been learning. You learn what to do and what not to do, when and where.
The very first steps of human improvement involve imitation of successful behavior. Many of us who are lucky enough to have a senior developer that we can observe at work, have already somewhat understood this fact. For the rest of us who does not have a relevant senior developer close to us, or for those of us who still feels lacking experience about certain subjects, this course is for you.
In “Code Together” series you will actively observe a senior developing a practically useful piece of software. We will
- prepare a minimal work definition
- write samples
- design an API
- do the implementation
together with you. You are advised to actively follow the work being done
- by listening/watching carefully
- by stopping the videos and writing/replicating the code yourself
or even redesigning things where you see appropriate.
The code we show in this lecture is available as an opensource project on github.
In this episode we will be developing a client and a server with http(s) support.
By the end of this course, you will have experience on
- how to implement
o http clients
o API definitions
o sample apps
- how to use boost asio
- how to implement proper lock-safe multitasking. (i.e. using minimal number of locks or no locks at all)
Above all, you will accumulate useful experience about how a seasoned developer thinks and approaches things.
What You Will Learn!
- Will achieve practical understanding of multitasking
- Will be able to implement a http client
- Will be able to implement practical execution flows with multitasking
- Will be able to use an HTTP client from C++
Who Should Attend!
- C++ developers with some amount of know how on multi tasking
- C++ developers with strong urge to discover and learn