search
HomeWeb Front-endHTML Tutorial为什么我们的web前端变的越来越复杂_html/css_WEB-ITnose

前端发展了也有些年头了,曾记得很多年前,聊起前端,都觉得是很简单,那个时候都没有前端工程师这个职位。可现在,前端已经逆袭了,已经不是原来的样子了,各种技术层出不穷,显的越来越高深莫测了。前端真的变得那么难了吗?在我看来,前端还是原来的前端,虽然有些关变换,但不应该像现在一样复杂。

框架太多了,新技术太多了

我们总是迷失在各种技术了,总是迷失在新技术带了的各种概念里。angular rect  bootstrap 等等,他们给我们带来便利的同时也给我们带来了麻烦。我们真的需要这些框架吗?学会了这些框架就等于学会了前端吗?

或许很多时候我们学习这些不是为了去解决问题,是为了显示我们是多么的有格调,我们掌握了多少流行的东西,更或者是用来粉饰我们的简历。我们已经远离的技术的真正价值。记得几个月前和一个前端在讨论,他问我现在有哪些流行的技术;我说,我把手机上的1px的线能显示一个像素就是流行技术了(手机端一个像素的线会大于一个像素)。

这些新技术虽然带给我们方便,但我们不能迷失在里面,我们要去解决问题;再有一个例子,css3的动画有BUG,但是我在网上很少见人去讨论这些问题,讨论多就是各种框架的使用。我们不能迷失在各种新技术里,主要我们就会把简单的问题度复杂化了,会把我们的前端变的很复杂。

我们还在抱着过时的准则当圣经

曾几时雅虎的前端优化准则成为了标准。但是几年过去了,那些准则还在束缚着现在的人们。

比如在移动端 大家习惯用zepto,我这里不是喷这个zepto。因为现在网速快了,加载个jquery已经感觉不除开比加载zepto慢了,但是很多人还是在用这个zepto,zepto有很多bug,远没有jquery成熟。网上说的性能,至少我测试的时候没发现jquery性能赶不上他。我不知道哪些说jquery性能不好的人有没有测试比对过。

再举个例子,前端js css发布前压缩的问题。以前压缩也是因为网速慢,现在除了核心的压缩以外,一般的我觉得根本没必要压缩了,压缩了调试还麻烦,还有一堆配置,增加项目复杂度,压缩真的有必有吗?

关于模块化开发,模块化开发也是抄的沸沸扬扬,貌似是必备的技能,但是我们有多少项目需要模块化开发,他们给我们带来多少便利?至少我做过的项目大多数是用不倒模块化开发的。

我们的代码变得怪异难懂

我不知道从什么时候,前端的代码写的越难懂就越能显示水平。代码是要尽量保持可读性的。能用通俗的写法写的,尽量不用怪异的写法写,哪怕我要多写几行代码,我们也要保持代码的可读性。但是现在的前端代码以别人看不懂为荣,以用了某些高级应用为荣,前端的代码编写已经进入了误区。有时候我发现身边的一些人,代码那些怪异的写法,他自己根本也不知道为什么那么写,只是单纯的觉得那样写看起来水平高而已,仅仅如此而已。

我们这些老前端没给新手一个明确,切实的指引

JavaScript的原型继承算是比较重要的,但是我读了很多JavaScript的书,没有发现那本书真正把他讲清楚了,至少现在没发现。那么多书,讲了那么多时髦的东西,我们却没讲出这个最基础的概念。再比如说,书上讲的的很多css3的东西都是W3C的文档改编的,网上的。我不知道大家再用css3的时候有没有发现很多的bug,这些bug难倒不需要写在书里让我们的新人少走一些弯路吗?

我们都教给新手很多时髦东西,让他们在这些时髦的东西里迷失,却没人把最重要的教给他们,不是我们的失职吗?

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
What is the purpose of the <datalist> element?What is the purpose of the <datalist> element?Mar 21, 2025 pm 12:33 PM

The article discusses the HTML <datalist> element, which enhances forms by providing autocomplete suggestions, improving user experience and reducing errors.Character count: 159

What is the purpose of the <progress> element?What is the purpose of the <progress> element?Mar 21, 2025 pm 12:34 PM

The article discusses the HTML <progress> element, its purpose, styling, and differences from the <meter> element. The main focus is on using <progress> for task completion and <meter> for stati

What is the purpose of the <meter> element?What is the purpose of the <meter> element?Mar 21, 2025 pm 12:35 PM

The article discusses the HTML <meter> element, used for displaying scalar or fractional values within a range, and its common applications in web development. It differentiates <meter> from <progress> and ex

What is the purpose of the <iframe> tag? What are the security considerations when using it?What is the purpose of the <iframe> tag? What are the security considerations when using it?Mar 20, 2025 pm 06:05 PM

The article discusses the <iframe> tag's purpose in embedding external content into webpages, its common uses, security risks, and alternatives like object tags and APIs.

What is the viewport meta tag? Why is it important for responsive design?What is the viewport meta tag? Why is it important for responsive design?Mar 20, 2025 pm 05:56 PM

The article discusses the viewport meta tag, essential for responsive web design on mobile devices. It explains how proper use ensures optimal content scaling and user interaction, while misuse can lead to design and accessibility issues.

How do I use HTML5 form validation attributes to validate user input?How do I use HTML5 form validation attributes to validate user input?Mar 17, 2025 pm 12:27 PM

The article discusses using HTML5 form validation attributes like required, pattern, min, max, and length limits to validate user input directly in the browser.

What are the best practices for cross-browser compatibility in HTML5?What are the best practices for cross-browser compatibility in HTML5?Mar 17, 2025 pm 12:20 PM

Article discusses best practices for ensuring HTML5 cross-browser compatibility, focusing on feature detection, progressive enhancement, and testing methods.

How do I use the HTML5 <time> element to represent dates and times semantically?How do I use the HTML5 <time> element to represent dates and times semantically?Mar 12, 2025 pm 04:05 PM

This article explains the HTML5 <time> element for semantic date/time representation. It emphasizes the importance of the datetime attribute for machine readability (ISO 8601 format) alongside human-readable text, boosting accessibilit

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
2 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
2 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. How to Fix Audio if You Can't Hear Anyone
2 weeks agoBy尊渡假赌尊渡假赌尊渡假赌

Hot Tools

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Powerful PHP integrated development environment

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

VSCode Windows 64-bit Download

VSCode Windows 64-bit Download

A free and powerful IDE editor launched by Microsoft

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Integrate Eclipse with SAP NetWeaver application server.