pyt*_*bie 3 c python comparison
嗨我正在学习Python,因为语法非常简洁,习语与我的心智模型很匹配.
然而,我也有兴趣了解操作系统内部和逆向工程软件,这最终意味着以相当全面的能力了解C语言.
当我最初选择一种语言时,我做了大量的阅读和比较,而且似乎抛出了很多数字,用Python编写简短的惯用语句需要相当于几百行的C(我想是代码为内存管理,编写字典代码,列表等,我们认为这是Python语言中内置的.
1)对于一个普通的C程序员,每个Python习惯用的100-200行代码是否接近准确?
因为C不是内置的类似Python的结构,如字典/列表(所有他们的好方法等):
2)C程序员是否倾向于从头开始构建这些构造,然后在项目之间重用它们以大大减少其项目的实际手动编码量?
我假设再次使用像boost :: stuff这样的库,减少了一些样板手动编码...
3)但是,使用流行的库并重新使用之前在C语言中为基本构造/等编写的公共代码,与使用发烧友大小的代码库的Python中的代码相比,修改用C编写的代码行有多少?
我知道具体的数字是不可能的,但是有可能使用库,代码重用等,使用C的开发时间接近Python的开发时间而不是Linus Torvalds风格的编码机吗?
谢谢!
S.L*_*ott 10
但是,使用库,代码重用等可以使C的开发时间接近Python的开发时间
没有.
你错过了最重要的一点.
Python的互动.它不是edit-compile-link-execute-break-debug.这是编辑调试.
Boost是C++,而不是C(显然不是C - 实际上所有这些都是大量使用模板而不是C的一部分).
是的,C程序员倾向于为各种"东西"建立个人代码库 - 数据结构,算法,用户界面等等.从基本的字符串操作到数据库连接,用户界面,基本算法和数据结构等,还有相当多的其他库.
比较两者之间的生产率可能很困难 - 即使某种方式可以通过一行代码完成,C程序员最终可能会做更多工作来查找和学习使用该特定库.OTOH,如果他之前使用过它,那么两者可能是直接竞争的(在少数情况下)C可能更有效率.
我猜Python会更频繁地提高效率,但是试图猜测多少是困难的(代码行通常也不是一个好的指示).