虎式! - ratfactor

主要观点:

  • 介绍编程中的一些重要理念和实践,如“编程负空间”“慢工出细活”“测试”“正确命名”“减少表面积”等。
    关键信息:
  • “编程负空间”:像黑客一样看待程序,想象其不应如何工作,通过在函数中添加断言来“编程负空间”,断言能确保程序不带有错误逻辑且更好地记录预期。
  • “慢工出细活”:在设计阶段多花时间,理解问题后再编程,避免匆忙创建应用,设计简单优雅的解决方案更易构建和证明正确性。
  • 测试:TigerBeetle 有强大的测试套件,能模拟各种环境和故障,代码base 不断在测试环境中自我测试,构建好工具能提高效率。
  • 正确命名:命名是计算机科学难题,好名字能节省时间,与 Naur 的“编程即理论构建”论文相关。
  • 减少表面积:减少单独组件和概念的数量,以简化编程和管理,如 HTTP 与 FTP 的对比。
    重要细节:
  • 第五个规则是每个函数使用至少两个运行时断言。
  • 断言失败时程序会崩溃,这能确保及时发现错误状态。
  • 设计阶段多花时间比错误编程更有价值,如 TigerBeetle 因等待环境因素而有更多设计时间。
  • 简单优雅的解决方案设计难但构建和证明正确性容易。
  • 测试环境能模拟各种故障,节省时间和成本。
  • 减少表面积可提高编程和管理效率,如 HTTP 仅用一个端口。
  • TigerStyle 与“dumb-first”方法虽看似相反,但都拒绝错误抽象和大表面积,都提倡舍弃不工作的想法。
阅读 14
0 条评论