Summary
In this chapter, we analyzed the development patterns that are used to program asynchronous and concurrent procedures. We also learned how to use them to efficiently orchestrate the execution of asynchronous procedures that run either in order or parallel to each other.
At first, we had a refresher on how Callbacks are used in JavaScript programming and how they are an integral part of web development. We analyzed their benefits and limitations when used in large and complex implementations.
Right after this, we were introduced to the concepts of Promises. We learned how jQuery's Deferred and Promise APIs work and how they differ from ES6 Promises. We also saw where and how they are used internally by jQuery itself, as an example of how they can lead to more readable code and simplify such complex implementations.
In the next chapter, we will proceed to learning how to design, create, and use Mock Objects and Mock Services in our applications. We will analyze the characteristics that...