代码之家  ›  专栏  ›  技术社区  ›  killown

来自Python的第二种编程语言应该学习什么?[关闭]

  •  6
  • killown  · 技术社区  · 14 年前

    我在想学一门更低级的语言,比如C,但在此之前,我想先谈谈:

    1. 你推荐学什么第二语言?
    2. 学习一门低级语言会使我成为一名更好的程序员吗?
    3. 真的有必要学习第二种编程语言吗?
    4 回复  |  直到 14 年前
        1
  •  3
  •   Skilldrick    14 年前

    后退:

    (3)绝对-通过学习多种语言,你的能力将提高一个数量级。

    (2)一种低级语言会使你成为一个更好的程序员——或者一种功能性语言也会有帮助。

    (1)低水平:使用C.功能,尝试方案或haskell。如果您有需要,C还可以向Python编写扩展模块。

        2
  •  1
  •   Richard    14 年前

    你推荐学什么第二语言?

    必须的东西(即相同的范例),但不同的。Python是动态类型的,具有显著的空格,因此静态的类型没有显著的空格:例如Java或C.*。

    这也将是迈向C的一个很好的踏脚石。C的好处是你真的知道发生了什么,但是有一个缺点,那就是你必须控制一切。对于大多数业务问题,不需要这种级别的控制。

    真的有必要学习第二种编程语言吗?

    非常主观的,但大多数优秀的开发者知道很多(考虑Web应用程序:Python、露比、C.*、Java在服务器上;数据库上的SQL和客户端上的JavaScript;然后标记……)。

    您可以看到其他解决问题的方法,从而创建更好的解决方案,从而获益匪浅。所以,一旦你涵盖了更多的命令式语言,就进入其他范例,比如函数式语言。

        3
  •  1
  •   davmac    14 年前
    1. 我同意你选择C,这导致了C++。如果没有其他的东西,学习C将教会你为什么人们现在倾向于使用自动内存管理的语言——但它也可能给你一种“接近金属”的编程感觉(不需要用汇编语言编程的痛苦),并帮助你理解处理器的实际工作方式。不总是有用的知识,但很高兴知道。

      无论你选择什么,我推荐一个静态类型的语言——C、C++、Java和一些符合这一法案的函数式编程语言。如果发现C有点困难,Java可能是一个不错的选择。

    2. 我想说学习任何新的语言都会使你成为一个更好的程序员。但是,学习C会使您成为更好的Python程序员吗?可能不会,为什么要这样?!

    3. 定义“必要”!严格的定义,没有。但是你错过了以不同的方式思考事情的经历(即使只是稍微不同的方式)。

        4
  •  0
  •   user419442    14 年前

    我将继续使用相同的范例,但是为另一个范例(函数式编程)保留选项。也许C是个不错的选择,因为

    • 如果你决定以后学习C/C++,它会变得更容易一些。
    • 如果您决定稍后学习函数式编程,您可以切换到f,但仍然可以使用用c编写的现有代码,因为您将停留在.NET框架内。
    • 众所周知,Python不是一种速度非常快的语言。您应该考虑学习一种允许更好计算性能的语言。但是旧的ANSIC可能太低了,尽管您可以用它编写非常快的程序。对于一种及时编译的语言,C的性能还可以,如果您以后需要更多的性能,您仍然可以将您的知识扩展到F或C。
    • 虽然我不经常私底下使用微软视窗,也不经常做Linux和开源广告,但如果你想通过编程赚钱的话,最好提供一些关于微软技术的知识。