1.2 软件工程
不像大多数据数据科学书籍,这本书将更多地强调 组织代码。 这是因为,我们了解到很多数据科学家仅是将他们的代码放在一个大文件中,然后按顺序运行所有语句。 你可以想象这种情况:强迫读者从头读到尾,而不允许重新回顾之前的部分或立即跳转到感兴趣的部分。 这适用于小型和简单的项目。但是,随着项目变得更大或更复杂,这将开始出现更多的新问题。 例如,对于一本写得很好的书,它应被分为不同标题的章和节,其中包含对书中其他部分的引用。 与此相对应的软件工程实践是将代码分解为函数。 每个函数都有一项名称和一些内容。 在代码中的任何地方,你可以使用函数告诉计算机应从此处跳转到另一处,然后在那里继续。 这使你可以更容易地在项目间重用代码、更新代码、共享代码、以及协作并查看全局。 因此,使用函数可以节省时间。
所以,在阅读本书时,你最终要习惯阅读和使用函数。 拥有软件工程技能的另一个优点是,它使得你可以更容易地阅读正在使用的软件包的源码。当你在调试代码或者想准确地理解正在使用的软件包时,这项技能会变得尤为有用。 最后,你可以放心,我们没有自己发明这项关于函数的强调。 在行业中,鼓励开发者 使用函数而不是注释 是一种常见的做法。 这意味着,开发者既不单是为人类编写注释,也不单是为计算机编写代码,而是编写一个既能被人类也能被计算机阅读的函数。
此外,我们还努力坚持一致的风格指南。 编程风格指南为编写代码提供指导;比如,哪里应该有空格,哪些命名应该大写。 坚持严格的风格指南可能听起来有点古板,有时也确实如此。 然而,代码风格越一致,就越容易阅读和理解代码。 要阅读我们的代码,你不需要知道我们的风格指南。 阅读的时候你就会明白了。 如果您想了解我们风格指南的详细内容,请查阅 Section 6.2。
CC BY-NC-SA 4.0 Jose Storopoli, Rik Huijzer, Lazaro Alonso, 刘贵欣 (中文翻译), 田俊 (中文审校)