Benefits of front end learning computer theory


The purpose of writing this article is mainly from the communication with an old front-end.

I think it’s very useful to learn computer theory and it’s very helpful to career development. He thinks that application development and bottom development are two things. The front end belongs to application development, and learning theoretical knowledge is a waste of time. Let’s not talk about the details. In the end, we broke up in a bad mood.

However, we have reached a consensus on one point: learning computer theory knowledge can’t make your business page write faster and better. It’s not a silver bullet and can’t solve all the problems in development. If you are still at the entry level, it’s useless to learn this, but it’s more useful to learn the front-end basic knowledge.

I think learning computer theory knowledge has two advantages for the front end

  1. Know what it is and why it is
  2. Broaden our horizons and develop in multiple dimensions

1. Know what it is and why it is

As we all know, there are two types of data in javascript: basic type and reference type.

Basic types

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

reference type

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

Why does the value of basic type B change and a will not? In the reference type, the value of B changes, so does a? If you have studied memory management and compiler principles, you can understand this phenomenon.

From the point of view of program, memory is abstracted as a one-dimensional array, a and B occupy a position in memory, and their respective values are stored in memory.

When creating a reference type data, you need to allocate a piece of memory in the heap, and then return the address of this memory. Namelya = { msg: 'hello' }In this operation, a stores an address. implementb = aAfter that, a and B point to the same address. Whenb.msg = 'world'When this operation is executed, it changes the value in this memory, so it’s not difficult to understand why the value of B changes in the reference type, and a changes with it.

The above is only one example, and there are more examples.

Learning computer theory knowledge can let us not only see the surface of the program, but also see the nature of program computing. Think about it. You can write down a line of code, go through lexical analysis, syntax analysis, generate machine code, and finally become instructions to be executed in the CPU, and you know how the data flows between the CPU and memory. How wonderful this feeling is.

2. Broaden our horizons and develop in multiple dimensions

A good front-end is not only a front-end, don’t just stare at the front of an acre of land, but also to understand the knowledge outside the front-end.

Before a project starts, there is usually a requirement discussion. If you don’t understand the theoretical knowledge, when you talk about database, server, concurrency and other terms, you can only feel the darkness with your eyes and sit quietly. But if you have learned this knowledge, you will be able to point out with them, no longer an outsider.

In the front-end direction, theoretical knowledge is also useful. for examplebabel, we need to use the compiler principle; researchwebglYou have to use the knowledge of graphics; after learning software engineering, you will understand the importance and necessity of testing and team specification. To put it bluntly, the front-end and ordinary front-end who understand computer theoretical knowledge look at problems from different dimensions.

The computer has been developed for decades, and there are countless technologies eliminated in the middle. The front end is still popular in recent years. Maybe one day this profession will be gone. If that happens, what else can you do?

Technology will be out of date, theoretical knowledge will not be out of date, as long as the von Neumann system is still in place, what you learn will always be useful. Learn computer theory well, do not do front-end, but also do other things.


  1. Knowledge of computer theory is very useful.
  2. Just start to learn the front-end basic knowledge, feel almost the level, and then to learn computer theory.

Please pay attention to more articles

Recommended Today

SQL exercise 20 – Modeling & Reporting

This blog is used to review and sort out the common topic modeling architecture, analysis oriented architecture and integration topic reports in data warehouse. I have uploaded these reports to GitHub. If you are interested, you can have a lookAddress: recorded a relatively complete development process in my hexo blog deployed on GitHub. You can […]