V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
echoless
V2EX  ›  程序员

后端程序员进入前端为啥是进了迷宫一样

  •  
  •   echoless · 2023-03-29 19:15:57 +08:00 · 20139 次点击
    这是一个创建于 365 天前的主题,其中的信息可能已经有所发展或是发生改变。

    因为前段早已经不是 javascript 和 一些 lib 的天下了.

    vue react 里面都有 compiler 的, 有 compiler 的意思就是你在写 vue 语言, react 语言.

    你一个北京人, 到了四川, 不妥妥的瓜娃子么.

    没个 10 天半月, 听不懂说什么正常.

    vue 这个语言呢, 经历了

    1. vue 2, vue 3
    2. javascript, typescript
    3. compositional 和 optional api
    4. compositional api 还有简洁版本 和 冗余版本.

    作为老手, 你循序渐进都很自然, 新手面对的是 222*2 = 16

    新手进来不晕菜才怪呢, 说恶心呢优点夸张, 但是还真不亏.

    131 条回复    2023-04-12 11:39:40 +08:00
    1  2  
    echoless
        1
    echoless  
    OP
       2023-03-29 19:18:54 +08:00
    chatgpt 你让他写一个 vue components, 你都得告诉他风格...

    我觉得这是一个值得反思的事情, 不能都怪程序员太菜.
    echoless
        2
    echoless  
    OP
       2023-03-29 19:21:11 +08:00
    真是怀念 vue 2 的时代, 老了.
    aaniao002
        3
    aaniao002  
       2023-03-29 19:33:12 +08:00 via Android
    我觉得这是因为太多浏览器要适配的编译和自动翻译的结果,导致很复杂,但如果写出来只能支持最新浏览器,脱离浏览器本身自己形成一套特殊语法,那真还不如退化回去好好做 library 来得实在。
    echoless
        4
    echoless  
    OP
       2023-03-29 19:38:05 +08:00   ❤️ 1
    @aaniao002 #3 大部分不是这个浏览器适配的问题, vue sfc 就是 vue 独有的文件格式了.

    vue = js (ts) + css + vue template lang + vue reactive system ...

    这一套又很浅, 更多的是 convention, 导致没啥道理, 就是得记. svelte 据说搞的更深, 但是我也经 vue 都学不动了.
    okakuyang
        5
    okakuyang  
       2023-03-29 19:46:06 +08:00
    react 很简单,相比以前那种挂 lib 的做法,更加舒适。
    echoless
        6
    echoless  
    OP
       2023-03-29 19:51:53 +08:00   ❤️ 1
    前面忘说了, vue component 还有自己的生命周期.

    很多 frontend developer, 包括我, javascript 的 event 都没搞明白呢, 然后 vue 又有自己的生命周期. react 类似.

    我一直认为前端比后端难.

    解析一个页面, css, html, javascript 浏览器运行机制, 这些就够喝一壶的.

    css 这玩意你不知道哪个文件里面的一个规则改变了你这个页面.

    还有异步这些, 后端也有异步, 但是大多数 app 完全可以不用, 前端, 没了异步没法玩的.

    当然, 是我太菜了.
    free9fw
        7
    free9fw  
       2023-03-29 20:16:18 +08:00
    vue3 tsx 写就很爽啊
    echoless
        8
    echoless  
    OP
       2023-03-29 20:29:20 +08:00
    @free9fw #7 哈哈 忘了 vue template 还支持原生 vs tsx 卧槽 16*2 = 32 种回字的写法了.
    Al0rid4l
        9
    Al0rid4l  
       2023-03-29 20:39:27 +08:00   ❤️ 1
    我会点 shell 脚本会点 docker 但我不会问出进了运维为啥是进了迷宫一样, 不会觉得自己理所当然就懂运维, 毕竟这对我这种运维菜鸡来说是很正常的一件事
    echoless
        10
    echoless  
    OP
       2023-03-29 20:41:16 +08:00
    @Al0rid4l #9 你太看不起前端了吧. 运维那点东西, 后端很多都看不上, 当然别问我 iptables 之类的东西.
    blessyou
        11
    blessyou  
       2023-03-29 20:43:59 +08:00 via Android
    速速加入 React
    hhjswf
        12
    hhjswf  
       2023-03-29 20:45:27 +08:00 via Android   ❤️ 1
    刚开始工作的时候,就是前后端一把梭,vue 都不需要什么上手时间,随手拈来。
    几年以后,前端人手不足,问我能不能承担一点前端,一把答应下来,刚接下来人就傻了,光是遍历就有好多写法,这套个组件那套个组件...
    后端开发写前端就很耿直易懂
    echoless
        13
    echoless  
    OP
       2023-03-29 20:45:54 +08:00
    @blessyou #11 react 现在哪家强 solidjs 还是 preact?
    lmqdlr
        14
    lmqdlr  
       2023-03-29 20:53:08 +08:00 via Android
    很简单,后端分层、拆分微服务的东西,都需要在前端耦合起来。各模块之间随着用户交互,互相调用。
    (如果看不下去,可以来前端试试,出一套大统一的时候前端方案,绝对可以财富自由)
    huijiewei
        15
    huijiewei  
       2023-03-29 20:56:58 +08:00   ❤️ 1
    @echoless 还是 react 最强,最容易理解。虽然新手容易劝退,但是一旦理解了写起来真的酣畅淋漓。

    solidjs 我用过一阵子,现在在搞 solidjs 的一个 ssr 框架,一言难尽,很容易劝退,好几年了为啥一直不火,就是真正的劝退。不管新手老手都劝退的那种。

    preact 作为 react 替代,做点小东西可以,真正上工程还是 react
    DOLLOR
        16
    DOLLOR  
       2023-03-29 21:00:57 +08:00   ❤️ 1
    学 vanilla 吧,连 lib 都不用挂,比 jquery 还方便,性能是所有框架里面最强的。
    而且任何框架都可能过时,唯独 vanilla 不会过时。
    当然,最大的建议还是别学前端,毕竟前端已死。
    cp19890714
        17
    cp19890714  
       2023-03-29 21:11:11 +08:00
    没有什么,就越想追求什么,这导致了前端的现状,不停的造轮子,怎么高端怎么来,怎么复杂怎么来。
    cmdOptionKana
        18
    cmdOptionKana  
       2023-03-29 21:22:01 +08:00   ❤️ 3
    什么意思?

    前端程序员进入后端,就如鱼得水? Java 、PHP 、Go 等等语言一大堆,每种语言又有一大堆库和框架,如果第一次接触,不也是一脸懵逼吗?

    还是说,你的意思是,后端复杂是正常的,前端就必须简单?
    echoless
        19
    echoless  
    OP
       2023-03-29 21:24:17 +08:00
    @cmdOptionKana #18 你没有写过前端?
    cmdOptionKana
        20
    cmdOptionKana  
       2023-03-29 21:28:40 +08:00   ❤️ 3
    @echoless 你没有写过后端?

    ===========

    没必要这样说话,直接说你的观点吧。

    我的意思很清楚,前端是一个专业领域,复杂很正常,正如后端一样,第一次接触,或者隔很长时间再接触,需要花一点点时间去学,这很正常。
    echoless
        21
    echoless  
    OP
       2023-03-29 21:36:57 +08:00 via Android
    @cmdOptionKana 我帖子已经说了 vue 自己就有几十种写法 你自己上来一通 Python 2 到 3 这个很多人觉得是败笔 我也同意 vue 2 3 混乱也不是我一个人再说

    斯德哥尔摩综合征而已
    shyangs
        22
    shyangs  
       2023-03-29 21:57:55 +08:00   ❤️ 1
    Java 只寫的出一種風格,物件導向。如果同事用 Java 寫出程序導向風格,資料結構都用 map ,什麼都往 map 裡塞,我會在心底吐槽哪個面試官錄取他的。

    JS 可以寫原型鏈那一套,我會覺得這個同事基礎扎實; JS 可以寫 ES6 的 Class 那套,我會覺得同事跟得上 JS 的更新; JS 可以寫函數式那套,我會覺得同事學院派理論不錯。

    幸好我是全端,上面什麼風格我都可以寫。
    cmdOptionKana
        23
    cmdOptionKana  
       2023-03-29 22:09:59 +08:00   ❤️ 1
    @echoless 后端五六种截然不同的主流语言,就是五六种截然不同的写法,每种语言的大版本升级都必然有新的写法,PHP 以前是写在 html 里面的,后来是不是变了?

    Java 的大版本升级,写法也是变了啊,而且后来是不是新出来个 kotlin ,然后 kotlin 和 java 的代码还可以混在同一个项目里,如果前端的人隔了多年进来看到这样的代码,是不是也觉得不可思议?

    vue 的写法多,还是 jvm 的方言多?
    BiChengfei
        24
    BiChengfei  
       2023-03-29 22:18:07 +08:00
    其实我挺惋惜 jsp ,它可以做的更好,可以达到 spring 家族的高度,jsp + java ,统一 web 开发的天下
    node.js 号称服务端渲染,这不就是 jsp 要做的事情吗
    yunyuyuan
        25
    yunyuyuan  
       2023-03-29 22:30:19 +08:00
    我选择做前端的主要原因,就是前端花样多,玩不腻。
    至于 vue,react 还是 angular ,只是代码风格不同罢了,不写 vue ,你不还是写 html,js,css 这几个东西吗。
    不想用 composition ,可以不用,用老的 options api 。不想写 vue 单文件组件也可以啊,就用<script>导入,再 vue.createApp().mount()。
    我当初入门 vue 的时候就是<script>导入,jquery 和 vue 一些写,后面搞懂了 vue 的设计理念,自然知道怎么写了
    githmb
        26
    githmb  
       2023-03-29 22:36:41 +08:00
    其实就是思维形成定式了, 不灵活了
    kingterrors
        27
    kingterrors  
       2023-03-29 23:18:37 +08:00 via Android   ❤️ 8
    作为一名普通的前端开发,我还是想说,楼主的这套说法不太对。无论是前端还是后端还是某些语言,都在不断的进化,还好你没有提及 ie 年代。我想你大概是因为有个后端吐槽前端有感而发的帖子。
    我是经历过 ie6 就要兼容各种 css 写法的高龄开发者。有些评论提到前端混乱,然而我没有特别觉得前端的发展是为了造轮子,为了卷而搞出千奇百怪的东西。只能前端发展还处于一个相对初级阶段,只是 nodejs 出现让其多样化。
    况且 js 方面的发展由于先天缺陷,又基于浏览器客户端这个环境,他没有办法很好的发挥。
    也有人提到工程化,这确实是前端真正的方向,从代码层面来看前端终究是 html+css+js 。而实际上现在的前端发展一切都是为了解决高效开发出现的各种框架和写法。
    从 vue2 到 vue3 ,很明显 vue3 借鉴了 react 的某些思想。而 ts 也是为了开发质量和维护性等原则出现的。这一切都离不开编程思维。其实大部分程序原理都是相通的,如果一个程序员在阅读其他框架或脚本时认为极其困难了,大概也就是思维局限了。
    至少我再看各种项目,大部分会在研究一小段时间基本能理解了,最多就是语法不熟悉,需要查文档花些时间来改写。
    打个不恰当的比方,老年人会用电视遥控器,那么你给他空调遥控器他大概也会用,因为他基本理解了遥控的通用操作模式。
    然而你给他用安卓手机,费了很长时间学会了,换一部 iOS 手机,立马就不会了。因为很多老年人没能学会返回,关闭,设置的等操作和功能的具体含义。
    paopjian
        28
    paopjian  
       2023-03-29 23:55:01 +08:00
    我现在还是好怕写 CSS,尤其是你突然去接手别人的屎山,用了开源框架或者抄别人的还好说,公司竟然买了个其他公司的框架,不开源没文档,互联网上甚至搜都搜不到文档,再结合以前人的屎山代码,真的恶心人
    dayeye2006199
        29
    dayeye2006199  
       2023-03-30 00:40:23 +08:00 via Android
    写 react 这样的感觉好些,基本还是在 js 的框架下可以解释,熟悉 js 需要特性有巨大加持
    mxT52CRuqR6o5
        30
    mxT52CRuqR6o5  
       2023-03-30 00:56:00 +08:00
    js 自身的 dsl 还是不太够用,react 、vue 、angular 都或多或少的整了自己的一套 dsl
    aloxaf
        31
    aloxaf  
       2023-03-30 01:25:06 +08:00   ❤️ 17
    作为后端程序员,我学前端时的感受就是:东西太多、太杂,让人眼花缭乱,不知从何下手。
    1. 没有标准工具链:后端选定语言后工具链一般也就固定了,但是学前端的时候,看到各种构建工具各种脚手架的我真是一脸懵逼……你们能不能先打一架分出胜负?
    2. 框架地位非常高:前端框架比后端猛太多了,后端框架再怎么猛也鲜有自己发明 DSL 来扩展语言的,在前端这好像是家常便饭,甚至我谷歌「后端 DSL 」搜到的都是前端的内容……
    3. 变化太快:我几个月前才学了 React ,用 CRA 创建了个网站,然后前段时间看到站里讨论 React 官方建议用 Next.js/Remix 了……
    baobao1270
        32
    baobao1270  
       2023-03-30 02:12:59 +08:00
    [暴论] 前段大多数都是 overengineering, 很多使用 vue / react 的场景都是过早优化, 其实 native javascript 足矣。
    n18255447846
        33
    n18255447846  
       2023-03-30 05:37:47 +08:00
    作为一名 native 前端,从大学自学开始,前端这个方向已经逐渐工程化了。以前大家可能“亲切”地称一声切图仔,现在还得不耐其烦地带上工程师 title 。其实还是得益于 web 互联网的发展和普及,前端才能发展起来
    alexbigbigworld
        34
    alexbigbigworld  
       2023-03-30 06:07:15 +08:00 via iPhone   ❤️ 1
    有啥,想学就学 angular ,不然学个 nextjs
    wqzjk393
        35
    wqzjk393  
       2023-03-30 08:14:04 +08:00 via iPhone
    说白了,因为历史遗留问题导致无法实现大一统
    wqzjk393
        36
    wqzjk393  
       2023-03-30 08:22:02 +08:00 via iPhone
    @echoless 是的,甚至是加不加 setup 语法糖的写法都完全不一样
    chicbian
        37
    chicbian  
       2023-03-30 08:31:07 +08:00
    别说你后端了,我移动端转前端,也是看的头皮发麻。怎么能这么乱?到处飞的 css ,到处用的 props 。一个工程里面,新的,旧的,坚持了好几天,可算搞明白了,我记得我看官网 vue 或者 react ,看的那是头头是道的。
    Eathein
        38
    Eathein  
       2023-03-30 08:45:42 +08:00
    @chicbian 我也是,看 vue 官网那叫一个简洁,打开公司项目一看,直接绕晕
    echoless
        39
    echoless  
    OP
       2023-03-30 08:54:39 +08:00 via Android   ❤️ 1
    @wqzjk393 老弟我信你被折腾过 前面那位瞎说的小兄弟根本不懂我在说什么 就跟我杠
    yaphets666
        40
    yaphets666  
       2023-03-30 09:12:17 +08:00   ❤️ 2
    前端进后端也是进了迷宫。很多素质一般的人,很喜欢傲慢的审视自己不熟悉的领域。
    Lattez
        41
    Lattez  
       2023-03-30 09:12:50 +08:00   ❤️ 2
    作为一个主职后端,Vue 写的也不少的人,或许是 Vue3 更新等待的足够久,现在有了 setup 语法糖和更完善的 composition api ,比 3 刚出来那会确实好了很多,vite+ts 的支持也更完善了,现在只需要维护 Vue2+最新的 Vue3 两套就比较舒服。

    前端圈来来回回折腾这么多年,感觉很多概念还是十年前 adobe 玩剩下的那套东西
    lanten
        42
    lanten  
       2023-03-30 09:15:06 +08:00
    React 比 Vue 简单多了,且更接近原生
    horizon
        43
    horizon  
       2023-03-30 09:16:35 +08:00   ❤️ 1
    setup 就是垃圾。
    xrr2016
        44
    xrr2016  
       2023-03-30 09:28:55 +08:00
    为什么后端程序员老是想抢前端饭碗啊?是想拿两份工资吗
    qsnow6
        45
    qsnow6  
       2023-03-30 09:29:57 +08:00
    @Lattez #41 /ActionScript?
    cheng6563
        46
    cheng6563  
       2023-03-30 09:35:35 +08:00
    前端虽乱,但测试很直观,暗坑少。
    后端你看就是个 CURD 吧,但里面暗坑多了去了。
    darlinghsu
        47
    darlinghsu  
       2023-03-30 09:35:40 +08:00
    前端前几年还是迅猛发展快速迭代的时期,体系内学习也是一步一步踩出来的

    前端你会 Vue2,再看 Vue3,也是要看几天的;更别说后端到前端,你基础都要从头熟悉;

    对于项目中的用法有基本了解,具体扩展和使用也很灵活,一看个人风格,二看项目需求;

    你后端去直接看 vue3 不懵逼才怪; 看了官方文档只是有个基础认知,大概怎么用而已,别想着上来就能干活;

    就好像你学 java,增删改查很 6 了,但实际场景仅仅这些就行了么?不需要做优化,不需要考虑数据场景等等一系列问题吗?

    本身也是经验性问题,不管后端还是前端,学习和实际工作都是踩了不少坑,才积累起来的技术面.没有一蹴而就的事情.


    所以,耐心看文档,慢慢熟悉使用,不要局限于思维定势,别想上来直接一把梭,不付出精力和时间怎么掌握新技术咯
    duke807
        48
    duke807  
       2023-03-30 09:45:04 +08:00 via Android
    活该,正是因为你曾经支持 vue2 才有了现在的 vue3
    duke807
        49
    duke807  
       2023-03-30 09:46:11 +08:00 via Android
    跟我没啥关系,反正我只用 vanllina js
    lingeo
        50
    lingeo  
       2023-03-30 09:47:29 +08:00
    大学第一次接触 web 开发,学习 html+css+js ,那时候用的还是 DW ,就是切图拼回去,觉得太 low 了然后彻底对前端失去兴趣,现在也就会个 html+css+js ,那时候做效果还是用文档树找节点,然后修改属性,后面接触到了 vue 确实头大。😂
    cmdOptionKana
        51
    cmdOptionKana  
       2023-03-30 09:52:09 +08:00   ❤️ 3
    后端主要面对机器,前端主要面对人类,前端本来就应该比后端复杂。

    机器的行为比较有规律,人类的行为千奇百怪,还会提出各种天马行空的需求。

    再加上近年来把后端的增删改查也大量搬到前端去做,前端既要即时保存数据,即时更新页面,同时也要同步到后端,处理同步冲突。后端反而强调“无状态”。后端能简单,正是因为有前端帮忙把复杂的部分给处理了。

    因此,以后端的身份说前端太复杂、发展太快,语气好像前端就该一看就懂不需要特别学习似的,就是太傲慢。
    cnuser002
        52
    cnuser002  
       2023-03-30 09:58:53 +08:00   ❤️ 1
    我觉得很大的一个原因在于,前端开发的目的, 从编写美观合理的网页, 变成开发基于浏览器接口的客户端应用。

    今天你纯用 HTML ,CSS 和 Javascript ,在一个文件里面,也是可以用简单易懂的代码写出效果还不错的页面,放到浏览器上就能跑了,也不需要纠结七七八八的东西。

    但要写个应用,就很麻烦。哪怕用 Android Studio 就写个 Hello World ,项目结构也是很复杂的。因为要兼顾很多方面么。

    更何况浏览器本来也不是专门为了应用开发而设计的接口,所以还有一个从 页面 ----> 应用的转换工作要社区去集思广益,就出来好多不同解决方案,增加了理解的复杂度。
    raymanr
        53
    raymanr  
       2023-03-30 10:10:04 +08:00
    我就想知道: 在 2023 年学 JavaScript 的体验会比 2016 年时候好点吗?
    yazinnnn
        54
    yazinnnn  
       2023-03-30 10:19:09 +08:00
    想一本道建议学 vb
    Yeen
        55
    Yeen  
       2023-03-30 10:19:36 +08:00
    @raymanr 真正了解现代 JS 生态,你会刮目相看。
    chuck1in
        56
    chuck1in  
       2023-03-30 10:20:09 +08:00
    @aloxaf react 现在国外抨击很多,未来大概率也要被淘汰掉,现在都是用什么 solid.js ,框架又变了。现在才学 react 的的话已经是落伍了。
    Yeen
        57
    Yeen  
       2023-03-30 10:20:46 +08:00
    现在 js 原生支持 class/继承 /async/await/等等现代语言特性。
    强的一批啊。
    轮子又多。
    euronx
        58
    euronx  
       2023-03-30 10:23:50 +08:00
    老板说写啥就写啥,花点时间学一下就完事了😁
    ChainBow
        59
    ChainBow  
       2023-03-30 10:26:35 +08:00
    还有人在语言黑,作为个程序员拿编程来干活的,这么多逼逼赖赖,不如别搬砖
    bojackhorseman
        60
    bojackhorseman  
       2023-03-30 10:26:45 +08:00
    我寻思 vue3 还是一样能用 vue2 的写法啊
    qzsi001
        61
    qzsi001  
       2023-03-30 10:27:31 +08:00
    @raymanr 如果你是指纯粹的 js ,体验绝对会好很多,es6 的普及,IE 的退出,都让前端开发在这种层面上舒服太多了
    bojackhorseman
        62
    bojackhorseman  
       2023-03-30 10:32:25 +08:00
    @yunyuyuan #25 中肯。管他什么框架,写来写去都是老三样
    fournoas
        63
    fournoas  
       2023-03-30 10:38:50 +08:00
    我投入 svelte 门下,类似 vue ,但是比 vue 好用,不需要和糟糕的 jsx 打交道
    yunyuyuan
        64
    yunyuyuan  
       2023-03-30 10:47:00 +08:00
    @fournoas 先不论 jsx 糟不糟糕,vue 哪里需要和 jsx 打交道了?官方文档又没有逼着用 jsx
    nzbin
        65
    nzbin  
       2023-03-30 10:49:43 +08:00
    要不试试 Angular ,比较稳定的 OOP 风格,还是熟悉的味道
    raymanr
        66
    raymanr  
       2023-03-30 10:51:26 +08:00   ❤️ 1
    @duke807
    @DOLLOR
    好家伙, 我还去真搜了下以为 Vanilla JS 又是什么新出的框架, 一看网页, 哟, 还各大公司都在用, 不过这些示例函数怎么有点眼熟啊...... 然后, 靠
    agdhole
        67
    agdhole  
       2023-03-30 10:51:37 +08:00   ❤️ 1
    Angular 一如既往的稳定
    flyico
        68
    flyico  
       2023-03-30 10:55:55 +08:00
    我想知道的是前端这些年造了这么多轮子,对性能的提升究竟有多少?比如我就是写个个人博客,用了框架和不用,能差多少?
    fournoas
        69
    fournoas  
       2023-03-30 11:04:27 +08:00
    @yunyuyuan jsx 这个指 react
    fournoas
        70
    fournoas  
       2023-03-30 11:05:48 +08:00
    @flyico 这些框架都是用来写 SPA 的,你博客用这种框架还得搞 SSR 来做 SEO
    810244966
        71
    810244966  
       2023-03-30 11:10:45 +08:00
    前端是真的麻烦,以前在学校里学前端时,有个界面的 css 调了好几个小时,后来做毕设时又被 npm 恶心到了,前两天又被 npm 恶心到了,下依赖时各种问题,对着网上各种解决办法试了一整天都没解决。。。
    cmdOptionKana
        72
    cmdOptionKana  
       2023-03-30 11:11:27 +08:00
    @flyico 面试造火箭,入职拧螺丝。

    招聘的时候按照大型复杂应用的标准来要求,因此如果找工作就不得不学最新技术,这在前后端或任何领域都一样。

    但如果只是写简单页面,用原生或 jQuery 就很好,vue/react 体现不出多大优势。后端也有类似的情况,老版本 linux 跑着老版本 web 框架的网站并不少见,同时新技术也是一大堆,Rust 都有几个 web 后端框架了。
    echoless
        73
    echoless  
    OP
       2023-03-30 11:14:48 +08:00
    @810244966 #71 前端仔会觉得你太菜了, 从来不觉得 npm install 恨不得把互联网下载下来有什么问题.
    echoless
        74
    echoless  
    OP
       2023-03-30 11:16:22 +08:00
    @echoless #73 之前玩过 haskell 的一个 build tool, 忘了啥了, 默认把 hackage 下载下来, 几十个 G 吧. 作者讲, 谁现在还在乎几十个 G 的硬盘空间...
    cmdOptionKana
        75
    cmdOptionKana  
       2023-03-30 11:19:14 +08:00
    @810244966 你学前端多少个小时,学 css 多少个小时,学后端又是多少个小时。

    你认为前端就应该随便学几个小时就能写好,如果几个小时学不好就是前端技术恶心吗?

    npm 很麻烦,但我第一次用 mvn 也是头皮发麻,竟然是 xml ,看起来没有严谨的逻辑,自己不会写,只能去网上抄,抄来的 xml 编译又报错,还有那个 classpath 一大串,又说找不到 Main ,另外还有 manifest 是什么鬼?

    不管前端还是后端,各有各的麻烦,没有系统学习自然会遇到各种问题,不能说恶心,要说就公平一点说整个编程体系都麻烦、都恶心。
    mooyo
        76
    mooyo  
       2023-03-30 11:51:40 +08:00
    为啥不承认前端的复杂性,现在很多前端的应用真不比客户端简单吧。
    Finnn
        77
    Finnn  
       2023-03-30 12:05:40 +08:00
    @aloxaf
    因为前端历史太短了, 在 10 年前还相当原始, 前端发展和计算机科学与硬件技术节奏严重不对等
    只能说近几年新的 ECMAScript 规范才有前端今天的繁荣, 算是跟上了计算机整体的行业发展节奏
    js 虽烂, 但一直以来几乎是唯一, 不像后端百花齐放, 压缩一下历史进程, 后端或者说其他方向都比 web 前端有故事?
    CRA 可一点都不新, 只是你恰好撞在了 react 切换工程化新赛道上
    chrosing
        78
    chrosing  
       2023-03-30 12:06:37 +08:00   ❤️ 1
    因为当年学 CSS 劝退走的后端 之前又是因为公司的要求要写页面 所以学了 Vue 。第一次看也是懵的 感觉文件看不懂 但是官网文档读了一遍后 根据饿了么的框架 可以慢慢加自己想要的功能了 , 我目前也只是能够根据现有轮子改一改 完完整整的设计一个交互页面 还是不行 只能写后端管理系统的页面
    mizuBai
        79
    mizuBai  
       2023-03-30 12:35:26 +08:00 via iPhone
    @DOLLOR 懂的都懂😆
    uni
        80
    uni  
       2023-03-30 12:39:05 +08:00
    vue3 确实很多套风格的写法,这个初看的时候我也很讨厌,尤其是一些教程和例子是这种写法,另一些教程和例子是那种写法,这样真的很妨碍学习
    我觉得 vue3 应该要在文档的醒目位置把最佳实践写清楚(现在应该是 setup script 了),然后至少自己的官方文档要做到统一最佳实践,不过我最近了 vue3 的官方文档我觉得这个做得也还行
    然后就是 react ,hook 出来之后混乱了一段时间,他们那个祖传的官方文档也是真的垃圾根本没法看,hook 自己摸索怎么写还是非常非常麻烦的。但是最近 react 的新文档上线了,怎么最佳实践写得很清楚,我觉得问题已经不大了
    raymanr
        81
    raymanr  
       2023-03-30 13:10:21 +08:00
    @Finnn 其实某种意义上来说, 前端也是蛮百花齐放的... 如果把 jquery, react, vue 这些类比成后端不同的语言, 我不知道是不是能好受点, 主要痛点还是: 换代太快了...
    Curtion
        82
    Curtion  
       2023-03-30 13:24:59 +08:00
    都一样,我是前端,进后端也是迷糊着的
    obulks
        83
    obulks  
       2023-03-30 13:25:13 +08:00
    前端就是 js ,js 就是前端,js 熟了用什么框架都一个鬼样
    xuanbg
        84
    xuanbg  
       364 天前
    要这么说的话,spring 恐怕比 vue 更恶心。但是,spring boot 确实挺好用,spring cloud 也挺方便的。令人恶心的部分,我都是无视的。这个世界上并不存在完美的产品,不好的那个点,不用他就好了。
    810244966
        85
    810244966  
       364 天前
    @echoless @cmdOptionKana 确实,太菜了,我后端出身的,进了公司前端也写,平时写写 js 、react 问题不大,npm 啥的本来都是公司配好的,但前两天拉的 package.json 不知道是不是有问题,以前拉的直接 npm i 就可以拉好了,这次出了各种问题,没系统学过,只能去搜索引擎找解决方案,但各种都试了,都没用。
    810244966
        86
    810244966  
       364 天前
    @chrosing 我和你差不多,也是大学里被 css 劝退前端,现在公司要求写 react 了 hhh
    Esen
        87
    Esen  
       364 天前
    都是搞框架了,拿各种轮子拼凑项目,所以现在学完基础也看不懂项目也正常,还得学框架
    chrosing
        88
    chrosing  
       364 天前
    @810244966 #86 哈哈哈哈 我没有读大学 纯粹是 css 调试太难弄了 稍微不好 页面就丑
    TWorldIsNButThis
        89
    TWorldIsNButThis  
       364 天前
    @aloxaf 那是语言的问题,kotlin scala groovy 什么的,随时随地造 dsl
    leega0
        90
    leega0  
       364 天前
    @810244966 不是菜不菜的问题,我一个老前端现在最怕的也是拉了项目 npm 安装各种报错启动不了,因为 npm 管理就是个黑盒,你都不知道你安装的这个包依赖了哪些包,如果没锁定版本,或者依赖包更新升级被删,怎么试也没用,只能重新找替换的或者把原来的拷贝进去。
    cmdOptionKana
        91
    cmdOptionKana  
       364 天前
    @810244966 我看看上面,没人说你菜。这种事情本来就很正常,搞编程,偶尔遇到一个问题比较难解决,没必要说自己菜,也没必要说某个领域很恶心。小事一桩而已,不适合上升到任何高度。
    Finnn
        92
    Finnn  
       364 天前
    @raymanr 这些怎么能算语言, jq 只能说是原生的语法糖, vue, react 当语言那 spring, larval 是不是也算了
    superzzy
        93
    superzzy  
       364 天前
    @kingterrors 赞!看了半天,终于有个回答到点上的人了!!!!
    Alliot
        94
    Alliot  
       364 天前
    @echoless 啊这。。。。 阁下将傲慢与偏见展现得淋漓尽致了属于是。
    对自己未知或者是一知半解的领域保持敬畏吧。。。
    echoless
        95
    echoless  
    OP
       364 天前
    @Alliot #94 啊这 欢迎拿你的一知半解来反驳我帖子的内容.
    edisonwong
        96
    edisonwong  
       364 天前   ❤️ 2
    我亲身经历:一开始是个运维,然后公司需要,我转 golang 后端,作为新手学习 go 知识,顶多学个 gorm + go mod +看看包的源码,发现写的还行。
    然后人员不够,我又开始写前端。vue 2 /3 就有区别, 最开始是用 js 写的,后面又要学习 ts 。还要配置 eslint 之类的。学会了怎么引包,终于能写出个页面了。还要调 css 。css 是我花费最长时间学习的。。还不一定能写出来。google 很久都不一定有解决方案。
    edisonwong
        97
    edisonwong  
       364 天前   ❤️ 2
    @edisonwong 接着上面,有时候我还要调组件的样式,无从下手。。。 我还从 0 写过 swift ,ios app 上架了。就是这么多语言里,我写 go 、swift 、python ,对比起来我写前端是最痛苦的,花费时间在网上搜资料去试 时间是最长的
    windghoul
        98
    windghoul  
       364 天前
    反正运维是最底层就对了 :doge
    ifbluethen
        99
    ifbluethen  
       364 天前
    为啥我觉得前后端现在很多地方都是相通的。
    edisonwong
        100
    edisonwong  
       364 天前
    @edisonwong 我也算是从 0 转 swift 、 转后端 go ,转前端。实话实话。。。我有信心 go ,swift 写出一个大项目,但前端我搞不定。。。或许我太菜了,html ,vue , css 之类的可能我没有找到一个 优秀、有效的学习路径
    1  2  
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   4466 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 37ms · UTC 05:33 · PVG 13:33 · LAX 22:33 · JFK 01:33
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.