"キュー"(FIFO)は、最も一般的なデータ構造の1つであり、多くの言語とフレームワークでネイティブな実装をしています。しかし、基本的なキュー操作の名前付け方法については、ほとんど合意が得られていないようです。いくつかの一般的な言語の調査は示していますキュー操作/ APIの用語/命名規則
- のPython:入れ/取得
- C#の、Qtの:エンキュー/デキュー
- ルビー、C++ STD:プッシュ/ポップ
- のJava:追加/ を削除します
キューを実装する必要がある場合(ネイティブキューインプリメンテーションを持たない組み込みプラットフォームでは)、どのような命名規則が最適でしょうか? エンキュー/デキューは最も明示的に見えますが、言葉遣いです。 put/getは簡潔ですが、操作のFIFOの性質に関するヒントは提供されません。プッシュ/ポップは、キュー操作の代わりにスタック操作を示唆しているようです。
なぜbish()bosh()も持っていないのはなぜですか?S TAOCPは多分紛争解決の参考資料ですか? –
私は一般的な選択は 'enqueue(要素:Element):void'と' dequeue():Element'です。しかし、私は 'add(element:Element)'や 'next():Element'といったものを使うことができるのと同じくらい多くのDS/Algorithmクラスを書く傾向があります。 **そのようにして、実装者はDSの内部について知る必要が少なくなり、あなたはSOLIDからLiskov Substitution Principleを簡単に採用することができます**。それ以外の場合は、アダプタが必要ですが、私はこれのための規約を変更するだけです。 – Cody