gpt4 book ai didi

c# - 与严格的 OO 语言相比,您更喜欢 Python 的哪些应用程序或问题类别?

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:56:28 27 4
gpt4 key购买 nike

我在 C 风格语言方面有很强的背景。并从事过几种不同类型的项目。在阅读 Programming Collective Intelligence 之后,我才开始认真研究 Python。 .我知道 Python 可以解决 C# 可以解决的任何问题,反之亦然。但我很想知道那些经常使用两者的人,他们什么时候选择一个而不是另一个。去除其他因素,如同事经验等。

您什么时候选择使用 Python 而不是 C# 或 Java 等静态类型的纯 OO 语言来创建应用程序?

编辑:

我担心这个问题会偏离主题。 Python 是一种面向对象的语言。但是,如下所述,当您的应用程序具有非常繁重的业务领域等时,它可能不是首选语言。我知道 Python 广泛使用对象,甚至函数也是对象,这在所有语言中都不是真的我之前提出的“OO”语言。

尽管我在问题中的用词选择不当(几乎没有一种语言可以很好地符合两三个词的描述,而且如果不表现出你是在与某一类开发人员交谈,就很难指出语言之间的差异.),当你更喜欢 Python 而不是其他语言时,我仍然对你要说的话很感兴趣。

最佳答案

我的座右铭是(并且一直是)“能用 Python,必须用 C++”(总有一天我会找到机会在实际项目中实际使用 Java、C#、&c &C,但我还没有,除了 Java 1.1 中的试点项目,十多年前...;-) -- 当代码必须在客户端浏览器中运行时使用 Javascript(带有 dojo),而当它必须在客户端浏览器中运行时使用 SQL当然是 DB 服务器,但 C++ 和 Python 是我在“普通”服务器和我开发的客户端上的日常工作,而且我在谷歌的所有部门都是这种情况,我已经工作了 4 年多(有很多部分也使用 Java,我从来没有碰巧在那里工作;-)。嗯,当我处理 Python 核心和相关扩展时,当然也有纯 C;-)。

Python 和 C++ 都不是“严格的面向对象”——它们是多范式的,其中很大一部分力量掌握在精通面向对象的程序员手中范式,例如函数式、泛型、声明式等。我收集到 C# 也吸收了其中的一些(有时超过 C++,例如通过提供 lambda),甚至 Java 也不得不在很小的程度上屈服于某些(至少是通用的),所以很明显“一个大小适合所有人” -- 多范式编程还很流行!-)

C++(和 C 一样)迫使我小心地控制所有内存(我们的内部 C++ 风格指南禁止使用“智能指针”,这相当于垃圾收集的糟糕实现!-),这使我的工作成倍增加,但有帮助确保我在任何时候都不会使用超过严格需要的内存:因此,当内存紧张且宝贵时,C++(或需要时使用 C)是选择。否则,Python 的极高生产率(如果您习惯使用 Ruby 或 Javascript,它们也没什么不同)使其更受欢迎。

我敢肯定,对于一种可以进行垃圾收集但主要是静态的语言,如 Java(或 C#,在它开始积累越来越多的功能,包括 4.0 中的动态功能,我听说)之前,肯定有一个利基市场,或者否则那些语言和同源语言就不会如此广泛——到目前为止,我还从未发现自己处于那个特殊的位置。

关于c# - 与严格的 OO 语言相比,您更喜欢 Python 的哪些应用程序或问题类别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1022971/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com