如何发出"尚未实施"的信号?

Fra*_*ini 59 ruby coding-style exception-handling conventions

在初始绘制新gem时,我需要将一些方法实现留空(将在下一个实现)

因此,我想发出一个"尚未实施"的例外情况

我想知道是否有一个特定于Ruby语言的最佳实践标准约定来编写这种占位符/异常.

即:像:

小智 29

你应该引发NotImplementedError

raise NotImplementedError
Run Code Online (Sandbox Code Playgroud)

红宝石DOC

  • 请记住,根据`2.3.0`文档,NotImplementedError并不打算以这种方式使用,但它表示`功能未在当前平台上实现'.它还有一个不寻常的继承链`ScriptError> Exception`,其中大多数异常都是从`StandardError`继承的.您可以创建自己的错误来表示并从"StandardError"继承它,这可能会更好. (13认同)

saw*_*awa -1

不要在文档中提及未实现的方法,或者提及它们尚未实现。就这些。

  • 当使用未实现的方法时就会出现问题。如果不知道这种方法的存在,那么首先就不会出现这样的问题。不记录就足以隐藏存在。如果您认为用户足够黑客,可以通过查看源代码来找出这种方法,那么您可以简单地在源代码中的该方法中编写`#TODO`来通知它尚未实现。 (3认同)