任务一:编码规范
- 命名规范
变量、函数、类和文件名应该简明易懂,使用英文单词或单词缩写,并使用下划线或驼峰命名法。
变量名应该使用名词,函数名应该使用动词,类名应该使用名词或名词短语,文件名应该使用有意义的名称。 - 格式化规范
代码行长度应该不超过80个字符。
使用一致的缩进和空格以使代码更易于阅读
在两个操作符之间使用空格,例如赋值、比较和算术操作符 - 注释规范
注释应该清晰、有意义,并解释代码的目的,而不是显而易见的东西。
注释应该写在需要注释的代码上面,并在需要的地方使用空行分隔。 - 函数的长度规范
尽量保持函数的短小精悍,以提高代码的可读性和可维护性。
函数应该只做一件明确的事情,如果函数过于复杂,则需要将其拆分成较小的函数。 - 错误处理规范
带有适当错误处理的代码不仅更可靠,而且更容易调试。
尽可能使用异常处理来处理错误。 - 冗余代码规范
尽管DRY(不要重复自己)原则已经很出名了,但它仍然是一个很好的编程实践,可以减少冗余代码和错误数量。
尽可能使用现有的代码或函数,而不是编写新的代码。 - 通用开发模式规范
在编程实践中尽量使用通用的设计模式,以提高代码的可维护性。
使用面向对象编程的原则如高内聚、低耦合等。
任务二:《数学之美》阅读
读《数学之美》:如何确定网页和查询的相关性
在阅读了《数学之美》的这一章后 ,我对“搜索相关性”这一个主题有了全新的认识。这一章把“网页该怎么排”这一问题,看作成数学题目,让我体会到数学把复杂问题简单化的能力。在这篇文章中首先提出了“关键词出现越多越相关”,但是网页有长有短,简单计数并不能准确地去衡量。于是就把“出现次数”除以“总词数”,得到词频,让“相关”有了具体可度量的数字。其次,人们发现像“的”“是”这类高频词会严重影响相关性。去掉它们后,相关性曲线立刻清晰·。但更大的漏洞是:不同词对主题的预测能力并不一样。 于是引入逆文档频率 IDF = log(D/Dw),用“罕见程度”给每个词加权重。罕见度越高,IDF 越大,对最终得分的贡献也越大。总之,《数学之美》的这一章让我看到了,当“相关性”这种模糊概念被 TF-IDF 轻轻量化后,海量的网页便瞬间有了秩序。数学再次证明,它不仅是描述世界的语言,更是重塑世界、让信息为人所用的重要工具。