miracleyao
V2EX  ›  随想

大家是否认同这样一句话?

  •  
  •   miracleyao · Aug 4, 2020 · 4791 views
    This topic created in 2283 days ago, the information mentioned may be changed or developed.

    你所使用的编程语言会将你的思维模式固化并逐渐远离其他语言,而且往往发生在潜移默化中。

    Supplement 1  ·  Aug 5, 2020
    看了大家的谈论,我补充一下。这句话是出自 Bruce Eckel 的新书《 On Java 8 》,Bruce Eckel 是《 Java 编程思想》作者,原文是:A language gently guides you into certain modes of thought and away from others.
    我的主力语言是 Java,同时写一点 Go,我看到有其他语言背景(PHP 、Java 等)在写 Go 的时候会受到之前语言范式(或经验)影响,包括我本人,写出的 Go 代码不是很 Go,当然这个可能跟语言熟悉度、个人能力有一定相关性。
    22 replies  •  2020-08-05 10:52:18 +08:00
    getadoggie
    getadoggie
    Aug 4, 2020
    1
    编程语言首先是死的东西,它无法做什么。
    或许是你以为喜欢某编程语言的思维,继而不断深入学习这种思维,自然很惯于使用它。
    只要你愿意,随时可以换另一种语言,另一种思维。
    getadoggie
    getadoggie
    Aug 4, 2020
    2
    1 # 是“因为”,不是“以为”
    kop1989
    kop1989
    Aug 4, 2020
    3
    不认同。这种情况只存在于初学者,即会且仅会一门语言的情况下。
    而两种编程语言之间又不是鱼与熊掌。
    一旦你掌握两种及以上语言,这种情况就会消失。
    Kagari
    Kagari
    Aug 4, 2020 via Android
    4
    不认同,除非你的内心语言也是编程语言
    Ehend
    Ehend
    Aug 4, 2020 via Android
    5
    不会,编程语言是编程语言,编程思想是编程思想
    DJQTDJ
    DJQTDJ
    Aug 4, 2020❤️3
    6
    你应该改成

    你学习到的任何事情都会将你的思维模式固化,并丧失自我思考的可能
    threebr
    threebr
    Aug 4, 2020 via Android
    7
    不如说随着年龄的增加,思维固化是大概率事件
    levn
    levn
    Aug 4, 2020
    8
    可能会影响一点点认知,但是对于人格来说应该还是非常边缘的地带。
    speculatorA
    speculatorA
    Aug 4, 2020
    9
    你学一门并用的时候,肯定需要使用它的思维才能更好开发使用,偏激可以说是思维固化。
    离开其他语言,可能是极端专注,但大部分是懒不愿意学习其他。
    raaaaaar
    raaaaaar
    Aug 4, 2020 via Android
    10
    编程范式可能有影响。。
    takemeaway
    takemeaway
    Aug 4, 2020
    11
    你是刚入门吧? 哈哈
    编程语言本质上都是一样的,在处理逻辑和思维模式也都是一样的。只不过是各家表述写法不同。
    coderluan
    coderluan
    Aug 4, 2020
    12
    你要是一直浮在个很浅的位置确实会这样, 但是如果深入了解一门语言, 知道各种缺点和限制后, 反而会对别的语言感兴趣, 然后跑去学习, 学了之后发现还是有别的问题, 然后再学别的, 一直这样折腾下来, 才能真的理解什么叫"语言只是工具", "没有最好的语言, 只有某个场景最适合的语言",之类的.
    chenyu8674
    chenyu8674
    Aug 4, 2020
    13
    这句话仅限于长时间只用一种语言的人

    不同语言多写写思维就会关注在先做什么后做什么上了,但也容易因为忽略语言而 String 转 Int 都要现查一下……
    MrTreasure
    MrTreasure
    Aug 4, 2020
    14
    不会 学习了 JavaScript 又学了 ts nodejs 再学 go 就很简单了。API 都差不多,nodejs 有的在 go 里面都能找得到。编程思维也差不多
    DoubleShut
    DoubleShut
    Aug 4, 2020
    15
    标题像是成功学讲师😂
    w830I8ikCnasfN4q
    w830I8ikCnasfN4q
    Aug 4, 2020
    16
    如果是应届生的话多学几门语言是可以的, 工作两三年后, 在学新语言, 多少有点抵触的
    namelosw
    namelosw
    Aug 4, 2020❤️2
    17
    认同楼主这句话。楼上大部分人的观点和反例反而印证了这点。

    我的经历是大部分人从来没有用类似 Haskell,Prolog,Agda 或者 Erlang 的思想去看待过编程,或者反过来从 Forth 和 Cobol 的角度看待编程。这些语言只是举例,每个语言背后代表了一种截然不同的思想,也就是所谓的 Perlis Language:不能影响你思维方式的语言不值得学习。

    随便列举几个问题:
    1. 列表和异步之间有什么共同点?
    2. 能不能只描述问题,不说怎么解,就期望代码能给你答案?
    3. 测试只能证明代码有错,怎么才能证明代码没错?
    4. 为什么生物的生存能力这么强?壁虎可以把两只胳膊都接植到一只胳膊上,壁虎会有两个胳膊肘,但是结果还能用,为什么平常代码不能随便拿个模块混装到别的地方?


    假如编程的圈子是是银河系,而大部分人的认知只限制在太阳系里,所以觉得编程语言不会影响思维,或者觉得这种情况只局限于初学者,多少有点坐井观天。
    lxilu
    lxilu
    Aug 5, 2020
    18
    标题可以写下这句话
    iseki
    iseki
    Aug 5, 2020 via Android
    19
    看你怎么理解这句话了
    MinQ
    MinQ
    Aug 5, 2020
    20
    在我个人看来现在的高级语言之间只是各种不同的方言而已,反而是汇编跟高级语言之间更接近外语,存在一个翻译的过程
    Reficul
    Reficul
    Aug 5, 2020
    22
    可以看下《七周七语言》,不同范式语言的思想是迥异的,长期熟悉一门语言的确会影响思维。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   4834 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 64ms · UTC 09:22 · PVG 17:22 · LAX 01:22 · JFK 04:22
    ♥ Do have faith in what you're doing.