#programmingプログラミング概要APIのパラメータとして期間の範囲を表す命名について、職場でいい議論がなされたので自分なりにまとめておく。start-end扱いやすそうなのはこれ。日時の場合は、終了側が排他的であった方が扱いやすいことが多い。検索可能なほうがうれしいendは排他の命名としてリーダブルコードでも紹介されている。startの対義はstopであるのが正しいようだ。ように表現することが多いので悩ましいところ。startInclusive-endExclusive開始が包含で、終了が排他であることが一目瞭然。分かりやすさが重視されており、なかなかよい。endは排他なのは前述の通りなのだが、英語が母語でない人に配慮したのかなと想像している。「長い/冗長」という意見もあった。(Docにちょっと書いておくくらいでいいのかも、という声も)Javaで時間の範囲を扱うクラスの引数は上記のような命名になっている。java.time.Duration#betweenjava.time.Period#betweenetcsince-untilほぼ間違いなく時間を指すだろうことを連想できる。unitlも排他になる。sinceはどうやら未来のことを表現するのに相性がよくないようなので、性質をよく考慮したほうがいいかもしれない。since-untilのようだ。from-tofrom-toの場合は、時間軸には向いていないかもしれない。ように、時間以外の表現の場合は有力な選択肢になりうる。offset-limitlimitは包含のニュアンスになるので、日時を扱う場合は微妙になる。SQL等で使われる馴染みのキーワードであるので、包含させたい場合は有用。first-lastこちらもlastは包含される。min-maxmaxは包含される。min-maxってことになるのかな。月別アーカイブはてなブログをはじめよう!su-kun1899さんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。