官术网_书友最值得收藏!

Chapter 1. Why JavaScript Concurrency?

JavaScript is not a language associated with concurrency. In fact, it's frequently associated with the exact opposite—concurrency challenges. This has changed a lot over the past few years, especially with new language features in ES 2015. Promises have been used in JavaScript for many years; only now, they're a native type. Generators are another addition to the language that changes the way we think about concurrency in JavaScript. Web workers have been in browsers for several years, and yet, we don't see them used that often. Perhaps, it has less to do with workers and more about our understanding of the role that concurrency plays in our applications.

The aim of this chapter is to explore some general concurrency ideas, starting with what, exactly, concurrency is. If you don't have any sort of concurrent programming in your background, it's fine because this chapter is a perfect starting point for you. If you've done concurrent programming in the past using JavaScript or some other language, think of this chapter as a refresher, only with JavaScript as the context.

We'll wrap up this chapter with some overarching concurrency principles. These are valuable programming tools that we should keep in the back of our heads while writing concurrent code. Once we have learned to apply these principles, they'll tell us whether we're on the right track with our concurrency design, or that we need to take a step back and ask ourselves what we're really trying to achieve. These principles take a top-down approach to the design of our application. This means that they're applicable from the very start, even before we've started writing any code. Throughout the book, we'll be referring to these principles, so if you only read one section in this chapter, make sure it's Concurrency principles at the end.

主站蜘蛛池模板: 江孜县| 黄石市| 会昌县| 嘉荫县| 息烽县| 稷山县| 韶山市| 常德市| 东平县| 旬邑县| 扎囊县| 十堰市| 会宁县| 新泰市| 绥芬河市| 鱼台县| 孝感市| 襄汾县| 右玉县| 黔西| 越西县| 西平县| 土默特左旗| 永清县| 广安市| 曲沃县| 武宣县| 香格里拉县| 大足县| 绩溪县| 新源县| 饶平县| 扎赉特旗| 宜君县| 京山县| 云南省| 唐山市| 九江县| 泸水县| 班玛县| 手游|