The benefits of learning theoretical knowledge of front-end computer

The purpose of this writing, primarily because of an old front-end and exchange.

I think learning theory knowledge of computer is useful, very helpful for career development. He believes that the underlying application development and development are two different things, the front part of application development, theory of knowledge a complete waste of time. Specific details will not say, and finally broke up.

However, one thing we are agreed: computer learning theoretical knowledge can not let your business page write faster, better, it is not a silver bullet, can not solve all development. If you are still in the entry level, this study did not much use, but to learn the basics of the front end more useful (this sentence for the front-end non-technical education).

I think for the front-end computer learning theory knowledge is there are two advantages:

  1. Know, know why
  2. Open up horizons, multi-dimensional development

1. know, know why

We all know that in JavaScript, there are two types of data, namely the basic types and reference types.

basic type

let a, b
a = 1
b = a
b = 3
console.log(a) // 1
console.log(b) // 3

Reference types

let a, b
a = { msg: 'hello' }
b = a
b.msg = 'world'
console.log(a) // { msg: "world" }
console.log(b) // { msg: "world" }

Why change the value of the basic type b, a will not change? In reference types in the value of b is changed, a change also followed? If you studied memory management, and knowledge of compiler theory, we can understand this phenomenon.

From a procedural point of view, the memory is abstracted as a one-dimensional array, a and b are occupied in a memory location, is stored in memory and their respective values.

The reference type is different, when you create a reference type data, you need to allocate a block of memory in the heap, and then returns the address of this memory. That a = { msg: 'hello' }this operation, a store is an address. Performed b = aafter, a and b point to the same address. When b.msg = 'world'while this operation is performed, the value is changed in this memory, it is not difficult to understand why the reference type is changed in value b, A followed changed.

These are just one example, there are many more examples not list them.

Learning theoretical knowledge allows us to not only see the surface of the computer program, but also to see the essence of the program is calculated. Think about it, you write a line of code from the beginning, through lexical analysis, parsing, generating machine code, and finally into an instruction is executed in the CPU, and the data you have clear understanding of how to transfer as chest between the CPU and memory this feels wonderful to behold.

2. open up horizons, multi-dimensional development

A good front-end is not just a front-end, do not just stared at the third of an acre, more than the knowledge to understand the front end.

Before a project starts, there is usually a demand for discussion. If you do not understand the theory of knowledge, when talking to the database server, concurrency and other terms, you can only be a dark eyes, edgeways, quietly sitting on the side. But if you learn this knowledge, you will be able to guide the country with them, no longer an outsider.

In the front direction, theoretical knowledge but also have its uses. For example babel, we need to use compiler theory; research webgl, knowledge had to spend graphics; learn software engineering, testing you will understand the importance and necessity of team norms. To put it plainly, front-end and front-end general computer knowledge to understand the theory is seen standing on different dimensions of the problem.

The computer has been developed for decades, countless middle obsolete technology, front-end or just fire up the last few years, maybe someday this career is gone. If this happens, you can do?

Technology will be outdated theoretical knowledge will not become obsolete, as long as the von Neumann architecture is still, what you've learned has been helpful. Learn the theoretical knowledge of computer, quit the front, but also competent else.

in conclusion

  1. Theoretical knowledge of computer is useful.
  2. Just to get to learn the basics of the front end, the level of feeling about it, to learn a theoretical knowledge of computer.

For more articles, so stay tuned

Guess you like

Origin www.cnblogs.com/woai3c/p/12625779.html