Это интересный вопрос дизайна, и я несколько раз думал об этом выборе. Согласно этим рекомендациям:
Стандарт командной строки Microsoft
и мое чувство, я бы также использовал имя Receive-X
в тех случаях, когда я также проектирую одну из команд парной / спутниковой связи Send-X
, Connect-X
и т. Д. Такой подход улучшает обнаруживаемость: если я вижу Receive-X
тогда даже без чтения руководств я ожидаю, что будут существовать дополнительные команды.
В некотором смысле это верно для собственной команды PowerShell Receive-Job
: мы не можем просто вызвать ее (в отличие от Get-Item
, Get-Process
и т. Д.), Мы должны инициировать что-то, какие данные впоследствии могут быть получены, а именно сначала мы называем Start-Job
. Но лично я бы назвал это по-другому: Get-JobResult
или что-то в этом роде; для меня это имя было бы менее запутанным: это результаты работы, которые мы получаем, а не экземпляры работы, и нет никаких других спутниковых команд, таких как Send-Job
. Имя Receive-Job
все еще будет доступно для чего-то, возможно, более адекватного в будущем.
Я бы пошел с Get
в большинстве случаев. Но если вы действительно хотите, чтобы пользователь на мгновение остановился и подумал, почему X называется Receive
, а не Get
, и для этого есть причины, тогда Receive
может подойти.
В общем, я никогда не использовал глагол Receive
в именах командлетов / сценариев / функций: чего-то всегда было недостаточно для этого выбора.