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

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.

主站蜘蛛池模板: 彝良县| 长泰县| 吉木萨尔县| 贵德县| 门头沟区| 周至县| 汝南县| 如东县| 兰西县| 常德市| 安丘市| 军事| 达孜县| 上蔡县| 株洲市| 合水县| 南漳县| 太康县| 罗源县| 沈阳市| 通道| 漠河县| 宁都县| 新竹县| 株洲县| 拉孜县| 巴彦县| 鹤壁市| 乌苏市| 桓仁| 始兴县| 宝坻区| 壶关县| 呼伦贝尔市| 桂林市| 绥中县| 陈巴尔虎旗| 冷水江市| 洛川县| 曲麻莱县| 建湖县|