# golang 에서 package(module)명은 지을 때 소문자로 모두 붙여쓰라고 한다.
# camel_case, snake_case 등은 사용하지 말고
computeServiceClient
priority_queue
# 다음과 같이 소문자로만 의미있게 축약하는것이 좋다고 한다.
strconv (string conversion)
syscall (system call)
fmt (formatted I/O)
# k8s 소스에서 package 를 검색해봤다.(정규식에서 길이 조건을 쓸수 없다.)
# syscall 처럼 의미 있게 축약되면 좋지만 client, pod 이런 단어가 조합되는 경우 축약이 힘들어 보인다.
# k8s 소스를 다운받아 package 이름 긴것들을 확인해 보면 이렇다.
# 소문자까지는 좋은데 넘 길면 갠적으로 snake_case 가 더 눈에 잘 들어온다.
rg -IN "^package [[:alpha:]]{10,50}$" | awk '{print length, $0}' | sort -r | uniq | head -10
40 package validatingadmissionpolicybinding
39 package validatingadmissionpolicystatus
38 package validatingwebhookconfiguration
37 package prereleaselifecyclegenerators
37 package externalaccountauthorizeduser
36 package storageobjectinuseprotection
36 package mutatingwebhookconfiguration
34 package prioritylevelconfiguration
34 package extendedresourcetoleration
34 package clusterauthenticationtrust