为什么Web前端变的越来越复杂,变得更加难学了
前端发展了也有些年头了,曾记得很多年前,聊起前端,都觉得是很简单,那个时候都没有前端工程师这个职位。可现在,前端已经逆袭了,已经不是原来的样子了,各种技术层出不穷,显的越来越高深莫测了。前端真的变得那么难了吗?在我看来,前端还是原来的前端,虽然有些关变换,但不应该像现在一样复杂。
框架太多了,新技术太多了
我们总是迷失在各种技术了,总是迷失在新技术带了的各种概念里。angularrect bootstrap等等,他们给我们带来便利的同时也给我们带来了麻烦。我们真的需要这些框架吗?学会了这些框架就等于学会了前端吗?
或许很多时候我们学习这些不是为了去解决问题,是为了显示我们是多么的有格调,我们掌握了多少流行的东西,更或者是用来粉饰我们的简历。我们已经远离的技术的真正价值。记得几个月前和一个前端在讨论,他问我现在有哪些流行的技术;我说,我把手机上的1px的线能显示一个像素就是流行技术了(手机端一个像素的线会大于一个像素)。
这些新技术虽然带给我们方便,但我们不能迷失在里面,我们要去解决问题;再有一个例子,css3的动画有BUG,但是我在网上很少见人去讨论这些问题,讨论多就是各种框架的使用。我们不能迷失在各种新技术里,主要我们就会把简单的问题度复杂化了,会把我们的前端变的很复杂。
专门建立的学习Q-q-u-n ⑦③①-⑦⑦①-②①① 分享学习方法和需要注意的小细节,不停更新最新的教程和学习技巧(从零基础开始到前端项目实战教程,学习工具,全栈开发学习路线以及规划)
我们还在抱着过时的准则当圣经
曾几时雅虎的前端优化准则成为了标准。但是几年过去了,那些准则还在束缚着现在的人们。
比如在移动端大家习惯用zepto,我这里不是喷这个zepto。因为现在网速快了,加载个jquery已经感觉不出比加载zepto慢了,但是很多人还是在用这个zepto,zepto有很多bug,远没有jquery成熟。网上说的性能,至少我测试的时候没发现jquery性能赶不上他。我不知道哪些说jquery性能不好的人有没有测试比对过。
再举个例子,前端js css发布前压缩的问题。以前压缩也是因为网速慢,现在除了核心的压缩以外,一般的我觉得根本没必要压缩了,压缩了调试还麻烦,还有一堆配置,增加项目复杂度,压缩真的有必有吗?
关于模块化开发,模块化开发也是炒的沸沸扬扬,貌似是必备的技能,但是我们有多少项目需要模块化开发,他们给我们带来多少便利?至少我做过的项目大多数是用不到模块化开发的。
我们的代码变得怪异难懂
我不知道从什么时候,前端的代码写的越难懂就越能显示水平。代码是要尽量保持可读性的。能用通俗的写法写的,尽量不用怪异的写法写,哪怕我要多写几行代码,我们也要保持代码的可读性。但是现在的前端代码以别人看不懂为荣,以用了某些高级应用为荣,前端的代码编写已经进入了误区。有时候我发现身边的一些人,代码那些怪异的写法,他自己根本也不知道为什么那么写,只是单纯的觉得那样写看起来水平高而已,仅仅如此而已。
public static void main(String[] args) {
// 1.继承Thread类
ExtendsThread extendsThread = new ExtendsThread("test1"www.huizhonggjpt.cn);
extendsThread.start(www.jiuhuaylgw.cn);
// 2.实现Runnable接口
ImplementsRunnable implementsRunnable = new ImplementsRunnable(www.lafei6d.cn "test2");
// 实现Runnable接口的类不能单独使用,最终还是要依赖Thread
Thread implementsRunnableThread =www.baihua178.cn new Thread(implementsRunnable);
implementsRunnableThread.start(www.xinyueylzc.cn);
static class ExtendsThread extends Thread{
private String name;
public ExtendsThread(www.tengyao3zc.cn String name) {
this.name = name
@Override
public void run(www.shentuylzc.cn) {
System.out.println("ExtendsThread is " + name);
static class ImplementsRunnable implements Runnable{
private String name;
public ImplementsRunnable(String name) {
this.name = name;
@Override
public void run() {
System.out.println("ImplementsRunnable is " + name);
我们这些老前端没给新手一个明确,切实的指引
JavaScript的原型继承算是比较重要的,但是我读了很多JavaScript的书,没有发现那本书真正把他讲清楚了,至少现在没发现。那么多书,讲了那么多时髦的东西,我们却没讲出这个最基础的概念。再比如说,书上讲的的很多css3的东西都是W3C的文档改编的,网上的。我不知道大家再用css3的时候有没有发现很多的bug,这些bug难倒不需要写在书里让新人们少走一些弯路吗?
为什么Web前端变的越来越复杂,变得更加难学了的更多相关文章
- 初学web前端 ,请大家多多提意见 前几天学的 学写盒子模型
<!DOCTYPE html><html><head lang="en"> <meta charset="UTF-8&qu ...
- Web前端开发的就业前景怎么样,薪资待遇如何
信息技术的迅速发展,使IT技术者们赶上了一个百年难遇的好机会,尤其是国家出台了“互联网+”的政策后,更是催生了IT行业的就业空间,使其呈现爆发性增长. 如今,微信逐渐成为了大家主要的交流工具,随着各种 ...
- 小白到web前端工程师需要学习哪些知识?
随着web3.0时代,那么web前端开发技术人才越来越吃香,而且web前端领域划分越来越细,对技术的需求越来越高,想学习web前端的人也是越来越多.那么,如何学习web前端知识?从哪开始?转型成为we ...
- 零基础转行web前端,要学习多久?需要掌握些什么?
web前端开发技术人才越来越吃香,而且web前端领域划分越来越细,对技术的需求越来越高,想学习web前端的人也是越来越多.那么,如何学习web前端知识?从哪开始?转型成为web前端工程师需要学些什么? ...
- 初学者如何迅速学习web前端开发
首先告诉你的是,零基础学习开始学习web前端肯定难,web前端的专业程度本身就不简单,学习这事本来就是一件非常煎熬的事情,人都不愿意学习,可是没办法,为了生存掌握一个技能,你必须学,如果你认真的对待, ...
- 微信小程序----关于变量对象data 和 前端wxml取后台js变量值
(一)页面变量对象data 对象data 有两个方面用途 第一,前端wxml的数据渲染是通过设置此对象中定义的变量进行关联展现的 第二,定义JS页面中的页面局部变量,使其整个页面中可使用或调用 对象d ...
- Web前端工程师成长之路——知识汇总
一.何为Web前端工程师? 前端工程师,也叫Web前端开发工程师.他是随着web发展,细分出来的行业.Web前端开发工程师,主要职责是利用(X)HTML/CSS/JavaScript ...
- Web前端开发推荐阅读书籍
前言 前端工程师在中国兴起也就5年左右,以前公司里没有专门前端工程师的这个职位,很多前端方面的任务都是由全栈工程师来完成,有的基础一点的后台或者设计的帮助分担一些.但是随着互联网的快速发展,特别是所谓 ...
- 关于大型网站技术演进的思考(二十一)--网站静态化处理—web前端优化—下【终篇】(13)
本篇继续web前端优化的讨论,开始我先讲个我所知道的一个故事,有家大型的企业顺应时代发展的潮流开始投身于互联网行业了,它们为此专门设立了一个事业部,不过该企业把这个事业部里的人事成本,系统运维成本特别 ...
- 关于大型网站技术演进的思考(十九)--网站静态化处理—web前端优化—上(11)
网站静态化处理这个系列马上就要结束了,今天我要讲讲本系列最后一个重要的主题web前端优化.在开始谈论本主题之前,我想问大家一个问题,网站静态化处理技术到底是应该归属于web服务端的技术范畴还是应该归属 ...
随机推荐
- Spark 集群 任务提交模式
Spark 集群的模式及提交任务的方式 本文大致的内容图 Spark 集群的两种模式: Standalone 模式 Standalone-client 任务提交方式 提交命令 ./spark-subm ...
- spring源码 继承AttributeAccessor的BeanDefinition接口
/** * A BeanDefinition describes a bean instance, which has property values, * constructor argument ...
- hdu4632 Palindrome subsequence 回文子序列个数 区间dp
Palindrome subsequence Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/65535 K (Java/ ...
- yum 安装 Mysql error ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES) 开启远程连接 修改登入密码 忘记root密码 配置防火墙规则 随手mark
yum 安装 MYsql: yum install mysql mysql-server mysql-devel -y 1.1 登入报错: ERROR 1045 (28000): Acc ...
- IntelliJ IDEA ULTIMATE 2019.3 破解注册详细教程【亲测有效,持续更新~】
申明:本教程 IntelliJ IDEA 破解补丁.激活码均收集于网络,请勿商用,仅供个人学习使用,如有侵权,请联系作者删除. 注意 本教程适用于 IntelliJ IDEA 所有版本,请放心食用 ...
- PHP四种输出语句
//echo 深入理解echo ,echo是一个函数 //echo 功能:向浏览器输出一个或多个字符串; //echo 返回值:void 无返回值; echo "今天是个好天气"; ...
- python实现微信发送服务器监控报警消息代码实现
这篇文章主要介绍了python3.8 微信发送服务器监控报警消息代码实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 ! python版本 > ...
- 使用DOM4J生成XML文档
package xml; import java.io.FileOutputStream; import java.util.ArrayList; import java.util.List; imp ...
- [转自官方文档] Django——render()
每个视图都需要做2件事,返回一个包含被请求页面内容的HttpResponse对象或者一个404 快捷函数 render( 请求, 模板, 内容) 载入模板,填充上下文,再返回它生成的HttpResp ...
- Learning Combinatorial Embedding Networks for Deep Graph Matching(基于图嵌入的深度图匹配)
1. 文献信息 题目: Learning Combinatorial Embedding Networks for Deep Graph Matching(基于图嵌入的深度图匹配) 作者:上海交通大学 ...