V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐关注
Meteor
JSLint - a JavaScript code quality tool
jsFiddle
D3.js
WebStorm
推荐书目
JavaScript 权威指南第 5 版
Closure: The Definitive Guide
FrankFang128
V2EX  ›  JavaScript

这会是 2016 年前端的年末撕逼吗?

  •  
  •   FrankFang128 · 2016-12-14 17:04:43 +08:00 · 26561 次点击
    这是一个创建于 2900 天前的主题,其中的信息可能已经有所发展或是发生改变。

    知乎传送门: https://www.zhihu.com/question/53625252/answer/135820259

    利益相关:不认识阿当……用过 Angular 1 、 React 、 Vue 、 SCSS 、 LESS 、 Grunt 、 Gulp 、 Webpack 等一系列有的没的。

    前端三大爱好:
    1. 语法糖
    2. 字符串转换
    3. 用别人的框架

    现在说 Angular 、 React 或者 Vue 的不好,都是政治不正确滴。

    声明,我没说我站在阿当这一边哈。我可是很怕得罪了整个前端界的呢 O(∩_∩)O !。

    不过依照中国大部分前端的计算机基础知识素养,能跟阿当正面撕逼的也没多少个。

    其实我觉得吧,中国的前端就是认死理,非要给自己带一个「前端」的帽子,生怕别人不知道他只会 JS 。多看看不同意见,多看看别的语言,你会发现 JS 能做的,很少很少。

    以下是我自己理解的,以阿当的口吻说的,大家不要以为真的是阿当说的:

    2016 年我喷了 Sass 、 React 和 Angular ,被前端各种布道者鄙视,于是我们互相伤害起来。
    但我研究的技术可比你们学得这点东西多多了。
    我以我的经验,认为这些才流行几年的玩意儿,是值得怀疑的。
    1. 有些玩意是高手发明出来给高手用的,小公司的几个前端玩得转?
    2. 你们这些布道者只说优点不说缺点是什么意思?安利你听说过没。
    所以前端新人们,你们要长点脑子,别听风就是雨。

    关于 SCSS 和 LESS

    优点你们都吹得那么好,我偏说缺点。
    直接能运行在浏览器里的 CSS 你不用,加一道字符串变化在中间挡着,一来增加上手门槛,要学新知识;二来新的语法增加新的复杂度;三来这玩意有传染性,我想用你的代码我就必须也用 SCSS/LESS 。
    而且,你 SCSS/LESS 依然没有解决你想要解决的问题呀!
    所以我认为弊大于利。

    跨界、 CoffeeScript 、 TypeScript 和 ES6

    前端你为啥这么在意语法糖?你个前端不好好研究优雅的用户体验,去研究什么语法糖,你忙得过来吗?
    CoffeeScript 是 Ruby 社区搞出来的, TypeScript 是 C# 社区搞出来的,它们都是非前端社区的产物,迎合的也是非前端的工程师群体的编程习惯。适不适合前端,走着瞧。
    最终你们这些前端看上了 ES6 ,但是你们这些前端在语法还没成型的时候就用 Babel 来转译是不是有点太激进啊?
    学学 jQuery ,通过原生 JS 来加语法糖,稳定过渡。你们前端咋这么猴急呢?

    关于 Node

    Node.js 作者本人就把这玩意儿当个玩具,你们前端居然当个宝。
    前端没有拿着玩意写后台,而是那它做脚本。
    写写脚本就算了,前端居然还妄图一门语言统一前后端。然后整天布道什么「全栈」。
    可是孩子呀,你一个跟 DOM 打交道的人能理解后端那些概念吗?你们就知道个 JS ,连数据库也只喜欢长得像 JSON 的 MongoDB 。
    半吊子想当架构师。
    你们看看现在有几个公司用 Node 做服务器啊?服务器端 Node 完败。
    你们这些不会写 shell 的人就老老实实用 Node 写脚本吧。
    但是你们写脚本也要有个限度好不好?看看现在的前端工具流有多复杂了啊。而去年的工具今年你们就抛弃了。
    孩子气。

    关于跨界、全栈、公司定岗

    前端这么乱,不就是因为前端没主见吗,尽听别的圈子扯。
    CoffeeScript 是 Ruby 社区的; LESS 也是 Ruby 社区的; Node 的作者就是一个票友,平时根本不用 JS ; Angular 是 Google 的服务端团队搞的; React Native 是为了做原生 App ;全是跨界的!
    他们解决的是他们自己的问题,对你有没有用你不想想?
    你引入任何一个中间层都会有弊端,你不知道吗?
    你用技术要在在乎其缺点。

    全栈。
    你想做全栈我不反对,但是你要看看公司给不给你机会呀。
    你以为你学了 Node 公司就愿意你去开发后台?你有这个能力吗?
    你以为你学了 React Native 公司就愿意让你开发 App ?你有这个能力吗?
    你真的比得过人家专职团队吗?
    全栈是顶级高手团队才有的, Google 、 Facebook 。在小公司还是安心做前端把。

    关于前端的核心竞争力

    前端你不要拿自己的弱项跟别人的强项比了,找死呀。
    你拿 Node.js 跟 Python 后台比得了?他们学起 Node.js 不甩你一条街啊?
    你拿 React Native 跟 iOS 开发比得了?他们学起 React Native 不甩你两条街啊?
    用 Java 写安卓应用的程序员什么时候找死跟 Java 后台程序员抢饭碗了?
    用 C++ 写桌面应用的程序员什么时候找死跟 C++ 服务器程序员抢饭碗了?
    就你能啊?
    你前端的核心竞争力应该是搞清楚浏览器上面的东西!
    HTML 标签、 CSS , JavaScript , Form2.0 、 Websocket 、离线缓存、 Webworker 、 Border-image 、 Canvas ……
    这些东西是有难度的。你让一个后端开发写个 CSS 垂直居中并说出优缺点你看他会不会。要想破头啊。这东西靠经验啊。
    你不好好看核心,去学一些乱七八糟的是什么意思?
    那么什么是核心呢? HTML 、 CSS 和 JavaScript (我认为还有 HTTP )
    现在的那些个前端布道师,不讲核心专讲新技术,又是几个意思?

    关于 Angular ,后台, SPA

    这是给服务器同学用的,如果你的团队以服务器开发人员为主,你再用这个吧。
    你们这群没主见的前端,追捧这个干什么?根本就不是给你用的好吗? Angular 2 一升级你是不是又傻眼了,怎么后端又改用 TypeScript 了?
    你去追前端基本功呀!
    另外 Angular 真的好吗?其实后端程序员可以自己找前端同学封装一些更轻量的框架。(你们前端不行?当我没说)

    关于 React

    React 组件化的思路,我是认同的。 Flex 的组件化方案比 HTML 不知高到那里去了。 React 组件化 是对 HTML 很好的扩展。
    但是 React 太重了,条条框框太多了,把简单事情搞复杂了。
    我推崇「轻框架 + 组件化 + 面向对象」。你们不好好改进原来那一套运行得不错的方案,为什么非要去追新,而且还一年换一个星来追。
    如果 React 就火个几年,后面的前端新人不学 React ,你这个 React 项目谁来负责?你怎么跟公司交代?用新框架重写?!
    你作为个人学习去玩玩 React 我是鼓励的。
    关于抽象和面向对象,你真的掌握了吗?封装、继承、多态、设计模式、解耦、 API 设计这些真的都熟练了吗?我接触过的前端,绝大多数同学都毫无概念。来看看我的代码。

    关于 SPA 和 Web Site

    SPA 不是说你动态加载页面和数据就叫做 SPA 的。 SPA 强调的是功能。你要用新技术做出新的功能。现在中国有几个是真正意义上的 SPA 页面?网页游戏、在线 IDE 、网页版 PhotoShop 之类才是真正的 SPA 。
    所以别老是说什么你在做 SPA 。

    React Native 和 PhoneGap

    不看好。除了开发成本低,没有任何优点。但是哪个公司是因为开发成本低成功的?

    关于微信小程序

    这玩意既不是 HTML 5 也不是 Native ,不看好。

    关于前端的缺人和高薪水

    现在前端多,只是因为前端太少,跟新技术没关系。
    同时 HTML 5 的应用场景变多了,所以需要更多前端了。
    等前端足够多了你再看看你的工资。
    最终工资高的,还是基础知识好的人。

    写在最后

    虽然我写了这么多,但也有可能,全是错的。

    握草怎么这么长,中途差点就想关网页了。
    你就摘对自己有用的看吧。其实他说的也是有道理的。
    而且我跟他的观点是一致的。

    第 1 条附言  ·  2016-12-14 18:45:38 +08:00
    尤大神微博发言了!应该会发文反击。
    我对尤大神的评价已经准备好了。
    尤大神说的也有道理!支持。

    你现在懂了我的套路了吗?听两种极端的声音,你就会了解真相。
    而不是,站队。
    第 2 条附言  ·  2016-12-14 22:59:57 +08:00
    怎么我成了 V 站运营了。
    回想一下好像是的。
    最近的几篇帖子都是 Top 10 啊。
    不过我的标题取得这么欢乐,你们就一起来吐槽就好了。前端该怎么发展还是怎么发展。痛苦的是前端又不是你对不。
    第 3 条附言  ·  2016-12-14 23:16:46 +08:00
    另外我营造的这么好的欢乐氛围,不要破坏了。马上就圣诞了。🎄
    239 条回复    2017-02-16 17:04:31 +08:00
    1  2  3  
    mytsing520
        101
    mytsing520  
       2016-12-14 21:02:47 +08:00
    @bdbai
    L 大维护着几个机房呢,天天有人送红包,不缺。。
    halfbloodrock
        102
    halfbloodrock  
       2016-12-14 21:12:28 +08:00
    说实话。。我真是烦死前端届的撕逼了。。前端现在火的搞得很多连 js 都不会写的运维的也天天在讲前端。。。。
    NovemberEleven
        103
    NovemberEleven  
       2016-12-14 21:24:52 +08:00   ❤️ 1
    可怜我是一名切图仔
    kisnows
        104
    kisnows  
       2016-12-14 21:27:51 +08:00
    说 scss/less 没用的估计都是没写过前端的吧,维护性跟纯 css 比完全不是一个概念。
    wwlweihai
        105
    wwlweihai  
       2016-12-14 21:46:25 +08:00
    兼听则明,前端目前新出的东西对开发效率是有很大的提升的,而且易于维护,这就是进步...
    exoticknight
        106
    exoticknight  
       2016-12-14 21:53:59 +08:00   ❤️ 2
    好像每次见到这个头像就是撕逼
    其实嘛,随便撕,前端的发展还是要看历史的进程,也不会被你们这么撕就挡住了
    hxgdzyuyi
        107
    hxgdzyuyi  
       2016-12-14 22:03:30 +08:00
    sass 明明比 scss 好用。
    daysv
        108
    daysv  
       2016-12-14 22:28:45 +08:00
    其实很多时候也就个 jquery 然后 6 点下班
    hasbug
        109
    hasbug  
       2016-12-14 22:33:21 +08:00
    吃瓜群众来占座了
    Wangxf
        110
    Wangxf  
       2016-12-14 22:41:09 +08:00
    node 其实发展到今天是远低于刚出来时大家对他的期望的,不过我就好奇一点,为啥前端老是抓着 nodejs 不放,是不是因为它语言是 js 所以想证明 js 一统?其实你为啥不学下 php , python , php+laravel ( thinkphp 也行),我感觉写的也很爽啊,啪啪啪。。。
    guyskk
        111
    guyskk  
       2016-12-14 22:49:53 +08:00 via Android   ❤️ 1
    > 老实说我从来没用过 Angular ,正因为我反感 Angular 。 为什么我反感,因为我完全有开发 Angular 的能力, Angular 的底层我都了如指掌。

    虽说我反感 Angular ,但是 Angular 却在测试界占有大量的用户份额,之后我有个想法,不如重新开发一个属于自己思想,自己架构的 Angular 。

    我给了他一个霸气的名字: MingGeAngular ,

    它的名字叫 MingGeAngular , MingGe 就是我的大名, 一看到 Angular 名字,就知道作者是我,知道它是国产的,让别人知道国产 Angular 一样做得很出色,出众

    我是 mingge 请支持国产 minggeAngular ,因为我们都是中国人.
    murmur
        112
    murmur  
       2016-12-14 22:51:53 +08:00
    其余的没看,我就期望 webasm ,等这天到了,谁在说 java 和 javascript 没关系你可以抽他了
    murmur
        113
    murmur  
       2016-12-14 22:53:00 +08:00
    @Wangxf 因为是前端自己想横扫后端+桌面端+移动端啊 这么大的旗子只有 node 扛得起来
    FrankFang128
        114
    FrankFang128  
    OP
       2016-12-14 22:57:42 +08:00
    @Wangxf 我也觉得 Node 周边做得没有其他语言好,挑个库要挑半天。
    quxiangxuanqxx
        115
    quxiangxuanqxx  
       2016-12-14 23:00:17 +08:00
    node 服务端不行???我就是 node 后台,巧了,我还不是前端,写个页面死去活来的。

    css 真难写

    其实也就是开始搭架子难,把脚本都写好,啥都自动化,这都不是事

    所以还是没多少人用 node 当后台,然后吐槽 node 不行,太片面

    我不是前端,除了 node 你们那些名词我就会拼写而已(笑)
    FrankFang128
        116
    FrankFang128  
    OP
       2016-12-14 23:00:31 +08:00
    @guyskk 明哥是前端第一网红啊。
    Mark24
        117
    Mark24  
       2016-12-14 23:01:39 +08:00 via Android
    楼主,你这是在搞事情呀
    FrankFang128
        118
    FrankFang128  
    OP
       2016-12-14 23:06:08 +08:00
    @Mark24 前端三天不搞事情就要上房揭瓦啦
    murmur
        119
    murmur  
       2016-12-14 23:08:49 +08:00
    @quxiangxuanqxx 说一个用 node 不用 java/.net/php/python/ruby/c++ cgi/golang/erlang 的理由啊。。
    FrankFang128
        120
    FrankFang128  
    OP
       2016-12-14 23:12:08 +08:00
    @murmur golang 没出来之前我还是觉得 Node.js 有点用的,但是 Golang + TJ 这一出,我就觉得 Node 不会再火了
    quxiangxuanqxx
        121
    quxiangxuanqxx  
       2016-12-14 23:13:54 +08:00
    @murmur 没有不用它们的理由,但是我看好 node 作为后台的能力

    难道我用 node 就要把其他后端语言一棍打死吗?

    我还是很喜欢 python 的,只不过当脚本用了
    jin5354
        122
    jin5354  
       2016-12-14 23:17:47 +08:00
    建议你们去找大公司的 node 团队负责人问问 node 到底有什么用,或者直接上书高层建议把 node 团队拆了。
    HuJian201
        123
    HuJian201  
       2016-12-14 23:18:50 +08:00 via iPad
    其它的不讲,我反正是被 jquery 拼字符串恶心过,你让我 jquery 全家我不干。再说 jquery 写的代码基本是不可维护吧?
    FrankFang128
        124
    FrankFang128  
    OP
       2016-12-14 23:20:35 +08:00
    @HuJian201 jQuery + Backbone + Marionette 这一套写出的页面还是可以维护的。也有组件、声明周期之类的,就是麻烦许多。
    murmur
        125
    murmur  
       2016-12-14 23:22:34 +08:00
    @HuJian201 可不可维护只跟程序员的素养和公司有没有坚持代码审查有关, react 那么多条条框框照样给你写出不可维护的代码来,如果你说模块化,$.extend 早就做到了啊
    quxiangxuanqxx
        126
    quxiangxuanqxx  
       2016-12-14 23:22:55 +08:00   ❤️ 1
    @FrankFang128 技术火不火我觉得不能评价其作用

    同样的,这个世界上本来就没有最好的语言,只有最适合自己和当前环境的语言

    计算机技术火一段时间,技术迭代之后几近消失,过一段时间又火起来的例子又不是很少

    发展的方向对了,火不火其实也就那么回事

    node 出来会让后端语言黯然失色吗?

    我倒是觉得这些后端语言相互促进,都学习一些,会让自己感触更深一些

    毕竟我们爱的是技术本身
    FrankFang128
        127
    FrankFang128  
    OP
       2016-12-14 23:30:53 +08:00
    @quxiangxuanqxx 我只是觉得 Node 没有明显的优势。 要并发有 golang erlang 啊。
    唯一优点就是 JS
    yangtze
        128
    yangtze  
       2016-12-14 23:35:06 +08:00
    @FrankFang128 当初是信谁说 JS + Node 历史包袱少,入的 JS 坑的
    FrankFang128
        129
    FrankFang128  
    OP
       2016-12-14 23:40:08 +08:00
    @yangtze TJ ………
    backfrw
        130
    backfrw  
       2016-12-14 23:43:56 +08:00
    趁着人多插个题外话,前辈们能跟我讲讲软考吗。
    想知道软考,软件设计师对应届生或者刚入职的新人作用大吗?
    目前大四,一直学的 java web 方向
    FrankFang128
        131
    FrankFang128  
    OP
       2016-12-14 23:48:38 +08:00   ❤️ 1
    @backfrw 不贵就考,没坏处
    quxiangxuanqxx
        132
    quxiangxuanqxx  
       2016-12-14 23:52:37 +08:00
    @FrankFang128 要并发有 node 啊

    优点是看别的语言有没有吗?

    难道我跟你一样帅不能算优点吗?

    哈哈,开个玩笑
    Jafee
        133
    Jafee  
       2016-12-15 00:14:43 +08:00 via iPhone
    不说文章对错,无论如何,作者勇气可嘉,有些话不是谁都敢说的。
    FrankFang128
        134
    FrankFang128  
    OP
       2016-12-15 00:19:06 +08:00
    @Jafee 原文巨长巨长,而且逻辑是自洽的,所以总会有几句话是对的
    blanu
        135
    blanu  
       2016-12-15 00:29:55 +08:00 via iPhone
    @FrankFang128 并不自恰
    it407841482
        136
    it407841482  
       2016-12-15 00:33:47 +08:00 via Android
    哎呀,妈呀,前端菜鸟还在看张鑫旭大神的网站,脑海里仿佛还回荡着他的声音。
    FrankFang128
        137
    FrankFang128  
    OP
       2016-12-15 01:30:33 +08:00 via Android
    @blanu 虽然他的认识是错误的,但是他的逻辑是基于要学基础,所以其实他每句话都是要学基础。以此排斥新技术。

    我的观点是要学基础,同时学习新技术。。。
    yunshansimon
        138
    yunshansimon  
       2016-12-15 02:09:16 +08:00   ❤️ 2
    @FrankFang128 不同意你的观点。仅仅作为一个懒惰的程序员。如果拿一样的钱,你愿意写 1000 行代码还是愿意写 100 行? js 本身极不完善,加上受限于浏览器,加载时间要求,各种浏览器安全策略,各种浏览器实现的不兼容……写 js 的程序员几乎是所有程序员里面最苦逼的。各种大牛提供的工具,都有相应的应对场景,并不是万能工具。面对不同的要求,选择不同的工具,所有人都知道吧。喷一种工具不是万能的,有什么意义吗?你最多喷因为不明所以将工具用错了地方的人。作者要有时间,可以总结一下,什么情况用什么东西,可能还对前端程序员有所帮助。就我的经验,写 pc 浏览器上运行的 js ,可以放心调用 jQuery ,因为 pc 浏览器运行速度很快,不在乎 jQuery 底下的效率。如果写 mobile 浏览器上的,最好用原生 js 。数据绑定和组件化, vue 1.x 确实做的不错了,性能在 mobile 上也非常不错,可以通用。 bootstrap 的自适应是切小鸡鸡式的自适应,希望精确控制不同屏幕宽度下的网页表现,用 rem 单位长度加媒体选择指令就可以了。 nodejs 的核心不是 es 语法(当然 es6 很舒服),是流( stream )概念,这是我在 php 和 java 里面没见过的。在处理大流量数据非常方便,而且不用考虑缓冲区溢出。即便是 AWS ,都提供使用 node 类似的 js 处理大数据流。学习 nodejs ,可以让你直接使用 es6 编写前端代码(用 babel 编译)(现在 chrome 可以直接执行和调试 es6 了),使用各种前端插件比如 vue , webpack ,即便不用来写后端,也可以使用 jslint 提高自己代码质量。所以,我建议所有前端都要学习 nodejs 命令, npm 命令,会写 package.json 配置项目,会编译和调试自己的前端代码。 nodejs 还支持即时编译加热更新的服务器,这能让前端大大增加工作效率。真不明白,你为什么要喷 nodejs 呢?你看不起 mongodb ,因为你没用过全文搜索,如果你用 php ,产品经理让你搜索多个字段的包含一系列关键字的记录,用 mysql 你怎么写 sql ?就算写出来那性能也是酸爽。 sql 中的字符串匹配 like 跟 json 里面直接使用 regex 比,简直就是搓刀跟自动化车床。对于大数据量搜索, nodejs 支持异步流处理,出来一个结果返回一个,可以中断,不需要更多的数据库指令,也不会阻塞 IO 。 php 加 mysql 如果遇上大量数据返回,只能分页,否则就卡死。这种场景下, nodejs 加 mongodb 就真的如行云流水,非常高效。我没说 php 和 mysql 不好,只是说不同场景下,不同的技术有不同的特点。
    wxt2005
        139
    wxt2005  
       2016-12-15 07:21:43 +08:00
    别的不想讨论,原来现在那种长度的文章就算是“长得看不完“了吗……
    4641585
        140
    4641585  
       2016-12-15 08:18:55 +08:00
    murmur
        141
    murmur  
       2016-12-15 08:30:04 +08:00 via Android
    @4641585 数以亿级得看是什么操作 是 loging 还是银行的交易
    DT27
        142
    DT27  
       2016-12-15 08:37:48 +08:00
    踏踏实实写代码吧。
    lulin
        143
    lulin  
       2016-12-15 08:44:19 +08:00 via Android
    楼主这是要搞事,还拿语言说事,不都是拿着就开写,写的好不好是另外回事,就像大家都说写 css 简单,妈蛋,效果复杂点,浏览器一哄炸,就等哭…最后说,净扯这些没用的效果,但是用户乐意呀。
    simo
        144
    simo  
       2016-12-15 08:51:04 +08:00
    高度和角度决定你如何看问题,开发没有银弹,前端不例外。
    知道每种技术的使用场景,适用的业务类型,生命在于折腾,不是在重复的轮子上,而是兴趣上。
    作为千万前端开发的一员,多想想你的核心竞争力是什么,前端的发展方向你如何预判。
    兴趣还在,努力;不在,改行
    liyj144
        145
    liyj144  
       2016-12-15 09:00:55 +08:00
    对楼主的评判不敢苟同,不过前端确实需要多补补后台语言( java 、 python 、 go 等)用的一些设计模式,毕竟都是经历了这么久沉淀下来的。程序员不要太局限了自己的眼界,抛去公司层面,我们为什么需要 x 端,我们需要的是计算机科学家,需要的是用程序解决问题。
    iloveyou
        146
    iloveyou  
       2016-12-15 09:17:29 +08:00
    同意楼主观点,前端目前太重了
    root787
        147
    root787  
       2016-12-15 09:20:44 +08:00
    来个微博传送门啊
    FrankFang128
        148
    FrankFang128  
    OP
       2016-12-15 09:24:19 +08:00 via Android
    @yunshansimon 其实我都不知道全文主要观点是什么。如果非要提取一个观点的话,那就是重视基础,排斥新技术。前半句跟我观点一致,后半句嘛。。。
    wizardoz
        149
    wizardoz  
       2016-12-15 09:33:18 +08:00   ❤️ 1
    @backfrw 对于新人有很大作用,到不是说这个证书有多少含金量,而是说你去看一遍书,很多基础知识就巩固了.毕业后就没多少时间看基础的东西了.
    seaify
        150
    seaify  
       2016-12-15 09:35:59 +08:00
    nodejs 不看好,回调的关系,代码丑, 并发不如 golang 和 elixir.

    mongodb 也不喜欢, 可以试试 postgresql 。

    react-native 的确使得 js 也能写 app ,但是不懂原生的话,需要扩展功能的地方,就懵逼了,只能指望着 js 的 react-native 插件多, O(∩_∩)O~,其实 react-native 更适合原生的同学来学习。

    scss 比 css 好,应该是 css 上的那些扩展都比 css 好。

    flex 是好东西,前端能用, react-native 也能用。

    另外前端和后端思维差别太大了
    Aidea
        151
    Aidea  
       2016-12-15 09:39:26 +08:00
    @rqzheng2008 乱世才能出英雄嘛,虽然总要死掉一些人
    NovemberEleven
        152
    NovemberEleven  
       2016-12-15 09:40:06 +08:00
    只用了 node 做公司的下载服务
    Felldeadbird
        153
    Felldeadbird  
       2016-12-15 09:40:52 +08:00
    swift 对前端配置工程师 笑而不语。
    371657110
        154
    371657110  
       2016-12-15 09:57:02 +08:00   ❤️ 1
    被你们家前端坑了来这里发泄吗...释放你的怒火吧?
    Sight4
        155
    Sight4  
       2016-12-15 10:00:36 +08:00
    乱语:
    其实前端打好 JS/CSS/HTML 基础是对的,往深走这点跑不掉;
    其实 Angular/React 在组件也做得很好,的确适用于 SPA ,但是历史问题摆在那里,兼容性还有动画效果等坑太多,特别 ng 的 JS 动画效果性能慢得作死,远不如 JQ ;
    不过做服务器界面开发, ng 真的可以快几条街;
    路由不是必须的,但是状态管理却是必须的(其实前端的路由这两者没多大区别);
    前端的问题在于不用撕语言,可以撕框架了;
    总结:兼听则明
    Sunkist
        156
    Sunkist  
       2016-12-15 10:05:39 +08:00   ❤️ 1
    可以喷 Angular 和 React ,但是你喷 Vue ?那你就等着被某尤神和他的脑残粉喷回来吧,现在回想起以前有人说 Vue 过度推广和公关是没有错的。
    leejaen
        157
    leejaen  
       2016-12-15 10:10:52 +08:00
    这种不看好,那种不看好,让人一直让别人用那些陈旧的技术?消极的人自己不进步也看不得别人进步,狭隘至极!
    SilentDepth
        158
    SilentDepth  
       2016-12-15 10:13:12 +08:00
    刚顺着贺老的回答看到了你的回答,感觉你的翻译很到位啊!
    ljcarsenal
        159
    ljcarsenal  
       2016-12-15 10:13:34 +08:00
    只能说 80%的网站 jquery 就搞定了 根本不需要复杂的框架
    yuanchao
        160
    yuanchao  
       2016-12-15 10:14:50 +08:00
    PHP 才是坠吼的!
    Geeker
        161
    Geeker  
       2016-12-15 10:15:21 +08:00
    2333 ,身为前端,我是同意 lz 的
    lulin
        162
    lulin  
       2016-12-15 10:18:59 +08:00
    @Sunkist 别个尤小右说了没推广
    SilentDepth
        163
    SilentDepth  
       2016-12-15 10:21:47 +08:00
    @FrankFang128 感觉 @yunshansimon 错把你给阿当的翻译理解成了你的观点了
    Geeker
        164
    Geeker  
       2016-12-15 10:22:10 +08:00   ❤️ 1
    不过,年轻人还是要好好提升姿势水平,闷声大。。
    dtysky
        165
    dtysky  
       2016-12-15 10:23:38 +08:00
    发展和变化总是好的,说的你们后端都是一步登天一样,凡事总有个发展和稳定的过程。
    再说, LZ 说的那些东西有难度吗?不都是一些少则一周多则一月上手的东西?

    有这撕逼的时间还不如去学好 C 艹和 LISP (笑
    那才是包罗万象的基础
    Sivan
        166
    Sivan  
       2016-12-15 10:25:43 +08:00 via iPhone
    知乎的回答一个比一个能装逼。
    root787
        167
    root787  
       2016-12-15 10:27:31 +08:00
    @Geeker +1s
    bitterjelly
        168
    bitterjelly  
       2016-12-15 10:27:31 +08:00
    照你这样说法,我们还做什么技术的创新,全部固步自封,闭门造车就是了,没有前端技术的日新月异,那里有现在百花争艳的场景,你这种观点完成是清朝闭关锁国的思路。总有一天会让侵略者轰开你的国门才知道外面的世界已经天翻地覆了
    Lucups
        169
    Lucups  
       2016-12-15 10:34:37 +08:00
    我提取出来的观点是:

    1. 基础是吹比的根本;
    2. 不要为技术而技术;
    3. 步子不要太大,容易扯着蛋;
    4. 对自己定位要准,对在做项目同样也要有清晰的认识,对公司要负责,对接盘的人要负责;
    5. 也许我在扯淡。
    unknownservice
        170
    unknownservice  
       2016-12-15 10:36:19 +08:00
    大部分同意,现在前端社区太激进了,救命稻草一个接一个,是时候冷静一下了。
    zhouyg
        171
    zhouyg  
       2016-12-15 10:42:12 +08:00
    一如既往的不思进取,作死才能知道死不死
    murmur
        172
    murmur  
       2016-12-15 10:44:22 +08:00
    @yunshansimon 我已经受不了了, node 的流处理可以代替 mysql 的分页机制?分页机制不历来都是手工实现么,而且每次都是用 skip 的死的最惨
    Tyrion
        173
    Tyrion  
       2016-12-15 10:49:06 +08:00
    感觉说的好有道理,无言以对。
    jy02534655
        174
    jy02534655  
       2016-12-15 10:49:52 +08:00   ❤️ 1
    基础肯定是重要的,话说在前端界像我这种搞 ext js 的貌似完全没有地位呀
    fzhw88
        175
    fzhw88  
       2016-12-15 10:52:56 +08:00 via Android
    比较认同楼主的说法,要想转后端,还是好好学 PHP 那些吧
    leonlu
        176
    leonlu  
       2016-12-15 10:55:41 +08:00   ❤️ 1
    @seaify @FrankFang128 两位。。。 Flex 是个啥? Adobe Flex 吗?
    baiyi
        177
    baiyi  
       2016-12-15 10:57:16 +08:00
    贵圈真乱
    4641585
        178
    4641585  
       2016-12-15 10:57:49 +08:00
    @murmur

    图中的链接 http://taobaofed.org/blog/2016/06/02/thing-about-taobao-homepage/

    之前就有新闻提到淘宝的前端团队把 UI layer 从 php 换成了 node.js
    murmur
        179
    murmur  
       2016-12-15 11:00:23 +08:00
    @4641585 前端拼的不是 CDN 么,真正多少数据会打到服务器上
    Durandal01
        180
    Durandal01  
       2016-12-15 11:01:05 +08:00   ❤️ 1
    @backfrw 不考公务员,不进国企没什么卵用。
    glasslion
        181
    glasslion  
       2016-12-15 11:04:05 +08:00
    看完只有一个感受:当低效成为一种习惯。。。
    xiaket
        182
    xiaket  
       2016-12-15 11:14:58 +08:00
    @4641585 其他不多说, 这儿拿淘宝首页做例子说 node 靠谱才真是不靠谱. 要么是自己概念不清楚要么是有居心的混淆.
    seaify
        183
    seaify  
       2016-12-15 11:25:51 +08:00
    @leonlu Flexbox, 好吧,代码里用的都是 display: flex, flex:1, 啥的,习惯了
    codeartisan
        184
    codeartisan  
       2016-12-15 11:41:17 +08:00
    还好我只是个切图仔
    Wangxf
        185
    Wangxf  
       2016-12-15 11:43:35 +08:00
    @seaify 1.虽然我不看好 node 在服务端的前景,但是 2016 年底了还在黑回调我真觉得太不应该了 2.建议去了解下 flexbox
    FrankFang128
        186
    FrankFang128  
    OP
       2016-12-15 11:44:43 +08:00
    @wxt2005 国际惯例,太长不看……
    firefox12
        187
    firefox12  
       2016-12-15 11:45:15 +08:00
    别的不懂吧, 你们前端的框架主流的一年就换了几次,这说明了什么?垃圾的设计!

    看看 windows API , linux API , JAVA 的哪些类库,系统架构,从 1.0 到 2.0 3.0 4.0 是如何在几十年都能保持的? 这说明一个系统设计该如何保持和发展? 你们一年换几次只能说明 要么你们写的东西毫无生命力,要么用的人毫无鉴赏能力。在 java 的世界 linux 的世界 要让一个新技术推广,会接受多少旧技术的阻碍,因为旧技术虽然旧,有局限,但并非一无是处,都是深思熟虑的设计。前端? 反正名词多得都记不住, 如果一个组件 几个月就会被淘汰,为什么要学? 这是浪费生命。
    FrankFang128
        188
    FrankFang128  
    OP
       2016-12-15 11:46:20 +08:00
    @SilentDepth 这些观点多少也有我一半的观点。我另一半的观点是——赶紧学新技术。
    FrankFang128
        189
    FrankFang128  
    OP
       2016-12-15 11:47:33 +08:00
    @firefox12 嗯,不过垃圾倒不至于,只能说「设计得不能适用于前端变化多端的需求」
    SkyKnight
        190
    SkyKnight  
       2016-12-15 11:49:17 +08:00
    前端真是一锅粥
    rockux
        191
    rockux  
       2016-12-15 11:56:54 +08:00
    @djyde 严重赞同,全部观点阴阳怪气
    FrankFang128
        192
    FrankFang128  
    OP
       2016-12-15 11:58:21 +08:00
    @rockux 我一直不明白「阴阳怪气」是什么意思。说娘娘腔也许会用这个词,但是本文很 man 啊~
    xcodebuild
        193
    xcodebuild  
       2016-12-15 12:02:34 +08:00 via Android
    大意不就是『你们前端老老实实抱好头蹲着别动』么,根本没有任何有效的论据,更像是谩骂。

    他口中的『小公司前端』学个 scss 都能累死, source map 用不来, es6 语法都能影响合作,装个 babel 也能提高门槛。服务器端那是学都不配学。

    还是老老实实拿 dw 做个页面仔好了,毕竟前端根本不算工程师嘛。
    MikeFeng
        194
    MikeFeng  
       2016-12-15 12:03:14 +08:00
    你们前端啊,不要整天都想高个大新闻,拿衣服
    firefox12
        195
    firefox12  
       2016-12-15 12:04:44 +08:00
    @FrankFang128 前端的需求 在一年中变了多少次? 是变化快? 还是根本没想好,有个点子就做,做到一半,觉得不靠谱了就弃坑?
    FrankFang128
        196
    FrankFang128  
    OP
       2016-12-15 12:09:19 +08:00
    @codefalling 估计他接触的前端是这样……
    SakuraKuma
        197
    SakuraKuma  
       2016-12-15 12:10:09 +08:00
    然而我至今用着 Grunt , JQ 开发着自助建站。
    变化再多,基础还是最重要

    (同不看好小程序。
    miketeam
        198
    miketeam  
       2016-12-15 12:10:10 +08:00 via iPhone
    作为程序员会 c 或者 c++必须的。至于其他的语言不都是来自于此么?至于其他的框架还不是一个个的做事方法而已……其他语言底层还不是 c 系的么?还在纠结框架的很幼稚!能快速出货,性能稳定方便维护才是第一。给程序员贴标签真的很恶心。所以有 vue 程序员! rn 程序员。怎么简单怎么来
    FrankFang128
        199
    FrankFang128  
    OP
       2016-12-15 12:10:24 +08:00
    @firefox12 今年用 require ,明年用 webpack ;今年用 coffee ,明年用 ES next 。类似这样的变化……
    wwlweihai
        200
    wwlweihai  
       2016-12-15 12:12:04 +08:00
    有一些内容是值得提取的。
    1 ,我也用过 angular ,移动端用 ionic ,但是实际效果并不是太理想,无论是后端,还是前端,这个框架太重,开发效率也不见得比 easyui , extjs 高多少。 对于前端使用, ng ,确实不太适合。

    2 , react 的侧重点也是 view 层,所以加太多的东西会让系统更加混乱;在我们开发的项目中, react 也仅仅做为视图层应用,通过 props 传递数据。关于 react 的开发,可以参考我的另外一个帖子 https://www.v2ex.com/t/327638

    3 ,上面说了两个例子,总结一下,目前前端的混乱最大的原因是没有系统化与标准化。在移动化后, web 端的需求迅速下降,微信公众号这个变态的东西居然有了市场份额,而微信还没有到可以制定移动浏览器标准的程度,再加上各种浏览器,有各自的标准, css , js 都有一些各自的特性, web 更加分割。所以出现了大量的工具,这里 nodejs 有一份功劳。化繁为简,首先要做的就是统一标准。

    这是这个时代的原因,前端一片混乱,后端就不是了吗? java php c c++ python ,为什么要有这些东西?因为需求的存在,编程语言的多样性 归根到底 是需求的多样性,各自的语言在不同的领域发挥着它应有的本领,这是好事情,前端也是,新工具不一定是差的 ,当然也不一定是好的。但是 阿当 说的没错,在企业内部,技术选型要趋于保守,非核心领域适当去探索,所以淘宝前端用了 nodejs ,但是其数据层 仍然是 java 。

    不过,可喜的是 IT 领域,见到了难能可贵的精神,大家都在学习,都在探索,在争论,在明是非,这是其他某些行业没有的。
    1  2  3  
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1023 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 116ms · UTC 19:24 · PVG 03:24 · LAX 11:24 · JFK 14:24
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.