nsunsenines
212
2022-06-23 08:33:29
11
354

변수명 짓는데 축약형이 별로 안좋나요?



책을 읽다가 이런 걸 발견했는데

책에서는 count -> cnt, price -> prc, volumn -> vlm 이렇게 줄이는게 좋은게 아니라고 하네요.

근데 다른쪽에서는 모음을 삭제해서 좀더 보기 편하게 하라는 말을 본거 같기도 해서 어떻게 하는게 좋을까요?

0
  • 답변 11

  • xml개발자
    4k
    2022-06-23 08:37:09

    축약형을 쓰면 다른 사람을 못 알아먹어서 그렇습니다.

    하지만, 알아먹는다면 문제될 것은 없죠.

    apple을 app이라고 축약한다면 의미가 헷갈릴 수 있지만

    count를 cnt라고 축약한다면 문제는 없을 것 같네요.

  • 박철
    202
    2022-06-23 08:37:42

    변수명 함수명 등등.. 곧 주석이라 생각하시면 됩니다.

  • 캐티
    6k
    2022-06-23 08:38:49
    함수 내부에 쓰는 변수 정도만 축약을 하빈다.
  • 초동동
    25
    2022-06-23 08:42:25

    다른 사람이 개발한거 유지보수 할때 축약형 못 알아봐서 분석하는데 시간이 좀더 걸립니다.

  • 밤아홉시
    711
    2022-06-23 08:43:39

    네이밍 컨벤션은 선호/비선호가 있을 뿐이지 정답은 없다고 생각합니다.

    그냥 프로젝트 내에서 정한 컨벤션을 따르면 되죠.

  • 어찌저찌개발자
    188
    2022-06-23 08:45:03 작성 2022-06-23 08:51:39 수정됨

    정확하게는

    일반적으로 사용하는 축약어가 아니면 축약하지 말라

    이네요


    이유는

    다른 개발자나 미래의 내가 봤을 때 변수명으로 의미 파악이 힘들 수 있기 때문입니다.

  • 어찌저찌개발자
    188
    2022-06-23 08:45:14

    박철


    아주 좋은 말씀

    변수명, 함수명 등 잘 지으면 주석이 필요 없어지는 경우가 많음

  • 도각도각
    4k
    2022-06-23 08:47:48
    통용되는 약어가 있으니, 그런것은 사용해도 되지만, 무조건적으로 줄이는건 극혐합니다.

    개인적으로는.. 아마도..

    대략 10여년전(?) 오라클이 굉장히 많이 사용되었는데..

    오라클의 컬럼 길이 제한이 30byte였습니다.

    그래서.. 단어를 _ 를 조합해서 연결하는 식으로 사용하면, 금방 30자가 넘어.. 약어를 사용하지 않으면 안되는 경우가 자주 생겼어요.

    제 추측이지만 (?) 그래서 약어를 사용하기 시작한게 아닌가 싶습니다.

    지금은 오라클 12c에서 컬럼명이 128byte로 늘어난걸로 알고 있고, 요즘 많이 사용되는 Postgresql이나 mysql, mariadb도 60byte이상 컬럼명을 지정할 수 있어서, 최근에는 약어를 사용하지 않는걸로 알고 있습니다.
  • platanus
    901
    2022-06-23 08:57:24

    그렇게 개발된 소스를 받았는데 코딩 수준을 떠나서 도대체 뭔말인지를 모르겠어요.. 결국 논리ERD보면서 디버거 돌려봐야 이해됨…

  • worker ant
    192
    2022-06-23 08:59:32

    "통용되는"이 중요합니다.

    제가 리딩하는 기준으로는 이런 기준을 잡을것 같습니다.

    허용: count -> cnt (하지만 엄격하게는 count로 컨벤션)

    허용하지 않음: price -> prc, volumn -> vlm

  • 데이비뜨
    239
    2022-06-23 09:10:57

    1년이 지난뒤에도 유지보수가 필요한 프로젝트인가?  부터 생각해 봅니다 

    1년이 지난 뒤 해당 소스를 수정하거나 보완해야 할 필요가 생겼을때 그 소스를 보고 얼마나 빠르게 이해하고 수정 또는 보완 할 수 있는지를 기준으로 보면 되지 않을까 싶네요  


  • 로그인을 하시면 답변을 등록할 수 있습니다.