前端只会用 JS 框架,但对 OOP 完全不懂,对 TS 还有排斥性,这种情况怎么解决比较合适? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
LongMaoz
V2EX    程序员

前端只会用 JS 框架,但对 OOP 完全不懂,对 TS 还有排斥性,这种情况怎么解决比较合适?

  •  2
     
  •   LongMaoz 2019-07-05 16:03:33 +08:00 6047 次点击
    这是一个创建于 2319 天前的主题,其中的信息可能已经有所发展或是发生改变。

    先说明情况吧

    0.招的时候我们还没用 Auglar,要求没放的那么高,能用 Vue.JS 框架血写页面就行了。


    1.新项目安全性和严谨性要求比较高,所以我跟经理讨论后决定使用 Angular 框架。
    2.前端我们是模块化+分层,由于考虑前端对业务逻辑和面向对象都不了解,所以我写成了 Service 让 Component 直接调用,每个模块有各自的 VM 层和 Http 层,Component 只需要调用 Http 层封装好的 Promise 获取数据 set 到 VM 层里面,视图绑定 VM 层数据就行了。
    3.我写了基础模块当教学 Demo,同时对各个概念进行解释,比如继承封装,interface,依赖注入和服务是什么,让他对着基础模块依葫芦画瓢,但是他对 OOP 完全没有概念,导致后续写第二个模块的时候很多代码不忍直视。
    4.可能是由于纯前端的关系,对强类型和 Angular 的各种概念很排斥,比如 Class 的方法属性写完最后转换还是会挂到原型链上,就觉得为什么不直接挂到原型链上写,然后就真写原型链上去了(你怎么不直接写汇编语言呢??????),碰到泛型需要丢参数的时候喜欢直接丢个 Any 进去,不喜欢写接口或者类作为泛型参数(他甚至认为 new 了一个 Array<interface>,是实例化那个 interface )......
    5.最主要的是不愿意去学习 OOP 的编程思想,还是抱着原来的思想在编程,而且没事就说 Angular 不好用(虽然上手难度确实很高),Vue 好用多了,我说 Vue 下个迭代版本也要用 TS 了,他还是嘴硬说反正最后都转成 JS,觉得前端强类型写类写接口没什么用(似乎有道理,但是可以提升开发效率和开发体验啊)。。
    -1.我跟前端关系不错,主要是要问怎么给他洗脑( TS 大法好) </interface>
    第 1 条附言    2019-07-05 16:41:44 +08:00
    老哥们别解决人了,解决了人又得重新招人交接,我又得延迟离职,这就血亏了
    53 条回复    2019-07-09 14:46:56 +08:00
    cuzfinal
        1
    cuzfinal  
       2019-07-05 16:08:00 +08:00
    试用期直接开了再招一个
    Caballarii
        2
    Caballarii  
       2019-07-05 16:10:48 +08:00
    代码评审记绩效呗,受不了就自己跑了
    LongMaoz
        3
    LongMaoz  
    OP
       2019-07-05 16:11:18 +08:00
    @cuzfinal 不是要解决人,是解决问题,我还没权利直接把人解决了,而且这个前端以后要接我的盘的,开了我一时半会就走不了了。。。。 又得交接好久
    SEARCHINGFREE
        4
    SEARCHINGFREE  
       2019-07-05 16:11:59 +08:00
    有加钱的选项吗
    weixiangzhe
        5
    weixiangzhe  
       2019-07-05 16:12:54 +08:00 via iPhone
    再招一个
    MrYELiex
        6
    MrYELiex  
       2019-07-05 16:13:09 +08:00
    看你给了多少钱啊 如果给个 5k 6k 要啥自行车
    yhxx
        7
    yhxx  
       2019-07-05 16:15:22 +08:00
    (怎么感觉是在说我
    一直不喜欢 TS
    LongMaoz
        8
    LongMaoz  
    OP
       2019-07-05 16:16:20 +08:00
    @Caballarii
    @SEARCHINGFREE
    @weixiangzhe
    不太行啊,我交接完我人就溜了,再招一个是浪费我的时间啊!我血亏

    @MrYELiex
    咱也不知道给了多少钱,咱也没问
    xrr2016
        9
    xrr2016  
       2019-07-05 16:16:30 +08:00
    就一个 TS 而已都不愿学吗...基础好一个下午基本就明白了啊,不明白为啥要排斥
    quickma
        10
    quickma  
       2019-07-05 16:17:08 +08:00
    你合理交接就好了,工作内容能够完成这些有的没的都无所谓啊
    lixiangzaizheli
        11
    lixiangzaizheli  
       2019-07-05 16:19:53 +08:00
    开掉
    Caballarii
        12
    Caballarii  
       2019-07-05 16:20:28 +08:00
    都准备跑了还管他们用啥干嘛,爱用 Vue 就用 Vue
    liuhuansir
        13
    liuhuansir  
       2019-07-05 16:20:47 +08:00
    你要是换成 react+ts 估计抱怨就少了,angular 入门难度比另外两个高太多
    CFO
        14
    CFO  
       2019-07-05 16:22:09 +08:00 via Android
    解决人吧 最快最有效
    misaka19000
        15
    misaka19000  
       2019-07-05 16:22:12 +08:00
    你没有人权?那找个有人事权的人来解决
    Torpedo
        16
    Torpedo  
       2019-07-05 16:28:18 +08:00
    两方面:
    1、想办法改变他,简化他的开发流程,把需求拆解的简单
    2、技术选型必然考虑现有人员的水平。选的技术再好,同事用不了也没辙
    clayyj1210
        17
    clayyj1210  
       2019-07-05 16:34:37 +08:00
    8 楼都说了要走了,最基本代码能跑起来就 OK。其它的都是锦上添花啊。
    Justin13
        18
    Justin13  
       2019-07-05 16:43:14 +08:00 via Android
    类型好用,TS suck
    OOP 说白了也就是抽象的一种方式,如果自己有好的抽象没有必须写 OOP 的说法
    LongMaoz
        19
    LongMaoz  
    OP
       2019-07-05 16:43:23 +08:00
    @x7395759
    @Caballarii
    @CFO
    @misaka19000
    @clayyj1210
    主要是又不能解决人,不然会延迟我离职时间,又要他写的代码能过得去经理的眼,不然就是我交接的问题了,这就很难受
    rockyou12
        20
    rockyou12  
       2019-07-05 16:44:30 +08:00
    只要 css 要求不是很高,lz 还不如找个有前端经验的后端,写 Auglar 不是分分种的事
    Caballarii
        21
    Caballarii  
       2019-07-05 16:46:23 +08:00
    @LongMaoz 提前一个月通知就可以跑路了,后面的事该经理自己去解决,仁至义尽了
    rb6221
        22
    rb6221  
       2019-07-05 16:49:17 +08:00 via iPhone
    为啥你都要走了还考虑别人怎么填你的坑?
    toma77
        23
    toma77  
       2019-07-05 16:53:00 +08:00
    大神告诉我泛型随便泛泛就好了
    Creabine
        24
    Creabine  
       2019-07-05 17:04:54 +08:00   1
    说了半天楼主要离职了是最骚的哈哈哈
    yyzcl
        25
    yyzcl  
       2019-07-05 17:16:46 +08:00
    ts 这么香都不愿意上吗
    chanchan
        26
    chanchan  
       2019-07-05 17:27:17 +08:00
    在我的脑海里,做前端的不都是喜欢接触各种新技术的人吗
    cheeto
        27
    cheeto  
       2019-07-05 17:33:34 +08:00
    @chanchan 是被逼着接触各种新技术,哈哈,反正我是给自己洗脑成喜欢各种新技术了,干嘛都不反感
    KuroNekoFan
        28
    KuroNekoFan  
       2019-07-05 17:52:40 +08:00
    不喜欢 ts 是可以理解的,只会用框架就不能忍了
    dmjob2015222
        29
    dmjob2015222  
       2019-07-05 18:25:24 +08:00
    看来以后找工作,不会写个框架是不行了!
    ben1024
        30
    ben1024  
       2019-07-05 18:30:42 +08:00
    同不喜欢 TS,以前还是 React 粉,现在变成了 Vue 粉 [对不起组织]
    beginor
        31
    beginor  
       2019-07-05 19:47:46 +08:00 via Android
    Angular 难度高么, 不觉得呀。React 和 Vue 全家桶加起来难度也不低吧
    Louis007
        32
    Louis007  
       2019-07-05 19:53:55 +08:00 via iPhone
    一直写 vue,最近学 angular,真香~
    oatw
        33
    oatw  
       2019-07-05 20:03:02 +08:00 via Android
    如果只是要渗透 oop 思想 那何不威逼利诱学 java 或者更好的选择 ruby

    但是本着解决问题的目的来看 做技术选型这个事更多的还是要考虑团队成员的驾驭能力 即使不 oop 也可以写出质量不错的代码 也不一定非要用某些所谓的更先进的技术 成本是多方面的

    当然 总有一方需要妥协 如果不想向团队妥协 那就建立能驾驭当前技术选型的团队 要让一个对编程不太了解的人 熟悉原理并且写出过关的代码还是需要时间和精力的
    version
        34
    version  
       2019-07-05 20:06:52 +08:00 via iPhone
    ng 成本太高了,最好推荐还是 vue 也不要用 ts 前端强类型有点不太适用,有些数据可能是错的,抛出来,按服务端的严格度,有点招人难,工资不低
    如今前端都是万元起步也是半桶水的人多,推荐不留坑还是简单的来,然后人员流动也不会阻碍进度
    前端工程师其实大部分做前端页面,让他们深入后台管理页面其实这个带不上来的,喊不动人的,所以就自己写 vue,全栈不求人,
    hareandlion
        35
    hareandlion  
       2019-07-05 20:15:17 +08:00
    ts....今天遇到个框架语法错误,查了半天的 ts 语法和框架代码不得其解,最后改了 babel 设置,就直接能跑了,是我太菜了吗
    Sparetire
        36
    Sparetire  
       2019-07-06 02:57:10 +08:00 via Android
    如果不说是要走了的话,我完全滋瓷楼主,但是要走了,在人员不熟悉新技术栈的情况下还要更换技术栈,难免有干一票新技术给简历加分的嫌疑。。
    当然即便如此也不意味着那个前端就不菜了,只是相对公司来有点不负责,不过我也不是资本家,换我我也乐意刷简历
    good1uck
        37
    good1uck  
       2019-07-06 03:29:17 +08:00 via Android
    @Creabine 哈哈哈 最近吐槽同事的老哥很多 就这篇情商很高 楼主是做大事的人
    cheesemp
        38
    cheesemp  
       2019-07-06 07:28:24 +08:00
    我觉得你们的前端也没什么大问题。
    OOP ??? 怎么不问为什么不用函数式编程? JS 没有 OOP 一样过的很好。 继承, 封装, 多态。在 ES6 前都是些什么东西。prototype, closure,prototype,,ES6 后还是这些东西。

    学 NG 对前端不划算。 经验打折。
    TS 无所谓。VUE3.0 用 TS 写了。JS 就用不了? 也就你们后端觉得 TS 跟神一样。 因为你们害怕 JS。
    youngxhui
        39
    youngxhui  
       2019-07-06 07:53:49 +08:00
    找个 java 程序员,分分钟明白,然后前端就可以下岗了 (狗头保命)
    xnode
        40
    xnode  
       2019-07-06 09:18:35 +08:00
    js 不适合 oop ,这也是为什么 vue 能火的一个原因,当然高手可以无视
    daquandiao2
        41
    daquandiao2  
       2019-07-06 14:01:51 +08:00
    ts 是不是前端圈的政治正确
    lk920724
        42
    lk920724  
       2019-07-06 14:38:14 +08:00
    ts 大法好,js 太随意了。强类型语言是世界上最好的语言(逃
    will0404
        43
    will0404  
       2019-07-06 14:58:04 +08:00
    @lk920724 你得知道,ts 也是弱类型(逃
    lk920724
        44
    lk920724  
       2019-07-06 17:31:17 +08:00
    @will0404 不听不听,tS 就是比 JS 好(狗头.png
    ThiagoJC
        45
    ThiagoJC  
       2019-07-06 18:38:16 +08:00
    对于思想固执的人真是没啥好办法,只能找老板来洗脑了手动狗头
    connection
        46
    connection  
       2019-07-06 21:20:53 +08:00
    拿 oop 封装的前端业务层,我看过,oop 不熟练或者对业务层不熟悉,写出来的就是 shi

    前端的组合性感觉还是比 oop 继承性来的更舒服一点。

    前端一部分人只是用 ts 写写类型定义罢了
    jaskle
        47
    jaskle  
       2019-07-07 07:03:26 +08:00 via Android
    弱弱的问:前端不是说能随便描出来就行了么?搞那么深奥不浪费时间么?迭代那么快。最关键的是写的再渣不会占用服务器资源,也不会导致安全性。
    ts 我倒是用了一阵,确实不错,但是也有缺陷,尤其是调试时候不够友好,毕竟是转的。所以个人感觉如果 ts 变为原生引擎支持,那我毫不犹豫扔了 js
    marcong95
        48
    marcong95  
       2019-07-07 13:04:44 +08:00
    前端何苦写什么 OOP 呢,前端的各种组件感觉都很少继承关系。。
    ciaoly
        49
    ciaoly  
       2019-07-07 22:07:23 +08:00 via Android
    强行让前端 OOP 简直是在耍流氓。当然排斥学习这就是前端的不对了。
    另外,人家把继承直接挂在 prototype 上一点毛病都木有,毕竟这是 JS 又不是 Java,他要是函数式了那才抓狂呢。
    chenyu0532
        50
    chenyu0532  
       2019-07-07 23:29:29 +08:00
    我就不愿意用 ts。。说不上为什么,js 和 ts 让我选择,我第一选择肯定是 js,同样我也喜欢 lua
    charten
        51
    charten  
       2019-07-07 23:58:05 +08:00
    最开始我也讨厌 ts,而且固执地认为只有代码写不好的人才会用 ts 的类型系统,要是对 js 理解深刻,写的时候根本不会犯那些低级的错误。。。直到某一天用 vscode 打开了某个 ts 文件。。。。真香~
    xiangyuecn
        52
    xiangyuecn  
       2019-07-08 00:06:39 +08:00
    看了这个帖子我就发了一个帖子 /t/580832

    不会 Angular、也不会 Vue,但学起来很快的,包括 ts,都是水到渠成的事情

    假设去你们那,不知道能不能通过第一轮面试,楼主帮忙鉴定鉴定
    colorcat
        53
    colorcat  
       2019-07-09 14:46:56 +08:00
    谁说 OOP 就是继承了啊,我的天啊,楼上的一群神人,你们 es6 照样 extends 写的飞起啊,瞎喷
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2645 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 27ms UTC 09:45 PVG 17:45 LAX 01:45 JFK 04:45
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86