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

技术上是广度优先还是深度优先?请各位大佬指点迷津

  •  
  •   lichen003 · 208 天前 · 6489 次点击
    这是一个创建于 208 天前的主题,其中的信息可能已经有所发展或是发生改变。

    是多学几门语言好,还是先把一门语言学精

    87 回复  |  直到 2019-05-16 14:32:15 +08:00
        1
    artandlol   208 天前 via iPhone   ♥ 1
    小孩子才做选择
        2
    gliyechen   208 天前
    个人感觉先广度一下,发现喜欢的,再深度一下
        3
    Ediacaran   208 天前 via iPhone   ♥ 9
    去一个新城市,先扫一眼地图,然后想去的景点认真看
        4
    wu67   208 天前
    个人感觉是广度.

    曾经被问过‘你的简历就一张纸?’ ‘好的, 你还会其他语言吗? ...’ ‘你有用过某某某吗?’.

    广度不够, 连逼都装不出来, 人家也不继续关心你的深度了, ‘好了今天就这样吧, 你先回去等通知, 我们近期就会给你答复’...
        5
    wyntalgeer   208 天前   ♥ 1
    如果楼主会双重影分身,那无疑先学 C 和 JAVA
    如果楼主会三重影分身,那无疑先学 C、JAVA 和 Dart(flutter)
    如果楼主会多重影分身,请 gayhub 搜一下技能书,同时点亮所有叶子就可以了

    那么问题来了,楼主会几重影分身?
        6
    index90   208 天前
    技术的广度就是多学几门语言……
        7
    zhuangzhuang1988   208 天前   ♥ 1
    先深度后广度。
        8
    ynohoahc   208 天前
    广度能给开发者带来更好的安全感
        9
    undeflife   208 天前
    广不是具体的语言。 会用 10 种语言写 hello world 也没什么用,比如你主要专注后端的,那了解下前端的生态、工具链等,而不是盲目去怼 Javascript,这是广 。别的方向也是相同的道理。
        10
    lichen003   208 天前   ♥ 1
    @wyntalgeer 我可能就是鸣人刚学分身术时,分出来的那个
        11
    labnotok   208 天前
    迭代加深
        12
    yuchting   208 天前
    广度决定门面,深度决定内涵
        13
    meetocean   208 天前
    一精多广。
    精通一门语言,其它语言都差不多,可以举一反三,闻一知百。
        14
    ipwx   208 天前   ♥ 2
    我的经验是,先深度,后广度。

    不论是编程语言,还是数学,还是学机器学习。
        15
    marsgt   208 天前
    多学几门语言不如多学几门语言吧。。🤦‍♂

    可能你学到第三门就知道了,语言设计都大同小异(包括类型系统啊流程控制啊什么的),最多会带一些本门特性(坑),和你追求的“广度”应该差的很远。。。当然也不排除确实有装 13 需求这种情况🤷‍♂
        16
    lichen003   208 天前
    @index90 不好意思,可能描述不是太准确,大佬你可以说说你的见解
        17
    PALELESS   208 天前
    个人感觉, 先广度, 在深度, 比如先学会使用 linux, 懂得网络是如何运转, 明白什么是数据库..., 然后再进行个人爱好进行深度学习, 程序员就搞算法, 诸如此类
        18
    lichen003   208 天前
    @undeflife 嗯,我描述的不是太清楚,不好意思哈
        19
    Fazauw   208 天前 via Android
    深造广度优先,尤其从底层一层层的缕上去
    急着赚钱就专精一门 js,php 这样的应用层面的技术。
        20
    way2create   208 天前
    广度也是要建立在一定深度基础上的吧,写 hello world 或者熟悉普通 mvc 框架 那种也不叫广了 随便就能上手的
        21
    version   208 天前   ♥ 4
    数据结构.设计模式 很熟练了一门语言后.
    去学其它语言.基本都很容易.从中你会发现每种语言个有特定需求的优势..

    后端开发者:数据量 10 万 50 万 100 万 1 千万 和并发 10 并发 100 并发 1000 并发 1000 多人长连保持, 你会发现完全都不是一个世界

    前端开发者:页面性能.打开解析速度.兼容度.开发效率.设计效果和自己写的效果是否千差万别.等都值得研究..
        22
    lichen003   208 天前
    @version 嗯,我觉得最重要的还是基本功,像数据结构,操作系统等等,这些都是真正的屠龙技啊
        23
    FFSephiroth   208 天前
    比较形象的比喻是,广度决定了你能就业的范围,深度决定了你能带就业公司中做的有多高
        24
    busyboy   208 天前
    如果你想去大厂工作,就先深度,但要足够深,如果你只是想先找到工作,就业; 那就先广度。
        25
    Deteriorator   208 天前
    看你的工作,测试是先广后深,开发是先深后广
        26
    loveour   208 天前
    个人认为,一般来说,要先达到一定的广度吧,这个广度,不是说多几门语言,而是计算机的基础知识,了解程序运行原理,数据结构,软件工程,网络知识,数据库等的相关理论。
        27
    lichen003   208 天前
    @loveour 嗯,计算机基础知识是内功
        28
    babytomas   208 天前
    当然是"广度"优先, 二八定律.

    一门技术在你学习到 20% 的时候就可以完成大部分工作了, 余下的"深度"再根据需要精修.
        29
    xuanbg   208 天前
    技术的广度绝不是多学几门语言啊,语言学的再多,增加的广度也很有限的,楼主千万不要自误。
        30
    daryl   208 天前
    基础知识学扎实,再来谈深度还是广度。
        31
    Takamine   208 天前 via Android
    给你一个公式 `20%*20%<5% `体会:smile:。
        32
    passerbytiny   208 天前
    @lichen003 这不是鱼与熊掌不可兼得的关系,这是先迈左脚还是先迈右脚的关系。没有对一的深入学习,哪里来的对多的全面了解;没有对多的全面了解,哪来的对一的深入理解。
        33
    111qqz   208 天前 via Android
    @wu67 感觉与其说是因为没有广度,不如说是技能不 match ……
        34
    gaobing   208 天前 via Android   ♥ 1
    以工作为目的深度优先,不用工作纯兴趣广度优先。
        35
    Justin13   208 天前 via Android
    先广后深
        36
    lscho   208 天前
    一群人这么认真的讨论是认真的吗?你想要深度的话,自然而且必然会有广度。。。像贯通广度的话,必然会有深入的理解。。。#32 说的是对的。
        37
    lincanbin   208 天前 via Android
    往深了走,自然而然就会有广度
        38
    nguoidiqua   208 天前   ♥ 1
    先博而后渊,这是杨昌济给他某个学生的答案,这个学生开始换了不少学校。

    上面已经有人提到了,其实大部分技能,开始花点时间就可以掌握绝大部分,想继续深入,那要花的时间成指数增加。一百个小时可以工作,一万个小时才能成为专家。这一万个小时就要好多年,总得先看看情况再决定吧,先再花几百个小时学点别的看看不会亏,磨刀不误砍柴工。

    而且学习这个事情也需要一个周期,有瓶颈期,并不是全部投入于此就能加快进度的,这个和人月神话讲的道理差不多。
        39
    supuwoerc   208 天前
    这问题==粗的好还是长的好(搞黄色)
        40
    nguoidiqua   208 天前
    另外讲句现实的话,提升广度要比提升深度容易得多,现实得多。

    并不是每个人坚持一万个小时都能成为专家的,最怕的结果是既没有广度,也没有什么深度。现实情况中,绝大部分人是一年经验用多年。

    而且深度这玩意,并不固定,是不断被人在拉高的。现在看起来很深度的技术,可能几年后属于很平常的技术。群体中,最终都只能有少数成为技术引领者,如果不能竞争过他们,那么你就在被拉远,就算你自己相对自己深度增加了,也在被拉远。
        41
    bk201   208 天前
    先广后深再广,自己体会
        42
    YouXia   208 天前
    @wu67 那是因为你的简历没有让面试官可以问的地方。
        43
    quqiuzhu   208 天前 via Android
    先深度,深度自然会带来广度,先广度没效率。
        44
    woscaizi   208 天前
    先广再深。
    先 get 到编程界的一些趋势,然后再深入学习一项。。
        45
    lzxz1234   208 天前
    专职深,它职广,工作用到的要深,之外的要广
        46
    zzh1224   208 天前
    通常是深度钻研的厉害,但是很多人都做不到,所以只能退而求其次,在广度上做文章
        47
    vanishcode   208 天前 via Android
    一专多能
        48
    chnhyg   208 天前 via iPhone
    没得选,

    打个比方,

    用锄头挖地,只在一个点挖(深度)是挖不深的,要挖深必须还要挖开旁边的土壤(广度)。
        49
    lichen003   208 天前
    @gaobing 有道理
        50
    lichen003   208 天前
    @nguoidiqua 先博而后渊是不是可以狭义的理解为先学习好基本的一些计算机知识,然后再朝着一个方向深耕
        51
    saozhu   208 天前 via iPhone
    知识广度是知识深度的副产品
        52
    lichen003   208 天前
    @lscho 认真讨论才好了,这样才能集思广益啊
        53
    smdbh   208 天前 via iPhone
    当然是广度,九浅才一深
        54
    nguoidiqua   208 天前
    @lichen003 可以这么说吧。杨昌济的意思是要先去多去了解下不同的知识,有一定见识了,有了对比了,再自己决定自己的方向。
        55
    lichen003   208 天前
    @nguoidiqua 嗯,受教了
        56
    zqguo   208 天前
    先广后深
        57
    tankren   208 天前
    工作用得到的要深,工作范围之外的要追求广,顺便追求高度
        58
    ShaunSS   208 天前
    先广度, 视野够用之后再深度.
        59
    taotaodaddy   208 天前 via Android
    先深再广,再深再广,再深再广,无穷匮矣
        60
    anyele   208 天前 via Android
    都要,但先深度,时间分配用 7 深 3 广
        61
    Bardon   208 天前
    必然不是深度,先深的后果是,你到可以横向扩展的时候,已经过去好多年了,你等得起么
    必然是先吃上饭,再考虑深研
        62
    chenoe   208 天前 via Android
    参考下目前浙江高中信息技术的教法。基本是教 VB,但是实际上搞了半天最后弄得最多的是算法。VB 其实到最后没教几条语句,90%的时间都是处理算法,各种程序填空、程序纠错、自主设计。最后毕业了如果你需要提高广度。那就试试看把你学过的东西放到别的语言里面实现。另外本身教 VB 其实也有争议,总的来说就是到底用什么语言也要跟上时代的步伐。希望对你有帮助。
        63
    murmur   208 天前
    吹牛逼的技术优先
    再广的东西吹不出来也是白扯
        64
    filazy   208 天前
    其实知识体是个球状,要挖掘完它,可以从一个洞打到底也可以一层一层地挖,这就是学深和学广的区别,最终是殊途同归,都是又深又广
        65
    linvaux   208 天前 via Android   ♥ 1
    建议深度优先欸,不然干都是半吊子,满瓶水不响,半瓶水晃荡
        66
    Weixiao0725   208 天前
    千万不能深度,而且就算是深,也要适可而止,量力而行,否则很容易浪费大量时间。
        67
    anmie   208 天前
    我来给楼主带来另外一个视角:
    看你在什么地方,大城市机会多,就业环境好,就注重深度,茫茫程序猿海中,这必然是你的亮点
    但是假如在三四线小城市,你会的 Android 可能都找不到工作 你懂吗?
    但其实深度和广度都不是特别的重要,重要的是你工作一段时间后的学习能力,触类旁通,学什么语言技术根本就是几天的事,这时候你认为你讨论这个问题还有意义吗?没有了,想深就深,想广就广
        68
    arzterk   208 天前
    工资优先
        69
    lichen003   208 天前
    @anmie 嗯,很多东西还是要考虑实际情况
        70
    qiumaoyuan   208 天前
    广度优先的坏处是容易不小心觉得自己什么都会,容易盲目自信,真要开始干的时候什么也干不好。比如说大部分程序员觉得自己会写代码。
        71
    lib360   208 天前
    PS:说了你也不会听,也听不进去

    技术只是一环,更重要的是,好好利用技术做一些有价值的事情,这个是最重要的,学什么技术应该取决于你找一件有意义的事情去做
        72
    lichen003   208 天前
    @lib360 可能我缺少的是一件有意义的是去驱动自己吧,哈哈哈
        73
    Cbdy   208 天前 via Android
    都要,做 T 字形人才
        74
    micean   208 天前
    广度优先
    深度除非你有信心特别深,可以通用领域(算法、协议、通信之类)深耕
        75
    BUPTGuo   208 天前
    如果单纯指语言的话,搞通两个足以
        76
    wly19960911   208 天前   ♥ 1
    广度优先,别钻到自己的技术栈里面去,太多的算法、用法,你平时不可能接触,多接触多思考,然后对比优劣来为自己以后的进阶打下基础。

    目前很多深度你没法掌握,我现在的考虑是多看,看其他语言对一个项目的分层、差异,好处和坏处。然后培养成能掌握一个应用每个模块,这个东西仅仅看自己公司或者盯着深度没法掌握。然后还能掌握一些设计模式上的经验,然后把经验应用到自己的领域继续深挖。
        77
    michaelcheng   208 天前
    张无忌先练精了九阳神功,再学其他武林绝学更是事半功倍。
        78
    baiducom   208 天前 via Android
    哈哈哈 技术吧!
        79
    chiu   208 天前
    工作三年,个人目前倾向于深度优先,感觉自己工作了几年还没有在哪个领域上技术比较深入,觉得和刚毕业差不多
        80
    sunweiqiang8   208 天前
    深度优先,大型企业没有全栈,但不乏各个领域内专家
        81
    ww940521   208 天前
    最重要的是基础吧,先别谈什么广度深度。
        82
    lonelygo   208 天前
    个人认为:谈广度的前提是应该有一个或多个锚定的深度。
    换句话说:搞明白一两件事,然后拓展到周边相关领域,然后回头再看,就知道其实还不算明白了。
    或者说:没有体系化的广度只能算是“健谈”而不能说是对某个领域理解全面。
        83
    whutxzj   208 天前
    前期:术业有专攻
    后期:一览众山小
        84
    coderluan   208 天前
    理论来说,都是先深度走两年,到时候根据自己的实际情况,决定接下来走深度还是广度。

    实际来说,大多数情况就是工资优先,给更高的工资就跳槽了,根本不太会考虑下一份工作是适合深度还是广度,大部分人没时间没能力业余时间学习。
        85
    wr410   208 天前
    不知道你说的深度是什么?

    当年我 basic 玩的炉火纯青,可是现在他妈的 basic 被淘汰了!!!
        86
    opengps   208 天前 via Android
    跟着需求走,用到什么学什么
        87
    chevalier   208 天前
    先把日常工作用到的技术栈,给深入了。一方面有利于业务发展和团队装逼,另一方面也有利于面试。
    每个公司的技术栈都不尽一样,面试官不会追着你不熟悉的东西持续问,会深入问你项目中用到的东西。
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   4159 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 29ms · UTC 07:39 · PVG 15:39 · LAX 23:39 · JFK 02:39
    ♥ Do have faith in what you're doing.