Python对软件开发人员很重要?

openkk 13年前
     <p> <a href="/misc/goto?guid=4958329174717163807" target="_blank">Fredrik Haard</a> 最近发表了一篇“<a href="/misc/goto?guid=4958329175515020989" target="_blank">为什么 Python 对你如此重要</a>”的文章,<a href="/misc/goto?guid=4958329176312714701" target="_blank">引起了开发者的热烈讨论</a>。本文对其简要编译。</p>    <blockquote>     <p>我相信 Python 对软件开发人员很重要。现今已经诞生了不少的编程语言,它们都有各自不同的特性:强大者如 Lisp,快速如C,运用广泛如 Java,论古怪则如 Haskell。与这些语言不同,Python 是一门比较中庸的编程语言,它将语言的很多特性进行了融合,迄今我还未有其他语言如 Python 这般协调。</p>     <p>Python 知道开发人员阅读代码比编写它花的时间要多得多,因此将精力集中于引导开发者编写易读的代码。当然,Python 也能写出令人晦涩(obfuscated)的代码,但是写代码最舒服的方式还是(假如你了解 Python)保持适度精炼,即:代码总能明确反映你的意图。这一点很重要。使用 Python 开发可谓轻而易举。甚至包括许多库,也能用 Python 完美编写,保证其易读性(你可以比较一下其他语言的框架实现,比如用 Java 编写的 Spring)。</p>     <p>同样 Python 也意识到对开发人员而言开发速度的重要性。易读而精炼的代码只是一部分,另一部分取决于强大的构造函数,可避免许多繁琐重复的代码。此外,可维护性也是很重要的——代码行数(Line of Code,LoC)在很多度量结果都会中出现,或许没什么用,不过它至少说明了你需要审查多少代码,需要理解多少代码并从中发现问题。</p>    </blockquote>    <p> 此外,Fredrik Haard 还提到了 Python 的另一个优势——Toolmaking。</p>    <blockquote>     <p>快速的软件开发速度、简练的技巧(其他语言开发人员也能轻松掌握 Python 基本技巧)、庞大的标准库维系了这一优势。任何项目都会遭遇任务自动化任务情况,在我的经验中,用 Python 写的自动化任务比其他主流语言要快一个数量级——事实上,这也是我学习 Python 的原因。……</p>     <p>能够轻松开发 custom tool 其实还包含了另一层意思,即开发和维护 custom software 也会很容易。这也是为什么,在庞大的 <a href="/misc/goto?guid=4958329177113088587" target="_blank">Django</a> 成为最著名的 Python Web 框架之后,还是有大量成功的小巧甚至微型框架存在的原因。当使用一门强大的编程语言,拥有大量标准及第三方库的时候,你并不经常需要考虑妥协(trade-off),而这在使用许多现成的(off-the-shelf)大型框架时是必然会遭遇的。</p>     <p>根据 Fredrik 的观点,编写能够很好契合客户模型而不是一个框架的软件这点很重要。而许多开发人员将时间都耗在了框架配置以及掩盖它们的缺点上,而不是真正的开发。</p>    </blockquote>    <p> 你是如何看待的呢?</p>    <div id="come_from">     来自:     <a id="link_source2" href="/misc/goto?guid=4958329177912462163" target="_blank">www.iteye.com</a>    </div>