Why Learning web Front-end development ?, Learning web development?
This article mainly analyzes the related directions and technologies of web development, and provides a reference for those who want to invest in web development.
What is WEB development?
Speaking of WEB development, we have to propose two architecture models: B/S architecture and C/S architecture.
In the early stages of Internet development, most systems adopt the C/S architecture. C stands for the client, S stands for the server, and common software, such as QQ (the WEB version is not counted. By assigning tasks to the Client and Server, this architecture reduces the communication overhead of the system and makes full use of the advantages of the hardware environment on both ends. The B/S architecture (Browser/Server) is emerging with the rise of Internet technology. It is an improvement of the C/S architecture. In this architecture, the user interface is completely implemented through the browser, and some transaction logic is implemented at the front end, but the main transaction logic is implemented on the server side, forming the so-called 3-tier (three-tier architecture) architecture. The B/S architecture utilizes sophisticated and universal browser technologies to implement the powerful functions that originally required complex specialized software and reduce development costs, is a brand new software system construction technology.
The C/S architecture is suitable for single-host or LAN-based systems. It is very difficult to develop distributed systems that span the entire Internet, and the client needs to be installed, system updates and component version control become a major problem. In addition, unlike the B/S architecture, you only need to consider server issues. In the C/S architecture, because multiple users access the server at the same time, the calling and dependency between components are complex, in terms of multi-threaded access to shared resources and transaction processing, the client and server must be considered at the same time, and the throughput is greatly limited. Therefore, the Browser/Server mode is the preferred B/S architecture for the current software. The content displayed by the browser is a webpage, so web development can be simply understood as the development of a webpage or website.
WEB development categories and differences
People usually divide the WEB into front-end and back-end. Front-end related positions include front-end designers (UI/UE), front-end developers, and backend developers. Here we will only discuss the differences between front-end development engineers and back-end development engineers (Welcome to add to those interested in design.
- Technology stack differences
Looking at the recruitment websites, the company's requirements for front-end development engineers are nothing more than proficient in HTML, CSS, JS, and good interactive design capabilities. Let's look at the company's requirements for backend development engineers, such as Java development engineers, who must be proficient in Java, be familiar with Java Network Programming, be familiar with open-source frameworks such as SSH, be familiar with Internet development models, and have a clear understanding of caching, cache Design and mode; proficient in TCP/IP, HTTP, and other network protocols; proficient in socket network programming; useful for Java's experience in large-traffic and high-pressure network applications; familiar with Linux/Nginx, familiar with Apache, Tomcat, Resin, and other application servers, Master shell, awk, python, and other system script tools, Master SQL statements, and use databases (MySQL, Oracle ); familiar with Html, Javascript, Css, Ajax, and other page technologies. Familiar with Eclipse, Maven, Ant, SVN, and other software development tools. The nature of the WEB architecture determines the complexity of server development, the complexity of the server determines the technologies that backend developers need to master.
After three years of learning front-end development, most of the students can become excellent front-end development engineers. Similarly, after three years of learning back-end development, most of the students can only get started. Front-end developers need to understand HTML, CSS, and JS. They are only familiar with the usage of other frameworks. These three languages are simple and easy to use. For background developers, the diversity of development languages, selection of technical frameworks, and understanding of platform performance all require experience accumulation. For example, java requires you to be proficient in the Java language, be familiar with the jdk source code, be familiar with JVM performance optimization, be familiar with the SSH framework, be familiar with Mysql, and be familiar with various technologies.
The front-end development entry threshold is low, and the learning curve is faster than that of the server-side development language. The trend is fast first and then slow. Note: the latter is slow because the later learning has exceeded the scope of front-end development, such as SEO, server-side knowledge, and HTTP protocol. These learning processes are slow.
Due to the rapid expansion of the Internet industry, major companies have very high demand for front-end engineers. The final finalization of HTML5 specifications will surely lead to a boom in web. The extension of NodeJS on the server side also makes JS shine. In contrast, the backend engineers and training institutions output a batch of Java and PHP engineers. Even if they cannot meet the requirements of the enterprise, they can basically meet the requirements of the backend engineer market (however, high-end, experienced backend engineers are very popular ). The foreground is far better than that of backend engineers.
Summary
Frontend development is a good start point compared with backend development if you want to enter the Internet industry in a short period of time and have a bright future.
The reasons are as follows:
Front-end development has a low entry threshold, but demand is strong, especially for experienced front-end developers.
Frontend development can accumulate enough experience in the short term, for example, three years, while backend development requires at least five years of experience to accumulate the same level.
Front-end development technology changes slowly. It takes 8 years to final HTML5! Backend development technologies are updated quickly, and various frameworks and architecture models are rapidly changed. You need to learn at all times.
The front-end development technology is becoming more and more mature and has a wider application scope. For example, HTML5 can replace native apps (performance needs to be refined), JavaScript can be used for database operations (MongoDB and other NoSQL support JS syntax), NodeJS can allow JavaScript to run on the server, as long as the Js syntax is used, server programs can be developed without the backend development language.
Front-end development technology supports full-stack development without the support of backend development languages.
What's the reason for not learning about front-end development? NO!
Read more:
- HTML5 finalized after eight years!
- IT needs guidance in life !!! It is strongly recommended to read !!!
- Web application development is different (and better) translation...