一个后端程序员对前端技术的彩虹屁

2021-12-13 11:05:01 +08:00
 WadeLaunch

我上次正式的写前端代码还是 10 年前,那时候要处理各种浏览器的兼容问题,IE 678 ,Firefox ,Chrome 等等。那时候 WebSocket 标准还是草案阶段,Firefox 和 Chrome 实现的版本还不一样,其他浏览器根本不支持,要开发一个聊天的功能,用了多种方案兼容不同的浏览器。

那时候大家的简历都是写的“熟悉 Div+CSS”,哈哈。而我从来没有真正把 CSS 里的 float: left|right, clear: left|right 搞明白,只知道加了某一行,刷新浏览器,噎,可以了。

JavaScript 框架大部分都是用的 jQuery ,有些项目用的 IBM 的 dojo ,还有 Yahoo 的什么框架,名字也忘记了。

用 Node.js 写聊天功能的后端逻辑,各种回调搞到吐。

后来也写过一些自己用的监控管理页面,一般都是用的 jQuery 和 Bootstrap 。


直到最近我要做一个业务管理后台,同时想趁机学一下久仰大名的 Vue 和前端的各种最新技术,就找到一个使用 Vue 的开源后台方案。在学习使用这些新技术过程中,让我每天都感叹现在的前端技术太强了,太好用了,太牛逼了。

请原谅我下面的失态。

ES6 真是太好用了!!!

1. for of, for in, Array.isArray(), Object.keys()...,让循环简单了很多。
2. Let, const, destructuring, template string 太方便了。
3. async, await, promise 太好用了,彻底解决了回调黑洞。
4. Arrow function 赞赞赞!
5. fetch() 这个 API 真是简练啊,同时给 axios 点赞。
6. 给 new FormData() 点赞!
7. 各种浏览器都实现了 ES6 ,然后终于把 IE 淘汰了(同情还要兼容 IE 的朋友)
8. 还有很多优点没写,有同样感觉的可以补充。

CSS 里的 display: flex 真棒! CSS 其他的新技术我还没学,肯定有很多好用的技术。

然后 Vue 太牛逼了!想起以前用 jQuery hide/show 、append DOM 苦日子,我现在每天都感叹 Vue 牛逼!这就是响应式(reaction) 啊?

题外问:非浏览器的原生界面是否一直都是响应式这种方案? Vue 是把这种技术移植到了浏览器前端?

再来一次:Vue 牛逼!

在编辑器保存后浏览器自动刷新界面,太方便了🥰。这是用 vite 实现的吧?还没有仔细研究 vite 的功能。

最后,TypeScript 这么牛逼的语言 V 站上怎么才 5 页讨论帖啊,比 Rust 还少,它比 Rust 简单多了吧,是大家很少用吗?类型系统这么强的语言怎么不用,能避免大部分写 JavaScript 时的低级 bug ,赶紧用起来。 虽然我现在不用 Node.js 了,但我认为新项目应该要强制用 TypeScript ,可以避免很多问题。

我本来打算上周就写贴彩虹屁的,但拖延症发作,今天看到下面这贴,被它催更(写)了。 “现在的前端技术栈真的太恶心了!”

13354 次点击
所在节点    程序员
119 条回复
yuezk
2021-12-13 14:14:04 +08:00
哈哈,有点就像三体里面冬眠的人醒来之后的感觉
leega0
2021-12-13 14:26:19 +08:00
什么三大框架,Web Components 才是未来。
DOLLOR
2021-12-13 14:33:17 +08:00
TS 真是舒服,特别是按下点的时候,就弹出想要的东西。不用像以前写 JS ,老记不住接口、字段名,要来回在代码和文档之间反复切换,还怕拼写错误。
qichunren
2021-12-13 14:39:06 +08:00
了解一下这个 hotwired 这个技术
tairan2006
2021-12-13 14:48:57 +08:00
主要还是浏览器更新换代了

另外 React 有个 P 的美感
Austaras
2021-12-13 15:15:29 +08:00
@murmur js 里哪来的 class 给你用啊,谁告诉你 jsx 是 html 的
murmur
2021-12-13 15:18:20 +08:00
@Austaras 长得像 html ,又不是 html ,处处都是异类,坚持原生 js 就不要用 xml 语法啊,倔强到底
lanten
2021-12-13 15:32:00 +08:00
@66beta


所谓单文件就是 css 与 js 放在一起,小组件无所畏惧,大型业务组件呢?上千行的代码难道不是糟糕的代码吗?
murmur
2021-12-13 15:33:01 +08:00
@lanten react 可以拆函数,vue 也可以拆组件,大型业务组件都不拆 react 只会可读性更糟
lanten
2021-12-13 15:40:16 +08:00
@murmur

只有新手才会在 jsx 中添加大量业务代码。

vue 的 template 类 UI 描述方案饱受诟病的核心原因是在 js 代码中无法插入元素,只能手动创建 VNode ,以及没有 TS 类型提示,这将导致功能性、灵活性丢失。
sunmoon1983
2021-12-13 15:48:28 +08:00
Yahoo 的那个是吊 YUI 吧?
TomatoYuyuko
2021-12-13 15:50:09 +08:00
我是 jq->knockout->vue ,算是平滑过渡了,我感觉这才叫解放生产力。花里胡哨的东西终将被历史淘汰
ilylx2008
2021-12-13 15:52:42 +08:00
最近用 vue ,也是同样感慨。
shapl
2021-12-13 15:55:13 +08:00
最近在写 nuxt.js ,更加感慨。
chouchoui
2021-12-13 15:55:13 +08:00
前有吹 Go 语法美感,后有吹 React 美感
🤢
SxqSachin
2021-12-13 16:01:17 +08:00
工作写 vue ,个人玩写 react 。还是喜欢 react 一些,不喜欢 vue 可能是因为公司里的屎山代码搞得我心态崩溃。
CodingNaux
2021-12-13 16:10:09 +08:00
看 vue 的文档总头昏.vue3 composition api 没 react hook 那么自然
Incrus
2021-12-13 16:26:40 +08:00
@Austaras https://zh.javascript.info/class
有 class 的

然后 @murmur `前端从盘古开天辟地以来写的都是 class ,到 react 就成了 className ` 指的应该是
<div class = 'container'>这种 到 React 里面就是<div className = 'container'>
zhea55
2021-12-13 16:33:27 +08:00
@66beta

组件式的编程思维、函数式的编程方式。

控制组件的输入、输出,单向数据流,到处无副作用的方法,不可变数据。


到处都体现着 react 对程序的健壮性、可靠性的极度负责。
TypeError
2021-12-13 17:07:44 +08:00
不知道是不是文档水平问题,我作为熟悉 python 、go 的后端,
学起 react 很舒适,vue 总是感觉很别扭

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/821809

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX