Home > Article > Web Front-end > How about doing web front-end development?
Front-end engineer is an indispensable professional R&D role in software product development in the Internet era. In a narrow sense, front-end engineers use professional skills and tools such as HTML, CSS, and JavaScript to implement product UI design drafts into website products, covering user PC and mobile web pages, and dealing with visual and interactive issues. Broadly speaking, all parts of user terminal products related to vision and interaction are the professional areas of front-end engineers.
#What are the development paths and prospects of front-end engineers?
Front-end is a relatively new industry. In the early days of the development of the Internet (1995~2005), there were no professional front-end engineers.
With the development of the Internet, starting from about 2005, the role of formal front-end engineers was recognized by the industry. By 2010, the Internet began to fully enter the mobile era, and the status of front-end engineers became more and more important. Technology is developing faster and faster, and various new ideas, design patterns, tools, and platforms are developing rapidly, and the skill requirements for front-end engineers are getting higher and higher. There are some data that illustrate the rapid development of the front-end industry.
A considerable number of the most popular new programming languages after 2010 are related to the front end, such as Dart, Clojure, CoffeeScript and TypeScript.
As the most important front-end programming language, JavaScript has been firmly on the list of popular programming languages on the Github platform in recent years, both in terms of code volume and number of followers.
The demand for front-end in the industry continues to increase, and the salary of front-end programmers is in a leading position in the industry.
Some students asked: "There are many demands for front-end work, and there are always changes and changes. There are not many actual technical points. The product determines the business logic. Will working on the underlying basic services be more challenging and have a better career future?" ?”
Indeed, the closer it is to the work at the business and product level, the greater the difference in demand and the more frequent the changes may be. It’s not just the front-end that changes over and over again, students doing business on the PHP server also face this problem, and the business logic changes over and over again. The lower the level, the more versatile it is, and the changes are relatively few.
However, everything has two sides. First of all, you can think about it this way, whether the market for underlying basic services is bigger or the market for Internet businesses and products is bigger. Secondly, the universality of basic services is easy to achieve, but how to universalize it at the product level and how to use engineering and tooling to improve development efficiency in business-driven product development is actually a difficult problem. Rich Internet products have changed and are changing our lives. However, as product creators, how engineers can make themselves better off is an area worth studying.
In addition, don’t think that there are not many actual technical points. Here are a few examples: implementing curve and surface animation, calculating the shortest path of the map, making png static pictures perform local movements similar to gif pictures, lottery games , HTML5 games with physical effects, 3D charts, WebGL video stream processing for augmented reality, etc., these are all practical problems encountered in the front-end field.
As far as JavaScript is concerned, it is very challenging to design the most appropriate model to efficiently solve real-world problems in actual projects. As a typical new-generation programming language, JavaScript is rich in features, flexible in use, and has excellent performance. Object-oriented, functional programming, various design patterns, MVC and MVVM are attractive enough in their own right.
The front-end needs to solve interface and interaction problems. In fact, problems at the UI level have always been a difficult problem in software engineering because the UI is constantly changing. The compatibility of various browser versions, Web standards, mobile devices, and multi-terminal adaptation have given front-end engineers great challenges and also have high requirements on the capabilities of front-end engineers. Many UI problems have more than one solution, and many problems have very clever ideas and wonderful solutions. Front-end is a very creative group among engineers, because this industry requires rich creativity and imagination.
Front-end engineers are also the setters, practitioners and promoters of Web standards, and the current W3C standards are not limited to browsers, but also include various handheld smart devices, vehicle-mounted devices, smart homes, etc. In the future era of the Internet of Everything, front-end engineers will not only be engineers on web pages, but engineers in all fields of human-machine interaction.
The front-end field is developing rapidly, and various new technologies and new ideas are constantly emerging. This is a good phenomenon. However, the rapid development of the front-end also brings some problems. For example, a classmate asked me what exactly I should learn. Angular.js, React, Node.js, ES6, ES7, CoffeeScript, TypeScript... It seems that there are always too many things to need. Learning, some things seem to be replaced by other new technologies and become "outdated" before they are fully understood.
In fact, it is still the same sentence. Front-end engineers are software engineers first, and the foundation is the most important. If the foundation is not solid, all application skills will be "clouds". What are the foundations of the front end? Basic skills in HTML, CSS, and JavaScript, as well as basic skills in mathematics, algorithms, data structures, operating systems, and compilation principles.
An excellent front-end engineer must have a field that he is good at, and delve into it deeply enough. At the same time, he must have a vision and be able to "cross-border". You can take front-end as a career, but don't limit your skills to the front-end field, because there are many things that can only be seen more clearly and thoroughly by standing outside the front-end.
Don’t blindly follow the trend when learning something. When everyone is talking about AngularJS, you immediately go to learn it. After a few days, everyone is talking about React, so you put down AngularJS and go to learn React. There are a lot of knowledge points in the front-end field, and there are many things worth learning. Smart students know how to spend time learning systematic knowledge and study it deeply enough, because only in this way can we summarize the rules and form a methodology, so as to maximize the value of learning.
The above is the detailed content of How about doing web front-end development?. For more information, please follow other related articles on the PHP Chinese website!