Ответ 1
Вы должны поднять NotImplementedError
raise NotImplementedError
В первоначальном написании нового драгоценного камня мне нужно оставить некоторые реализации методов пустыми (для реализации в следующем)
Поэтому я хотел бы сигнализировать исключение "не реализовано"
Мне интересно, есть ли передовая практика или стандартные соглашения, характерные для языка Ruby, для кодирования такого типа placeholder/exception.
i.e: что-то вроде:
Вы должны поднять NotImplementedError
raise NotImplementedError
Вы можете использовать todonotes-gem
Существует документация с некоторыми примерами.
Он не реализует исключение, но механизм регистрации и возможность временных решений.
Похоже, что исходный ответ, который предложил повысить NotImplementedError
, был удален. Я взломаю его: напиши документацию.
Не добавляйте код, просто заполнитель. Вы бы не хотели, чтобы люди кодировали этот API, поэтому даже не дайте им возможности (вы сами включили). Вместо этого задокументируйте дорожную карту, которую вы сейчас планируете в классе и/или README. Затем откройте его, чтобы он менялся. Коэффициенты к тому времени, когда вы обходитесь, чтобы решить любую проблему на дорожной карте, у вас появятся новые мысли о том, что является подходящим решением. Я думаю, что это правильный курс действий на любом языке/структуре, но я думаю, что Ruby, в частности, призывает нас не писать код, который вы не планируете выполнять.
Не упоминайте о неосуществленных методах в документах или не упоминайте, что они еще не реализованы. Это все.
Ruby будет поднимать NoMethodError
для вас в любом случае при вызове несуществующего метода. Это должно быть достаточно хорошим для большинства случаев.