我目前正在学习Python,这不是我的大学课程的一部分。在一次采访中有人问我为什么选择Python,我回答说它很容易学习并且文档写得很好。面试官没有回答这是否足够充分的理由。他看上去很有说服力,但我不确定。
编写良好的文档以及易于学习是否是选择脚本语言的足够充分的理由?还是我应该详细说明Python库的可用性和更大的Python用户群?
请注意。不需要Python。该公司致力于Ruby-on-rails。我的简历中有Python,我认为面试官只是想知道我在选择编程语言时重新考虑的考虑事项。
我目前正在学习Python,这不是我的大学课程的一部分。在一次采访中有人问我为什么选择Python,我回答说它很容易学习并且文档写得很好。面试官没有回答这是否足够充分的理由。他看上去很有说服力,但我不确定。
编写良好的文档以及易于学习是否是选择脚本语言的足够充分的理由?还是我应该详细说明Python库的可用性和更大的Python用户群?
请注意。不需要Python。该公司致力于Ruby-on-rails。我的简历中有Python,我认为面试官只是想知道我在选择编程语言时重新考虑的考虑事项。
Answers:
不,编写良好的文档不足以学习语言。
写得不好的文档是不学习文档的一个很好的理由。
学习语言有四个原因:
因为它可能是您职业生涯中的有用工具
语言是一种工具。一个人使用一种语言而不是另一种语言是因为它在给定的上下文中具有好处。语言具有高质量文档的事实并不能使其成为更好的工具,或者仅是勉强¹。
语言的选择应基于先前的经验,范例(示例:Haskell的功能编程),方法(示例:JavaScript作为Node.js服务器端编程语言的完全异步模式),互操作性(示例:与几乎所有Java操作系统兼容),等等。
能够在日常生活中使用工具是学习语言的原因之一。
因为它拓宽了您的文化和知识
学习语言的另一个原因是学习新概念,范例和编写优雅代码的方式(例如:Haskell)。同样,文档可以帮助您,但不是学习语言的唯一原因。
因为它需要最少的努力来学习它
学习语言的另一个原因是因为它很容易学习(例如:PHP)。同样,文档贡献很大,但是语言本身仍然更加重要。此外,我会避免在面试中告诉我我学习语言的原因仅仅是因为它易于学习。
因为很有趣。
学习语言的最后一个原因是,学习精心设计的语言(例如:Haskell,Ruby)或极客语言(例如:Brainfuck)简直令人兴奋。
对于Python,您可以回答的是:
这是一种动态语言。当情况使强类型不重要时,动态语言使创建原型和更快地开发变得容易。
优雅 也许不像Haskell那样优雅,但是与主流的面向Web的语言(例如PHP)进行比较仍然很容易。
有意义的缩进的用法很有趣,因为许多主流语言都使缩进只是一个负担,而这种负担首先应该由IDE进行管理。顺便说一下,Haskell编译器和解释器也依赖于缩进。
Python具有使用列表的一种优雅方式。对于以前从未使用过函数式编程的人来说,列表理解和生成器表达式是一个有趣的概念。
Django使快速创建Web应用程序变得非常容易,同时保持了相当干净的代码。与许多其他编程语言相比,这是一个巨大的优势。
对于大型Web应用程序,它足够快且足够强大。例如,Dropbox用Python编写。YouTube严重依赖Python。如果我没有记错的话,Reddit也依赖Python。
¹编写正确的文档仍然可以帮助您以正确的方式快速完成任务。
如果像我一样,不要仅仅因为锤子舒适就使用锤子。使用锤子是因为您需要用它来完成锤击。
因此,没有,虽然好的文档当然会有所帮助,但它本身并不是学习编程语言的原因。
是的,为什么不?您学习的语言越多,学习下一种语言就越容易。可以使用多种语言学习许多编程概念。因此,您最好从具有最佳学习材料的材料开始。
同样,大多数任务可以用多种语言完成。通常,过一会儿,您将掌握核心语言概念和工具,但是您将根据需要学习大多数库。如果对库进行了充分的文档说明,那么这是支持语言的一种论据,以便您可以快速掌握特定的应用程序域。