2009-06-25 7 views
7

저는 인도에서 여러 개발자와 함께 일하는데 가장 큰 어려움 중 하나는 변수 이름을 지정하는 것입니다. 처음에 나는 매우 좌절감을 느꼈다. 왜 그들이 왜 게으름을 적절히 명명하지 않았는지 이해할 수 없었다. 그러나 나는 그들이 변수를 명명하는 데 익숙하지 않았을 것이라고 생각했다. 영어와 그들이 읽는 영어 단어는 거의 의미가 없습니다. 지금은 분명해 보이지만 영어를 적절히 이해할 수 없다면 변수 이름을 잘 지정하는 것은 불가능합니다.다른 언어를 사용하는 변수 명명 및 팀원

외국어로 말하는 팀원의 이름 지정 방식을 개선하는 방법에 대해 어떻게 생각하십니까?

죄송합니다. 다소 주관적인 의견 일 경우 커뮤니티 위키로 표시했습니다.

감사합니다.

+0

이것은 우리 조직의 공통적 인 문제입니다. 해답을 보는 데 관심이 있습니다. +1. –

답변

1

저기서 일하는 개발자 한 명을 찾아 영어를 아는 사람과 그 사람이 모두 변수 이름을 사용하게 한 개발자를 찾으십니까?

1

변수를 모국어로 설명 적으로 이름을 지정하고 번역기를 사용하여 영어로 변환 할 수 있습니까? 마크 업을 추가하고 프리 컴파일러를 실행하여 자동 번역을 수행 할 수 있습니까? 그냥 생각.

3

대부분의 개발자는 기술적 인 영어를 합리적으로 이해해야합니다 (대부분의 API는 대부분 영어로 작성되었습니다). 따라서 영어가 좋은 선택 인 것 같습니다. 변수는 일반적으로 매우 어려운 이름을 갖지 않습니다. xCounter, isXYZ 등이 있습니다. 이름을 지정하기가 어렵다면 그 변수가 선언 된 추상화 수준이 올바른 것이 아니라는 것을 확실한 신호로 받아 들일 것입니다.

변수 이름의 지역화를 제안 할 수 있습니다. 정말 어려운, 더 요즘 코드가 기업의 해외 인수, 다른 대륙에있는 사람들에 의해 수행되는 것이 일반적인 때 등

뭔가 꼭 팀의 구성원에 대한

12

변경합니다 ☺ 요구 사항을 줄 것을 발견 - 서면 영어를 충분히 이해하고 있어야합니다.

편집 : Bill K의 의견에 따라 저조한 통신 문제를 처리하는 비용은 저축 계산에 반영되지 않은 것으로 보입니다. 아니요, 저는 해외 개발자와 일한 적이 없지만 영어가 모국어가 아닌 2 명의 사람들과 일하게됩니다. 20 년 동안 미국에서 살았음에도 때때로 의사 소통이 약간 느려지기도합니다.

또한 내 대답이 가장 유용 할 것으로 기대하지 않았습니다. 그냥 지점을 만들려고. 당신이 당신의 사무실에서 일할 누군가를 고용하지 않는다면, 당신은 왜 그들을 지구상의 다른면에서 당신을 위해 일하도록 고용하겠습니까? 대행사를 거치더라도 간접적으로 코드에서 작동하는 모든 개발자를 고용하고 있습니다.

내 재능은 개발 재능에 관해서는 싸다는 것은 상당히 비쌀 수 있습니다.

+0

일반적으로 통제 할 수없는 것입니다. 당신이 업계에서 일했는지는 모르겠지만 일반적으로 이사 진 아래에 아무도 자원하여 개발비를 절약하기 위해 다른 나라의 계약자와 자원하여 일하는 사람은 없습니다. 귀하의 대답은 정확할 수도 있지만 유용하지는 않습니다. –

+0

사실 충분히 저렴하고 값이 싸고 품질이 낮습니다. – akf

+0

@Dennis 전적으로 동의합니다. 사실, 다른 나라의 개발 팀에게 미래를 약속하고자하는 회사에서 일하는 중이라면 그 회사를 파산 한 회사로 볼 수 있기 때문에 그만 둘 수도 있습니다. 그러나 요점은 내가 본 적이없는 사례였습니다. 개발자는이 문제에 대한 진정한 선택권이있었습니다. 회사는 당신이 문제에 대한 선택권이 있다고 생각하게 만들지 만, 당신이 얼마나 열심히 반대 하든지 비용을 놓치고 있다는 것을 보여 주든, 그들이 결정한 것을 할 것입니다. –

4

모두가 동일한 언어를 사용하며 다른 회사에 코드를 판매하지 않을 경우 자국어로 코드를 작성하는 것이 좋습니다.

각 회원이 다른 언어를 사용하는 경우 코드는 영어로 작성되어야합니다. 누구나 확인할 수있는 응용 프로그램에서 가장 일반적인 단어 사전을 만들어보십시오. 필요할 때 영어로 번역 할 수있는 사람을 선택하십시오.

그리고 어떤 단어가 잘못되었을 때 언제든지 리팩토링 할 수 있습니다.

+1

나는 사전 아이디어가 맘에 든다 – Shawn

7

각 코드 검토에 대해 '변수 이름 지정'주제를 만들 수 있습니다. 그것은 논의하기 쉬운 사실 의제 항목 일 것입니다. 토론을 그들이 달성하려는 것을 이해하고 있는지에 대한 기준으로 사용할 수 있습니다.

+1

여기에서 유일하게 실행 가능한 아이디어가있다. 코드 리뷰는 단지 그들을 변경 - eclipse/netbeans에서 사소한 있어야합니다. 일반적으로 어쨌든 프로젝트가 어느 정도 성공하기를 원하면 일반적으로 2-4 명의 개발자 모두에게 한 명의 개발자를 파견해야합니다. 따라서이 작업을 수행해야하는 작업 중 하나로 추가하십시오. 경영진이이 원칙을 이해한다면 해외에서 도움을받을 가능성이 적어집니다! –

2

필자는 비판적인 의도는 없지만 실제 질문이 있습니다 ... 변수 이름을 영어로 유창하게 구사하지 못하는 경우 영어 기반 비즈니스 도메인 모델을 이해하는 데 얼마나 유창합니까? , 훨씬 덜 디자인하고 해당 도메인에서 실제 문제를 해결하는 소프트웨어 제품을 구성하십시오.

+0

그들은 많은 디자인을 할 필요가 없으며 맞춤 소프트웨어, 버그 수정 등을 더 많이 구현하지만 상당히 엄격한 스펙을 따르지만 코드의 유지 관리 (대량 블록 복사 제외)는 변수와 완전히 별개의 이름이 붙은 악몽이 될 수 있습니다 그들의 작업에 – Shawn

+0

다음은 시나리오입니다. 영어 실력이 뛰어나고 서면 기술 영어를 대부분 이해하지만 영어를 거의 말하고 쓸 수없는 프로그래머 팀은 영어를 사용하는 고객을 위해 폐쇄적 인 소스 소프트웨어를 작성하는 명성을 얻었습니다. 지금까지 그렇게 좋았습니다. 아무도 자신의 실체를 어떻게 명명하는지 신경 쓰지 않았습니다.그러나 그들은 이제 자신의 명성에 걸 맞는 미국의 소프트웨어 회사와 협력하기로 이동하기로 결정했습니다. 그 때가 잘못되었습니다 ... 못 생겨서 ... 이름이 밝혀졌습니다. 너 거기있다. –

1

변수 이름이 설명이 아니거나 변수 이름이 영어가 아니거나 변수 이름 스타일이 일치하지 않는 등의 특정 문제에 대해 잘 모르겠습니다. 어느 쪽이든 자세한 코딩 표준을 설정하고 코드 감사 또는 검토를 사용하여이를 시행 할 수도 있습니다.

  • 지역 변수의 이름이 변수의 목적은 (
  • 항상 변수의 이름을 일관된 스타일을 사용 분명하다 있도록
  • 변수 이름을 지정해야합니다 허용되지 않는 "온도"를 사용하여 예를 들면 다음과 같습니다 예 : 카멜 케이스)

핵심은 이러한 규칙을 게시하고 전체 조직에 적용하는 것입니다.

+0

이것은 우리가 시험해 본 물건들입니다. 불행하게도해야 할 일에 대한 규칙을 만드는 것은 변수 이름의 실제 내용을 절대 도울 수 없습니다. 그들은 헝가리 케이스 사용을 중단 할 수도 있습니다. 항상 일관된 케이스 등을 사용할 수는 있지만 numberOfMissingPageTemplates와 같은 변수 이름은 사용하지 않습니다. 카운터처럼 될 것입니다. – Shawn