AiA 210: “Zone.js” with Jia Li



Special Guests: Jia Li

In this episode, the Adventures in Angular panel talks with Jia Li about Zones.js. Check-out today’s episode to hear this topic plus more!

Show Topics:

1:20 – What are zones?

1:25 – Jia: It is a library developed 4 years ago.

1:45 – Panelist: Execution context? What is this?

1:50 – Jia answers this question.

2:42 – I know it’s big in Angular because it kind of takes care of itself. What are the new things you have done in zones and let’s talk about that?

3:01 – Jia: I started contributing 2 years ago. About 1 year ago I was using Angular. I would like to talk about different

3:35 – Where are zones used in Angular – lots of people don’t know where it is.

3:48 – Jia: For four parts.

6:23 – What is this framework that you are talking about? Check-out the links for this framework.

6:42 – Panelists chime-in with their comments.

7:29 – Jia: It is a standalone package in Zone.

8:27 – Going back to John’s question. I only ran into it a few times – one time in one of my classes I made a new behavior subject. That subject got created before the zone. Anything I did outside of Angular zone, didn’t know what was going on. Once I stuck the behavior subject in one of the classes everything got taken care of. You kind of monkey patch…

what else gets monkey patched by zones?

9:28 – Jia answers the question.

10:54 – Monkey-patch is a term that we use in this industry. What is it?

11:05 – Jia answers this question.

Jia: Monkey patch basically is overriding the procedure for the API.

14:05 – What are some of the new things you are doing? I know you’ve done some new things and what’s new with Zones?

14:28 – Lia: It’s all about the performance.

16:55 – Panelist: I didn’t know all about these hooks – so that’s cool! I knew about handling errors, but I didn’t know there are different ways to work with the tasks. I am curious what kind of interesting things have you done with Zones as an Angular developer?

17:38 – Lia answers the questions.

19:15 – Debugging and tests are good for Zones. But it sounds like you are saying that Zones is not good for…

19:50 – Lia answers the question.

20:35 – Panelist: Sounds like Zones is doing what you need out of the box for…

20:51 – Panelist: You improved some of the performance? Zones doesn’t have that much of a footprint and is pretty lightweight. How much did you better the performance? 20-30%?

2:25 – Jia – I think the library is faster. There is a lot of garbage collection.

It’s not that much.

22:47 – Advertisement – Code Badges!

23:38 – Panelist: So it will help with garbage collection. That is good to know. Cool to know that you can optimize such a small library with…

23:48 – Jia comments.

26:09 – Panelist: Gottcha.

26:16 – Jia continues this topic.

Jia: A lot of new things are happening with the testing in the Zone. There are a lot of new features in the syntax.

27:35 – That is a nice feature to add back in.

27:43 – Jia continues the talk.

28:55 – Panelist: There are a lot of tests in this Repo. Do Zones generally work out of the box or do you have to add support for different things? What are the criteria to add support to? Blue Birds added to the list somehow.

29:32 – Jia answers this question.

30:03 – Panelist: Can the GIST team add support or only can the Zone team add it?

30:37 – Jia: Other teams can add support to their libraries. It’s public.

31:10 – Panelist: This is over my head, but is there a plan to get the documents going?

31:32 – Jia adds a comment.

31:41 – Panelist: Google this: What the heck is zones?

An opposite side of the question: What would happen to Angular if you remove Zones.js?

32:10 – Jia answers this question.

332:37 – Zones is effectively how it works sweetly in Angular. It’s not totally true but if you remove Zones.js – which I see some people doing – why would someone do this? Is it heavy is it…?

33:20 – Jia answers the question.

Jia: It’s not good for the Angular element.

34:29 – Panelist: It is an island of Angular.

34:54 – Jia continues this conversation.

35:10 – Panelist: That’s interesting – good to know.

35:18 – Jia: Back to the new features.

38:22 – Jia mentions another feature.

39:43 – JavaScript something haunts you – then you are now a real developer!

40:03 – Jia: Yes, exactly.

40:10 – Panelist: I am going to put some things in the links that the listeners can access. (NG Zone)

40:28 – Picks!

40:31 – Advertisement – Get a Coder Job Course