C#細かい話なんですが、どうインターフェースを定義しようか頭を悩ませてきたので、書きながら整理。何らかのファイルの「複数のページ情報を管理」するためのクラスを書いています。内部では何らかのコレクションクラスで管理する事になるのですが、管理している単一ページ、または複数ページの情報へのアクセス方法を提供する際に、ユーザには「ページ番号」で指定させるのか「インデックス」で指定させるのかと言う事で悩み始めました。1最初は、「インデックスなんて実装内部の事情でしかないのだから、ページ番号で指定させるべきだ」と言う気がしたので、ページ番号で指定させていました。プロパティの返すコレクションがちょっとまずかったようで、実際に使っているとフラストレーションが溜まる場面も出てきました。管理する形に改めました。等によるアクセスは直感的になりました。次の問題として「ページ番号によるアクセスとインデックスによるアクセスが混在する」と言う問題が発生しました。こっちはページ番号によるアクセスこれは、そのうち、絶対にミスを犯す予感がします。メソッドを「ページ番号」指定から「インデックス」指定に変更するのが素直な方法のような気がするのですが、添え字を記述する際ならまだしも、このメソッド名だと間違って「ページ番号」を記述してしまう事も十分考えられます。3さて、どうしたものかと考えていたのですが、「ランダムアクセスは潰してしまうか」と言う考えが頭をよぎりました。各ページ情報へランダムアクセスを行う方法が存在しないのは辛いので、ランダムアクセス専用のメソッドを追加してみます。}}ユーザコードは以下のような形。}まだ、どうなんだろうなぁ......と言うもやもやした気持ちが取れないのですが、今のところは取りあえずここまで。ソフトウェアを開発しています。0.5.5βこのブログのこれまでとこれから注目記事スターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。