Introduction to web Front-end development and web development

Source: Internet
Author: User
Tags website performance

Introduction to web Front-end development and web development

Some of my classmates and friends have asked me questions. On weekends, I will talk about my understanding and experience in web front-end development. After all, I don't have enough experience, and I can't even count as an engineer, let alone Daniel. Today, I don't talk about technology. Many people have better technical skills than I do, and they share the same things. However, everyone's understanding is different.

Three general understandings and experiences of front-end development

I have three general experiences in front-end development:

First, it is complicated and difficult, and the difficulty is even higher than the general background development. If someone thinks that the frontend development is simple, it means that he is not getting started yet.

Second, web Front-end development is moving towards responsive and mobile terminals.

Third: the front-end engineer is actually a programming technician.More technical and interactive than uidesign", Of course, some people say that front-end engineers are designers of engineers and engineers of designers. Since it is a programming job, it will not be a lifetime, after all, too tired. After several years of coding, I want to sell fruit. I also hope that my teachers and sisters will take care of my business.

Website creation and web Front-end development

Front-end development engineers are a relatively new profession, and they have been valued for less than a few years at home and abroad. After the Internet entered the 2.0 age, the web development technology was unprecedentedly developed, especially the front-end technology. In recent years, as users have higher and higher requirements on experience, front-end development is becoming increasingly difficult. The jobs that were designed and created once were finally divided into two positions: UI Designer and web Front-end development engineer (front-end development engineer,Vertical development in the direction of art and technology.

In terms of technical systems, front-end developers need to understand a lot of things, and some of them are described as complicated.

A few years ago, when there was no front-end development, we called creating web pages. The main content was static pages, and users also focused on browsing. But now there have been earth-shaking changes, web pages no longer only carry single texts and images. Rich Media make the page content more vivid and focus more on user experience.

In the past, graphic design software, DW, and simple HTML, CSS, and js were used to create web pages. Now, it is far from enough to master these pages. Whether it is development difficulty or development method, the current web Front-end development is close to the traditional website background development, and I think it is more complicated than general background development. Is a website or mobile app professional and powerful. The combination of J2EE + Oracle and ASP + Access on the server is not significantly different. However, the front-end user experience gives users an intuitive impression. So now it's not just web page creation, but web Front-end development. Most people think that web Front-end development replaces the previous web page production. I think the current web page production and web Front-end development jobs both exist. If you only master the previous web page production technology, you are still called a web page producer (I have also seen many web page producers on the recruitment page). It cannot be called a web Front-end engineer.

 

What technologies and conditions should be mastered for front-end Web development?

 

First, master the basic technologies that were previously mastered by web producers.Such as various page la S, object-oriented programming, JS Modular programming, design patterns, front-end MVC, and so on.

2. website performance optimization and SEO.For example, minimize the number of HTTP requests, css Sprites Image Integration Technology, merge css and js, and use CDN technology. Reduce the number of DNS searches and avoid redirection.

Third, we need to design the UI.Of course, in some relatively small companies, front-end engineers also assume the role of uidesign. Although there are professional UI designers in large companies, front-end engineers will use the UI design to help you better understand the designer's intent and correctly feedback design defects when the prototype is incomplete, blocking the problem in the design process will greatly reduce the number of UI bugs. For example, the designer will give the container style in the ideal state, however, it often ignores text overflow, long continuous characters, whether the container width and height adapt to content size changes, and many other details, such as intercepting or hiding the overflow part, because designers do not necessarily understand the principle of "boundary value testing", and these problems are often discovered during the testing stage, if you can remind the designer to complete these scenarios when getting the UI design draft, it will naturally reduce the number of test regression times.

4. At least one background programming language is required.The special nature of our profession determines that we need to communicate frequently with backend workers. If you only focus on page implementation and do not consider the background, some of the pages you write are discarded code and cannot be used for data interaction in the background. On the other hand, we can learn from the recruitment information that almost all front-end development jobs in the company now clearly require background languages. In actual work, we may also need to perform data interaction between the client and the server.


Fifth, master various browser compatibility solutions.There are many mainstream browsers in China and abroad, with different kernels, for example, IE with Trident as the kernel, FireFox with Gecko as the kernel, Opera with Presto as the kernel, google chrome and Safari with Webkit as the kernel, etc, this adds a lot of difficulties to front-end development and is also a headache for most people. Not to mention that there are so many browsers in the market, there are only enough problems for a single IE series family, in particular, IE6 and IE7. This month's ranking in the global browser market for last month, with more than 50% Internet Explorer users. Although Microsoft will stop supporting the old version of Internet Explorer from January 1, January 2016. However, I believe that in the past few years, earlier IE browsers will still account for a large proportion, and it will take a few days to die.


 

Sixth, you must learn to use various tools for auxiliary development.

7. In addition to mastering technical knowledge, you can also grasp theoretical knowledge.This includes rendering principles, code maintainability, component usability, and hierarchical semantic templates.

8. Be careful and patient.Like the UI design, we must be accurate to every pixel, and our patience is also reflected in many aspects. For example, if the encoding is not standardized, the time needed to solve the compatibility issue far exceeds the page implementation time.

9. Love and keep learning new technologies.The front-end has new technologies generated almost every day. In this industry, we must constantly learn new technologies while laying a solid foundation. Including development process deployment, preprocessing technology, front-end frameworks (such as RequireJS, ReactJS, and AngularJS), mobile terminals, and standard specifications.

 

My own experiences

 

Compared with the learning curve after the server language is slow, the learning curve developed by the front-end is fast first and then slow.So now many students or people who are already engaged in work are beginning to want to flood into the trend of web Front-end development and learn how to become a "talent" by themselves ", however, I know that most people are stuck in the usable phase, because it is difficult to become a real web Front-end developer every step forward. Although some people learn from their work every day, they are still confused. On the other hand, as mentioned in the beginning, this is still a relatively new profession. The research on some norms and best practices is in the exploratory stage, and some new technologies will flash up at any time. For example: browser Wars are getting increasingly fierce, and cross-browser compatibility solutions are still varied. Currently, my company generally requires us to be compatible with IE7, which is often the case in the past, it's hard to make all the versions of IE compatible. I'm glad to find that there is a bug in the  browser. No way, stay up late.

Front-end development engineers are a profession that is easy to learn and difficult to learn. We must thoroughly and systematically learn and master the front-end knowledge. If we simply learn it, we can become web Front-end engineers, then I don't think there will be any problems in the market where front-end engineers cannot be found with high salaries. Experienced web Front-end development engineers know that to be proficient in this line, you must be proficient in 10 lines. Some experienced front-end engineers are constantly seeking for new skill breakthroughs. The most obvious manifestation is that they are beginning to focus on "bottom-layer protocols ", that is, HTTP, third-party applications, system docking, manufacturing tools, workflows, etc. At this time, the focus of thinking has been separated from "Page cutting" and changed to "out-of-solution". For example, to set up a site, able to build a site framework, anticipate all risks in the future (front-end) development of the site, and provide solutions one by one.

Let's talk about the dangers and opportunities of a half-Road trip. As the saying goes, the road goes into the mountains. Every industry has its own way, and naturally it does not want to do it. The front-end technology field has a lot of entrepreneurs. Let's analyze the psychology of the transfer. First, we can see that front-end technologies are easy to get started, and there is a large gap in the demand for front-end technologies on the Internet. Second, front-end technologies are WYSIWYG and feel quick to learn. Third, the front-end of a job similar to XX around me looks good, and I seem to be fine. Fourth, I don't like what I do now, I want to change the industry, and I just want to get started with front-end technologies quickly, choose him. Of course, there is still the Fifth. I do know and like to be a Web Front-end. It is worthwhile to pay more for it.

The mentality of a new person entering this line or another person is more likely to go through two extremes,First, we can only see that the new industry is good. Second, we only think that the original work is very bad.. However, no matter what industry, you should consider your career planning first. In this line, you must answer these questions clearly:

1. What can I do?

2. What can I do?

3. What are my advantages?

4. What are my weaknesses?

5. What are the benefits of doing this?

6. What will I pay for doing this?

7. How can I define a success?

This is because these questions will be challenged during the interview. If you do not know what to say, either you are not responsible for your future, or you are rooted in the Grass-roots family, it's hard to convince you that entering this line is a trade-off that seems reasonable again and again.

 

Misunderstandings

 

Some people think that front-end engineers do nothing to do when they go to work. They just play, get some results, collect two pages, and make some innovations. Of course, this expression is very lightweight and even a joke. The web Front-end work is definitely not as simple as playing, not as simple as the previous web page creation, sometimes it will implement or optimize some effects, work overtime. It took two days to solve a problem last week. Therefore, front-end development is a special task. Front-end engineers are easy to work with and seem lightweight, but it is definitely not that simple to do. The content covered in the development process is very broad. We need to consider the implementation of the interface from the technical point of view, avoid the technical point of view, and think from the user's point of view, how can we better accept the boring data presented by technology and better present information.

At the beginning, many people were so fascinated that they were lost. Compared with the preceding example, the pattern of dtplus DDIs removed from reset.css because it is thought that the style of the two labels will consume some rendering performance; or whether to change the for loop to a while loop to improve js execution speed. Although these considerations seem reasonable, they are not the performance bottleneck. That is to say, you have made great efforts to refactor the code to improve the page performance, it is often better to merge two css files to Improve the efficiency. Just like using a square meter to measure things, there is no need to be precise to the 10 digits after the decimal point, because it is not accurate to the 2 digits after the decimal point. This kind of technical misunderstanding often makes people pick up sesame seeds and drop watermelon.

 

Requirements for self-learning and work

 

N. C. Zakas once encouraged everyone. Now I have become my requirement for myself and my advice to those who are determined to follow the Web Front-end development direction: Love your work. I love the challenges brought by cross-browser development, the Internet technology, industry peers, and your tools. The Internet is growing too fast. If you do not love it, you cannot keep up with it. This means that you must read more and do more to ensure that your talent is growing. We need to strive for easy-to-maintain and high-quality front-end code. You can't be idle when you get off work. You have to do something useful to yourself. You can participate in the development of some open source software, read a good book, and read the blog of Niu Ren. I often attend meetings to see what others are doing. There are many things you can do to make yourself grow fast. I believe that the rewards will be rewarded.

 

 

I will share it here this time. One morning it's over, so it's time to have lunch. Next time, I will continue to share with you the specific technologies related to front-end development and how to learn about development.

Finally, due to the rush of time and limited qualifications, the statement in this article only represents my opinion. If it is not accurate, I hope you will forgive me. Please give me a strict correction.

QQ Group for front-end learning and communication: 328058344


Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.