質問: プログラマーの方に質問です。 良いモジュールインターフェースを考えるコツを教えてください。 クラスや関数を設計する時は、入力と出力のインターフェースが重要になります。 ある値を入力(引数)すると内部でアルゴリズムが処理され結果が出力(戻り値)されるのがプログラムです。 このインターフェースさえ把握していれば、それを使う人は内部アルゴリズムを解析する必要がなく生産性向上へ繋がります。 このような使いやすいインターフェースを設計する上でのコツを教えてください。(クラスや関数のネーミング、引数、戻り値) 宜しくお願いします。
回答: 使用方法をしっかりと明記するのが重要だと思います。 何をするためのモジュールなのか、インプットの指定可能範囲は何か、アウトプットの全ての値の意味など、完全に明記し間違った使われ方がされないようにするのが重要だと思います。 使用方法が明確であれば、中身がどうであれ使いやすく問題も発生しずらくなります。 (逆に説明が貧弱だとどんなに優れたモジュールだとしても間違った使われ方をしたり、使い方がわからないため結局つかわれなかったりと。やっぱり作りっぱなしはNGです。) また、バグなどがあった際の修正時にも、間違った修正がされることも無くなり、保守面でも有効です。