Что такое соглашение об именах для функций Powershell в отношении использования верхнего/нижнего регистра?
Хотя в Руководстве по разработке командлетов я нашел много информации о том, как называть командлеты и функции, я не нашел никакой информации о том, должны ли функции называться в верхнем или нижнем регистре.
Что такое конвенция здесь?
(Я понимаю, что сами командлеты обычно называются в верхнем регистре, даже если они не чувствительны к регистру, когда дело доходит до выполнения.)
Ответы
Ответ 1
Соглашение об именах может быть сложным. Хотя соглашение с фиксированным именованием может обеспечить эстетику или упрощенное использование, это не требуется. В общем, соглашение об именах, за которое я выступаю, - это тот, который уже используется в Powershell. Поскольку функции создаются на основе глагола-существительного, каждое слово начинается с прописной буквы или если оно является аббревиатурой - все капиталы, или если оно является собственностью, то, как и соответственно.
Я, например, создал для себя некоторые функции:
Get-ServerDiag
Mount-TrueCryptVolumes
Start-RDP
Generate-RandomPassword
Nuke-Environment
Вы можете себе представить, что делают эти функции, оно довольно ясное, прямолинейное и совместимое со встроенными функциями Powershell. Однако у меня есть исключения из "импорта" нескольких команд Unix в Powershell (например, killall
, pidof
и т.д.). Вы всегда можете использовать Set-Alias
, если хотите написать что-то еще.
Этот вопрос, каким бы важным он ни был, можно обсуждать, поскольку, похоже, не существует "одного, лучшего пути". Все это, в конце концов, зависит от личных предпочтений.
Ответ 2
Функция в основном представляет собой командлет на основе script. Командлет написан напр. С#, а функция записывается как script. Из-за этого сходства я рекомендую использовать тот же стиль, что и cmdlets для своих "автономных функций", чтобы он входил в состав других командлетов PowerShell. Ex. У меня была функция filecount (для каждой папки), которую я часто использовал. Я назвал его Get-FileCount
.
Однако я обычно называю вспомогательные функции (функции, которые вы используете только в других функциях), используя более простое имя, например convertsidtousername
и т.д.
Вы можете использовать псевдонимы для создания коротких имен для функции.