Mi piace raccogliere un NotImplementedError
per qualsiasi metodo che voglio implementare, ma dove non sono ancora riuscito a farlo. Potrei già avere un'implementazione parziale, ma anteponilo raise NotImplementedError()
perché non mi piace ancora. D'altra parte, mi piace anche attenermi alle convenzioni, perché ciò faciliterà il mantenimento del mio codice da parte di altre persone e le convenzioni potrebbero esistere per una buona ragione.
Tuttavia la documentazione di Pythons per NotImplementedError afferma:
Questa eccezione è derivata da RuntimeError. Nelle classi di base definite dall'utente, i metodi astratti dovrebbero sollevare questa eccezione quando richiedono che le classi derivate abbiano la precedenza sul metodo.
Questo è un caso d'uso molto più specifico e formale di quello che descrivo. È uno stile buono e convenzionale sollevare NotImplementedError
semplicemente per indicare che questa parte dell'API è un work in progress? In caso contrario, esiste un modo standardizzato diverso per indicarlo?