网站分几种,广州网站开发多少钱,沈阳seo哪家公司,浙江王氏生态建设网站又是一篇需要我们多些思考的文章~
简介下Rob Pike
Rob Pike是Unix的先驱#xff0c;UTF-8的设计人#xff0c;Go语言核心设计者之一。
Rob Pike的5条编程规则
原文地址#xff1a;http://users.ece.utexas.edu/~adnan/pike.html
中文翻译#xff1a;
罗布派克#x…又是一篇需要我们多些思考的文章~
简介下Rob Pike
Rob Pike是Unix的先驱UTF-8的设计人Go语言核心设计者之一。
Rob Pike的5条编程规则
原文地址http://users.ece.utexas.edu/~adnan/pike.html
中文翻译
罗布·派克Rob Pike的编程五原则 原则1 你无法判断一个程序的时间消耗在哪里。瓶颈常常出现在意想不到的地方所以在证明瓶颈确实存在之前不要试图猜测并添加加速技巧。 原则2测试。在测试之前不要调整速度即使测试之后除非一部分代码明显超过其他部分否则也不要调整速度。 原则3当n很小的时候花哨的算法很慢而n通常都很小。花哨的算法具有大的常数。在你知道n经常变得很大之前不要使用花哨的算法。即使n确实变得很大也要首先使用原则2。 原则4花哨的算法比简单的算法更容易出错而且更难实现。使用简单的算法和简单的数据结构。 原则5数据占主导地位。如果你选择了正确的数据结构并把事情组织得很好那么算法几乎总是不言自明的。数据结构而不是算法是编程的核心。
派克的原则1和原则2重申了托尼·霍尔Tony Hoare的名言“过早的优化是所有邪恶的根源”。肯·汤普森Ken Thompson将派克的原则3和原则4重新表述为“当有疑问时使用暴力手段”。原则3和原则4是KISS设计哲学的实例。原则5之前由弗雷德·布鲁克斯Fred Brooks在《人月神话》中提出。原则5通常被缩短为“编写使用智能对象的愚蠢代码”。
我的理解
罗布·派克的编程五原则为编程提供了重要的指导。
对于原则1你无法判断一个程序的时间消耗在哪里。这个原则强调了性能分析的必要性。在尝试优化代码之前你应该首先确定代码的哪部分是性能瓶颈。性能分析可以通过工具和技术来进行例如使用性能分析器profiler来检测代码的热点。通过分析代码的运行时间和资源消耗你可以找到需要优化的关键部分。
对于原则2测试。这个原则强调了基准测试的重要性。只有通过测量代码的实际性能你才能确定哪些部分需要优化。基准测试可以帮助你了解代码在不同输入和数据规模下的性能表现。在进行基准测试时确保使用真实的数据和场景以获得准确的性能数据。只有通过测量你才能做出明智的优化决策。
对于原则3当n很小的时候花哨的算法很慢而n通常都很小。这个原则提醒我们在选择算法时要考虑数据规模。对于较小的数据集简单的算法通常表现更好而且更容易实现和调试。花哨的算法可能在理论上具有更好的性能但在实际应用中可能会受到常数因子和实现复杂度的限制。因此在选择算法时要根据实际的数据规模和问题要求来做出决策。
对于原则4花哨的算法比简单的算法更容易出错而且更难调试。这个原则强调了简单和清晰的重要性。简单的算法和数据结构更容易理解、实现和维护。花哨的算法可能涉及复杂的逻辑和数学操作增加了出错的可能性并降低了代码的可读性和可维护性。在编程中简单通常是一种美德因为它减少了出错的可能性并提高了代码的可读性和可维护性。
对于原则5数据占主导地位。这个原则强调了数据结构选择的重要性。选择合适的数据结构可以极大地影响代码的性能和可读性。数据结构决定了如何组织和访问数据对于特定的问题和数据规模选择适当的数据结构可以显著提高代码的性能。在选择数据结构时要考虑数据的特征、访问模式和问题要求。通过选择合适的数据结构你可以将算法的效率最大化。
总的来说罗布·派克的编程五原则提醒我们在编程时要保持目标导向避免过早优化选择合适的算法和数据结构以提高代码的性能和可维护性。这些规则强调了性能分析、基准测试、数据规模和简单性的重要性。通过遵循这些原则你可以编写出高效、健壮和易于维护的代码。