Front-end technology
Over the past two years, the entire stack has been very popular, so I have read some front-end technologies. Here I will summarize my understanding of the front-end so that I can have a clearer understanding.
When the front-end develops to the present, the first thing to talk about is node, also called node. js, the language is not a new language, but the idea is very disruptive. It migrates the js Code parsed and executed by the client to the background for execution, this is due to its single-thread, asynchronous IO, and event-driven features. Generally, application operations include network operations and file operations. The emergence of node can better solve IO concurrency, the non-blocking processing mechanism makes the workflow run perfectly, and the V8 engine executes js very quickly, which also improves the user experience to a certain extent. More and more people are using chrome, baidu's statistics on browsers over the past three months (figure 1): I remember that chrome's share was less than 30% a year ago, increasing by 10% a year and growing rapidly. ES6 was released, this improves the chrome performance experience.
Figure 1
Here we will summarize the node because it is excellent. For this reason, many front-end frameworks provide the node download method, which can be installed through npm install.
The development of the front-end is biased towards the development of mobile terminals. More and more people are using mobile devices to access the network. The development of mobile terminals has flooded into many talents. Of course, there are also many technologies, the app development mode is divided into web app, native app, and hybrid development mode. The advantages and disadvantages of the three methods are combined. The hybrid development mode is also popular. The hybrid development mode is simply described as using some frameworks for development, then, you can use phonegap or cordova to package it into the web, Android, and IOS versions. Finally, let's focus on it. Today we will summarize the html5 framework.
There are a lot of htm5 frameworks, and they are really dazzled. It is a headache to choose which one to use. So it is annoying to say that there are too many technical solutions.
Jquery Mobile, a framework officially provided by Jquery for Mobile development, is a relatively early stage. It provides comprehensive components and provides perfect support for queries, I have actually used it for a moment. The interface is still acceptable, but the experience is quite different from that of the native app. js and Jquery js have some compatibility. During page Jump, the implementation method is to load the jump page body to the current page body, which is not very nice to use, but there is no problem in using small projects, if you have compiled a set of compatible Jquery Mobile and Jquery, it is very easy to get started.
Html +, a framework developed by the Chinese html5 alliance. csdn plays a very important role in html +. The support of hbuilder's high-performance development tools and embedded emmet greatly improve the development efficiency, this is close to the native app framework in terms of perceived experience. It has several excellent features: one is to support native APIs, the other is to provide 0.4 million APIs on the official website, and the other is to improve the runtime performance, it is recommended to optimize it internally and improve the running efficiency.
Mui: this framework is an open-source project. It is relatively stable to analyze official materials. In addition to providing some basic components, it also provides some features commonly used by apps, such as sidebar, carousel chart, pull-down refresh, and pull-up loading. You can use them directly. In actual use, the compatibility is also very good, it is worth your use.
Reactnative: this framework is the most similar to native in all frameworks, because its code design is modular and the object processing method, including css processing, apps developed using this framework have the same visual effect and experience as native apps, and support classes written by developers using java and Object-C, using this framework to develop apps is undoubtedly the best in terms of visual effects, but the Object mechanism makes the learning cost relatively high and requires some knowledge of java and Object-C, at the same time, you must have some js advanced and css3 knowledge.
Ionic, which is also an html5 framework. Based on AngularJs, it enriches js, css, and even icons. It feels like it provides a bunch of blocks of various styles and shapes, it is used to build the interface and layout you want. This framework has never been used in practice and should be very good.
Summarizes some app development frameworks, and then summarizes several js frameworks.
AngularJs, this is the most popular front-end framework, two-way data binding, mvc design philosophy, so that every page is visualized, the user experience has been greatly improved, this technology was acquired by google, webstorm provides better support for its syntax, uses CSS 3 flex to easily deploy the interface, and uses AngularJs to initialize and bind modules to data, which is similar to a template.
Vue, this framework is the best translation of Chinese websites at present, because it was created by a Chinese user and has two-way data binding, and the performance experience is also very good. I personally feel that, vue looks more comfortable than AngularJs code. defining data and methods also complies with json specifications. As a background developer, it is easier to accept them.
In a simple summary, there are so many frameworks, each of which is very good. Of course, there are still many other frameworks with limited capabilities and no research efforts. I personally think that in today's rapid development of the Internet, the front-end is so popular that we still need to "understand" these technologies, understand the implementation methods, ideas, and advantages and disadvantages of each technology, and master either of them, after all, human resources are limited. technologies like this are growing too fast and there is no end to learning. Many frameworks are traced back to the source. html + css + js is indispensable. I recently reviewed the html book, now that we know the origin of the htm extension, the implicate tbody In the dom object, and the meaning of the DTD document, we need to lay a solid foundation, css3 box model and js advanced, with this, front-end framework or node learning will get twice the result with half the effort.