2010-11-29 5 views
5

自分のPowerShell関数で使用する動詞についてかなりの議論がありましたが、Receive vs Getの使用についての説明はまだありません。彼らは私とおおよそ同じことを意味しますが、ReceiveはCommunications(特にこれを見るためにGet-Verbとタイプします)を含む状況で使用されることになっています。しかし、Commonグループに入っているので、どちらを使うべきかは本当に分かりません。Powershell対vs動詞を取得する

私は基本的にRESTfulなAPIをラップし、それからデータを取得する関数を持っています(私は、サービスのさまざまなメソッドにパラメータセットを使用しています)。現在、この関数はGet-FooDataと呼ばれています。しかし、私はそれが何らかのコミュニケーションをしているので、Receive-FooDataに名前を変更する必要があると考えています。

私はここではレセプションを使いたいと思っていると思います。私の個人的な気持ちは、音が良くなるということですが、それは私がそれを使用することに慣れているからです。あなたの考えは?

答えて

6

私はアマチュアレベルでのみpowershellを熟知していますが、私にとっては、「get」は、より強力で責任のあるタイプのコードを意味します。私のコードが行動を開始することを意味し、他のソフトウェアは私の要求に謙虚に応答します。 「受信」は、他のソフトウェアが実際に担当していることをより従順に示します。したがって、他のソフトウェアが例えば1分に1度温度を出していた場合は、Receiveを使用します。私はデータを受け取るつもりだが、他のソフトウェアはそれを受け取ることができない場合でもそのことをやっている。

「取得」は短く、私のコードが担当しているように感じるのが大好きです。 Getと一緒に行く。

+0

これは良い点であり、それは名前に対処するために私を助け '受信-job'のを良くREST -via。 –

+1

ありがとうございます。すべてのコメントに基づいて、この特定のケースでGetを使用する方がReceiveを使用するよりも理にかなっているという結論に達しました。技術的に事実以外の理由がない場合は、Send(httpリクエスト)とReceive(httpレスポンスの取得)を行い、これらの操作の合計がGetであるようにします。皆さん、ありがとうございました。 –

4

これは面白いデザインの質問です。私はこれを数回考えていました。これらのガイドラインによると:

Microsoft Command Line Standard

と私の気持ち、私もペア/衛星通信の1 Send-Xコマンド、Connect-Xを設計するとき、あまりにも、私は、例になどReceive-X名前を使用することになり、このアプローチは見つけを向上させます。 Receive-Xが表示されていてもマニュアルを読まなくても、追加のコマンドが存在することを期待しています。

は、ある意味では、これは、ネイティブのPowerShellコマンドReceive-Jobについても同様です:私たちは(Get-ItemGet-Process、などとは違って)、私たちが最初に私たちが呼んすなわちで、データが後で受信できる何かを開始する必要があり、それを呼び出すことはできませんStart-Job。しかし、個人的には、私はそれを別のものと呼ぶでしょう:Get-JobResultまたはそのようなもの;この名前はあまり混乱しないでしょう。ジョブの結果ではなく、ジョブのインスタンスであり、Send-Jobのような他のサテライトコマンドはありません。将来的にはより適切なものとして、まだReceive-Jobの名前を使用することができます。

ほとんどの場合、Getとします。しかし実際には、実際にXをReceiveと呼んでいる理由の一瞬をユーザーが停止して考えるのであれば、Getではなく、Receiveが適切かもしれません。

私は、コマンドレット/スクリプト/関数名に動詞Receiveを実際に使用したことはありません。

4

名詞を使用して決定します。あなたの名詞が検索されているオブジェクトなら、 "GET"を使います。名詞が何かを取得するメカニズムである場合は、「RECEIVE」を使用します。

GET-BOOKは

が受信REST -objectブック

関連する問題