48226


`pygame` では、dirty
Rectという言葉があり、[汚れたレクト](http://gamepro.blog.jp/python/pygame/splite_group_dirty_rect)と表現されます。  
今、`python` 検索エンジンライブラリの`Whoosh`のドキュメントを見ているのですが、

> Whoosh was created by Matt Chaput. It started as a quick and dirty search
> server for the online documentation of the Houdini 3D animation software  
>  package

一つの、素早く、汚れた検索サーバーとして・・・。  
となっています。dirtyを辞書で見ても、いい意味はありません。  
これは、様々な人々が関わってもみくちゃにされたけれども、それがために洗練された、とでもいうべきなのでしょうか？世間の冷たい風に当って成長したという感じですね。逆に手入れされていないという意味で、バグだらけの、という意味でしょうか。いい意味に使われているように思うのですが、悪い意味しか持っていないように思います。単純に、俗語として、スーパーな、という意味でしょうか。

以前、`local`の[読み方](https://ja.stackoverflow.com/questions/21838/locale-%E3%81%AE%E7%99%BA%E9%9F%B3%E3%81%AF/21842#21842)や、`virtual`の[仮想現実](https://ja.stackoverflow.com/questions/21764/virtual-%E3%81%AF%E3%81%AA%E3%81%9C-%E4%BB%AE%E6%83%B3-%E3%81%AA%E3%82%93%E3%81%A7%E3%81%97%E3%82%87%E3%81%86%E3%81%8B)という訳に疑問があるという投稿があり、たまに、読み方を質問されている方もちらほら見かけます。  
私は最初`pygame`でこの単語に会って、この`Whoosh`のドキュメントで再び相まみえました。  
最初は、たまたまそういうのだと思っていましたが、結構利用されているようで、驚きました。

皆さんどういう意味なのかはっきりとご存知の方はいらっしゃいませんか？


CC BY-SA 4.0
2018-09-08T14:32:53.080
48218
2018-09-09T01:53:11.100
24284
question
英語
dirty とは何と訳し、どういう意味にするのが適切でしょうか？


`quick and
dirty`で、一つの熟語のように使います。「その場しのぎの」とか「安っぽい」とか、とにかく当座の役に立てば質はどうでもいいものに使います。辞書にも載っていると思います。


CC BY-SA 4.0
2018-09-08T21:32:47.493
48226
2018-09-08T21:32:47.493
3605
48218
answer


`dirty` はコの業界では「処理途中の」とでも訳すとよくて

  * `dirty buffer` ハードディスクに書き戻していない書き込みキャッシュ
  * `dirty data` 複数個がセットになっているデータで、うち一部だけ更新されているもの  
（例えば座標データで `x` は更新したが `y` や `z` は今計算中のもの）

コメントにある `dirty rect`
は、「長方形領域であって内部データは一部更新したが全部終わっているわけではないのでまだ画面に表示すべきでないもの」と、オイラなら訳します。

質問文中の `quick and dirty search server` は「手っ取り早く作ったがゆえにまだ完璧からは遠い」でいいと思います。
`dirty hack` なんて言葉もありますし。


CC BY-SA 4.0
2018-09-08T21:34:41.610
48227
2018-09-08T21:34:41.610
8589
48218
answer


dirtyはupdateあるいはsaveが終わっていない状態を指します。  
ゲームにおいてはあるオブジェクトのupdateが終わっているかどうかをdirtyフラグを付けて管理したり、webにおいてはデータベースへの保存が終わっていないユーザー入力データをdirtyと呼んだりすることがあるでしょう。  
最新データではない、とかデータベースに登録されていないなど、あるべき状態との整合性が確保されているかどうかが不透明であることからdirtyと呼ぶのではないかと思います。  
データベースに登録されているデータはある程度整合性がとれているからcleanなわけですね。  
(もっとも下手なデータを登録するとデータベースがあっという間に汚染されるわけですが)  
基本的にこういうテクニックを使用すると、非常にプログラミングが難しいものになると思います、オブジェクトやデータの状態と格闘しなければならないからです。それでもパフォーマンスを確保するには必要になることがあるでしょう。


CC BY-SA 4.0
2018-09-09T01:53:11.100
48229
2018-09-09T01:53:11.100
25980
48218
answer