6
回答
前端,想说爱你不容易!
百度AI开发者大赛带你边学边开发,赢100万奖金,加群:418589053   

看了标题,你可能想到这是来吐槽前端的,确实没错!但本文并不完全是吐槽,大多都是写的最近前端开发的感受。由于自己目前从事web前端开发,这里的前端特指web前端。而关于为什么要写这篇文章,起因是最近看了微信团队的最新内测的微信应用号功能。

先来看下,什么是微信应用号?

这个微信应用号是什么呢?往简单的说就是在微信的壳里面写个小应用,当然调用的都是微信提供的API,按照微信的方式来开发一个小应用。简单看了下微信案例的DEMO,代码结构很清晰,有CSS,JS,还有自定标签类似XML格式,这么看来,前端仔跑不掉了,可以来踩坑微信应用号了...

微信小程序

微信小程序

看了微信小程序代码,突然让我想起来,这个好像在哪儿见过。仔细想想,想起原先阿里前不久搞的WEEX,简直了,相似程度令我咂舌,这都是要上天的节奏?

WEEX

WEEX

注:WEEX是阿里推出的一个用于构建移动跨平台的UI框架。

对比一下写法,基本思想一致:用自定义的标签,结合点CSS,然后弄点JS,一组合,然后就能跑起来了。其实我的内心OS是这样的: 这样特么的也行?一个字,服!

贴上我们老大说的一段话:

目前看来,微信这一套应该是类似 weex,通过 描述性语法 生成多端 native ui(因此才有 text/WeixinJSBridge 这些东西)。不过由于是新的语法,因此基本等于要重新学/重新写,原有前端领域的插件/框架基本不可用。 相信其他大平台/友商(支付宝/UC/百度/xxx) 也会随即推出自己的应用号(小程序),前端阵营势必分裂,极端的情况下可能会出现专门为微信/支付宝开发和优化的前端,即 "微信前端","支付宝前端"... ,自行脑补。 多端开发,成本必然飙升,代码生成器 ,一键生成多端 App 或许将是一个可以做的生意。

微信应用号到底多火?

有幸加入到一个微信应用号开发者的群,加群之火爆,只能上图了。 微信小程序群

再回顾下前端发展趋势

表格布局与内联样式满天飞

最开始的web前端,都是使用table来进行布局,还有大量的内联样式,伴随着DIV+CSS布局的流行,表格布局被淘汰。现在table只是用来展示数据。

jquery一统江湖

国外有大神受够了要兼容各种浏览器,于是写了jquery来解决这些问题,随着jquery的流行,慢慢的兼容性不再是困扰前端开发的主要问题。然后随之jquery的生态圈开始完善,jquery和jquery插件接管了web前端开发的一切。

HTML5和CSS3

便随着HTML5和CSS3标准的发布和实施,仿佛让前端开发看到了前端大一统的曙光,引领前端进入一波学习H5的高潮,这个时候随便面试下,都要问你会不会H5,其实呢,他们的网站根本用不到H5。

MV**框架革命

便随着浏览器的更新,IE逐渐被淘汰,兼容性不再是问题,大神们不在只满足于操作DOM,于是又在操作DOM上又进行了封装,于是乎各种MV,MVVM...框架开始流行。

前端组件化深入人心

React的横空出世,可以说极大的促进了前端组件化的发展,各种React组件如雨后春笋般涌出。在这个时候,以前的前端的各种代码,还都是可以用的,比如jquery插件可以在React使用,只是使用方式非常的蛋疼,React也不推荐这样用。

前端大厂化?

React-Native的出现,让前端在不了解Android和iOS原生组件具体实现的情况下,可以调用原生组件。然后阿里WEEX也开源了,号称WEEX是 A framework for building Mobile cross-platform UI。然后,接下来是微信的这个微信小应用。原理和实现方式大家都是类似的,但是关键是一套代码不能在三个生态里面同时兼容,都有自己的游戏规则。感觉随着前端的发展,估计稍微大点的大厂都会搞自己的前端生态,按照自己制定好的规则去搞一套类似WEEX或者微信应用号的东西出来,让后让其他人去使用。这感觉是作死的节奏啊?NO ZUO NO DIE,NO TRY NO HIGH!

个人感受

当时最开始选择从事前端,看中的是前端简单,所见即所得,一个jquery和jquery插件就能搞定一切了。

而现在呢?现在已经远远不能了!ES6的到来也让原先简单的JS变得复杂起来。React虽然开启了组件化的快车,但是内部状态的管理也变得复杂起来,所以才有了Flux,ReFlux,Redux,Mobx各种状态管理的框架(Mobx官方宣传自己不是react状态管理框架,只是拿来管理状态)。

到前不久稍微踩坑了WEEX,也发现前端要学的东西很多,然后发现发现踩不完坑,弃之。再到现在这个微信小应用,估计前端又得踩不少坑了。可怕的是造了这么多轮子,不知道这些轮子将来的结局怎么样。

反正WEEX刚出来呢,还挺好的,现在呢?不温不火!不知道作为微信的老对手,支付宝会不会也搞个支付宝应用号,然后用weex来开发?总感觉前端的新技术就是各种推翻以前的思想,然后重新来过。最后,还是苦了默默写代码的前端狗。

前端,想说爱你不容易。

结束语

套用狄更斯的一句话:前端正处在一个最好的时代,也是最坏的时代。

本文观点纯属个人见解,如有错误,请指正,如不认同,请轻喷。

参考链接

知乎WEEX讨论

微信应用号开发教程一

微信应用号开发教程二

微信应用号资源汇总

微信应用号段子图片

- END -

相关文章:
React Native 一周年回顾
React.js 最佳实践(2016)

作者往期佳作:
WEB前端 -“懒人”养成计划
浏览器存储及使用

作者来自力谱宿云 LeapCloud 团队_UX成员:叶文兵 【原创】
MaxLeap博客首发:
https://blog.maxleap.cn/archives/1188

叶文兵,专注做页面仔已三年有余,对撸过万恶的IE,偶尔玩玩CSS3,HTML5,现在时常踩踩nginx,docker的坑。
喜欢前端工程自动化的东西,比如gulp,webpack什么的,没事喜欢造造轮子,踩踩坑。
从事开发这么久,坚信两点: 1. 代码不要写死 2.永远不要相信产品

欢迎关注微信订阅号:MaxLeap_yidongyanfa

<无标签>
举报
力谱宿云
发帖于2年前 6回/405阅
共有6个回帖 最后回答: 2年前
大神们不在只满足于操作DOM……什么鬼,本末倒置,我相信,真大神如果能操作DOM解决问题,他绝对不会把MV*给整进来
--- 共有 1 条评论 ---
Narky不是不能操作DOM,而是操作DOM的成本太高了,碎片化操作DOM引起的浏览器重画操作非常影响性能,所以才有了MV**和shadowDOM,尽量减少浏览器重新渲染所消耗的成本 2年前 回复

连css的都还没整明白的路过,各种浏览器,各种平台win,iOS,android,H5,各种兼容测试,╮(╯▽╰)╭,

人生苦短。。

--- 共有 1 条评论 ---
卿亦随风现在俺还在做兼容IE6+的“大”项目……哈哈哈!项目如果不死,一期一期做下来,估计要三年才做的完。然而现在原型图还没出……所以,现在使劲的把项目中可能用到的东西弄出来学习 2年前 回复

上了贼船了嘛,能咋办?如果不复杂点,门槛不高点,你工资能涨吗?一堆小白突击个把月就能做的你一样好的话,你就快失业了,最起码工资涨不动。

好吧,我厚黑了。

--- 共有 1 条评论 ---
小白白白白白白会心一击啊 hhh 2年前 回复

个人也是从 jQuery -> Backbone -> React 一路走来,回头看看这一切都是在 3-4 年内发生的……但我相信这一切变化都是值得的,所谓 Atwood 定律嘛

PS:最近在维护一个3年前基于 Backbone 写的坑,很是怀念 React 的那一套环境……

股市有泡沫,经济有泡沫,IT 技术也有泡沫:

  • 编程语言的泡沫:Java/Ruby/C#/PHP ...
  • UI设计的泡沫:扁平化/实物化/Bootstrip ...
  • 交互工具泡沫化:以 javascript 为语言的各种框架,甚至据说 go 语言也能在浏览器运行...

草草地写了上文,可能有不对的地方,大家权当热闹。

顶部