初创公司使用 ReactJS 就是在向 Facebook 交税

2016-08-09 14:43:26 +08:00
 FrankFang128

原网站挂了,在此存档。

ReactJS is a tax Facebook levies on startup web development.

https://typed.pw/a/1322

https://www.reddit.com/r/reactjs/comments/4vyo0l/reactjs_is_a_tax_facebook_levies_on_startup_web/

Although initially I was very excited about React, after working on several teams doing React-based web development I ’ ve found the overall amount of effort spent developing web applications is significantly more than vanilla HTML/CSS/JS.

We reached the point where our people spend more time (and code) tricking the framework into doing what we want it to do.

Also performance is abysmal.

The component philosophy of React does offer some organizational benefits, especially for working in a team, but it ’ s nothing that couldn ’ t be replicated by some simple coding conventions.

Facebook - as a company that can ’ t really move fast anymore (and doesn ’ t have to) - knows this imposes the same restriction on smaller companies by taking away their agility and maxing out developer resources for work on what used to be trivial stuff. From Facebook ’ s perspective, React has to serve two functions:

priming and funnelling programmers into their enterprise and

suppressing development efficiency elsewhere.

It ’ s positioned very well to achieve both.

Don ’ t get me wrong, I think it ’ s perfectly well designed to suit Facebook ’ s internal needs while at the same time it ’ s guaranteed to drain resources from startup developers. Intent is not necessary, it ’ s just what happened.

If other shops felt the same way you did about React … about the folly of developing apps with “ vanilla HTML/CSS/JS ” that you don ’ t …

I ’ m fairly confident that almost nobody shares this opinion, so personal attacks on my competency are expected, yes.

The problem with all tech fads is that support for them is absolutely ardent, until the pendulum swings in the other direction.

7018 次点击
所在节点    JavaScript
34 条回复
learnshare
2016-08-09 14:50:05 +08:00
我主要担心它不长久,而且设计思想太跳跃,的确有太多实验性质。
metrue
2016-08-09 16:31:48 +08:00
React 是一个很好的工具,那么为什么不用好工具。是给自己的愚昧交税?
cxbig
2016-08-09 17:26:17 +08:00
人做的不好总喜欢把责任赖在工具上
SourceMan
2016-08-09 17:30:42 +08:00
@cxbig 9494
mdluo
2016-08-09 17:38:47 +08:00
@真阿当
FrankFang128
2016-08-09 17:41:16 +08:00
@metrue 嗯呐,愚昧税,初创乱选框架,以后欠一屁股债。
newghost
2016-08-09 17:49:02 +08:00
这就是对国外大公司的技术迷信,  Facebook 的东西就一定好吗?  Google 的东西就一定高大上吗?

AngularJS 、 Backbone 、 Ember 、 React 则完全使用另外一种开发模型,框架不只是库的简单集合,它还有自己的事件、 DOM 交互模型。

最关键的一点这些些框架把你框住了,用了就不能换。甚至连 ng1 和 ng2 都不兼容。

讲一个真实的例子,某知名创业公司:开始于 backbone 流行时,就用 backbone 写了,后来 angularjs 出来了,就用 ng1 重写了,再后来 ng2 出来了,又在用 typescript 重写中。累不累呀?

早期的 Prototyp/jQuery 只是一些库,基本做事方式还是 html+css+js 。 web 开发的本质并没有变,现代 JavaScript(ES6)的新标准对 jQuery 有着许多借鉴,例如类选择器, DOM 操作等。当你用上这些高层框架,你就会发现离本底 web 开发越来越远,开发越来越复杂。网页加载越来越慢,你也越来越累。


个人比较喜欢类 library 一类的库比如 jQuery , zepto ,这些东西是可以在不重写应用的情况下替换掉,感觉很爽。
FrankFang128
2016-08-09 17:56:30 +08:00
@newghost 他们的前端就是这么闲。
wizardforcel
2016-08-09 18:03:35 +08:00
@newghost ES6 借鉴了类 JS 语言, Dom API 借鉴了 jQ 。
JaHIY
2016-08-09 18:58:26 +08:00
框架就是为了让你减少复杂度和维护的难度,当然是针对大项目而言。
wobuhuicode
2016-08-09 19:02:46 +08:00
要看项目的环境……不要盲目迷信。
一般我自己单人做移动端项目,都是用原生的 JS 比较多,
做到多人的项目,用上框架,就等于默认的定制了开发的标准,这个有什么不好
plqws
2016-08-09 19:20:52 +08:00
人蠢就喜欢怪工具
jiongxiaobu
2016-08-09 20:02:46 +08:00
觉得框架不能满足需求 可以 fork 了改阿 React 只是一个 UI 的框架,已经很轻量了
sinux
2016-08-09 20:06:30 +08:00
@jiongxiaobu 不算轻了
sohu022
2016-08-09 20:07:05 +08:00
肯定要分情况,不是所有项目都适合 React , 也不是创业公司就不适合 React 。 感觉今天楼主观点一直比较极端, 其实没必要纠结这些问题,拿合适的工具做合适的事, 具体项目具体去权衡! 看楼主也是前端老鸟了,难不成楼主是单身,故意七夕引战?
sinux
2016-08-09 20:09:15 +08:00
@jiongxiaobu 稍微复杂一点的应用你就要用上 redux 、 router ...等一系列全家桶
sinux
2016-08-09 20:09:28 +08:00
@sohu022 23333
FrankFang128
2016-08-09 20:23:48 +08:00
@sohu022 我只是存档,这网站挂了
loading
2016-08-09 20:30:16 +08:00
人员太水还是用 jquery 吧…
jiongxiaobu
2016-08-10 08:54:13 +08:00
@sinux 社区用的多但并不是一定要用,担心要给 fb 交税的话可以自己实现自己的方案,又不复杂。

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

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

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

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

© 2021 V2EX