파이썬이 아닌 언어로 소스 프로젝트를 열려면 코드를 더 많이 볼수록 더 많은 프로그래머가 적절한 들여 쓰기를 믿지 않는다는 것을 알게됩니다. (나는이 프로젝트의 질문을 너무 개인적으로 받아들이는 것을 피하기 위해 특별히 프로젝트를 언급하지 않을 것이다.) 보통 코드는 들여 쓰기되어 있지만, 표준 스타일과는 완전히 다른 방식으로, 특히 오래된/난해한 코드에서 나를 미쳐지게 만든다. 나는 C 언어와 같은 언어로 글을 쓸 때 실제로 파이썬으로 글을 쓰고있는 것처럼 종교적으로 들여 쓰기가 쉽다는 것을 알았습니다. 실제로는 아픈 엄지 손가락처럼 튀어 나오고 싶은 코드를 디버깅하는 것을 제외하고는 말이죠. 현대 IDE에서 잘못된 들여 쓰기를 수정하는 것이 얼마나 쉬운지를 감안할 때, 들여 쓰기를 중괄호와 동기화하여 보관하지 않는 것이 합당한 이유는 무엇입니까?왜 많이 들여 쓰기가 어려운 코드가 있습니까?
답변
대부분의 시간에 작업하는 원본 데이터베이스에 나타나는 대부분의 경우는 겹친 탭 & 공백 때문에 발생합니다. 한 사람의 편집자는 탭 스톱을 4 문자마다 설정하면 괜찮아 보이지만 다른 사람의 시스템에서는 2 또는 8 개의 스페이스 탭을 사용하는 것이 끔찍한 것처럼 보입니다. 원하는 번호를 다시 배열 할 수 있습니다. 어떤 파일은 관계없이 엉망이됩니다. 간격을 바꾸는 것은 도로를 병합하는 데 큰 고통이며, 따라서 결코 고정되지 않습니다.
+1 : 소스 코드의 탭은 모두가 동일한 탭 간격을 사용하지 않는 한 끔찍한 생각입니다. 오픈 소스 프로젝트에서는 그렇지 않습니다. – Grokys
정말 두 가지를 섞어서 문제가됩니다. 일관되게 탭을 사용하는 것은 실제로 이상적입니다. 왜냐하면 모든 사람들이 들여 쓰기가 실제로 들여 쓰기의 정도를 설정할 수 있기 때문입니다. 그러나 그것은 여전히 비실용적이어서 나는 여전히 탭을 전혀 사용하지 않습니다. – Chuck
나는 Chuck과 함께있다. 우리 사무실에서 모두 탭을 사용하고 우리 모두는 우리가 좋아하는 것을 보게된다. 매력처럼 작동합니다. – Ray
은 ... 당신이 PHP 코딩하는 경우 PHP는 그것을 밖으로 뱉어 html로보다 깔끔하게 들여 쓰기로, 나는이 더 중요 말하고 싶지만 HTML을 '제대로 들여'가지고
두 점을 쉽게 또한 Carl's observation :
- "적절한"들여 쓰기는 규칙 및 언어 구조의 문제입니다.
- 많은 수의 줄 들여 쓰기를 변경하는 것만으로 이루어진 소스 컨트롤에 대한 체크인은 사전상의없이 아주 잘 볼 수 없습니다.
단순히 "적절한 들여 쓰기"라는 프로그래머의 생각이 당신과 다를 수 있습니까? 어쩌면 당신의 코드는 들쑥날쑥 한 엉망진창처럼 보입니다. 진지하게, 각 프로그래머는 "적절한"들여 쓰기와 다른 사람들의 들여 쓰기 스타일을 "잘못"이라고 부르는 호기심이있는 자신의 생각을 갖고있는 것 같습니다. 들여 쓰기는 인터넷 초기 (그리고 초기)부터의 화염 전쟁의 중요한 주제였습니다. 화염에 연료를 더 추가 할 필요가 없습니다.
모두 당신이 사용하는 스타일이 입니다. 상대적으로 중요하지 않습니다. 일관되게 프로젝트 전체에서 동일한 들여 쓰기 스타일을 사용하는 것이 훨씬 더 중요합니다. 가장 일반적인 난장판은 팀의 각 프로그래머가 다른 팀에서 스타일을 사용하려고 시도 할 때 시작됩니다. 결과는 사람들을 미치게하는 혼합되지 않는 들여 쓰기 스타일의 추악한 엉망입니다. 따라서 프로그래머가 몇 명 이상있는 모든 프로젝트에 코딩 표준을 설정하는 것이 중요합니다. 반복 - 코딩 표준을 선택하는 것은 중요하지 않습니다. 일관성 카운트.
보낼 메시지가 좋을지라도 태도와 단어 선택에 유의하십시오. 표현이 마찰적 인 것처럼 보이면 상상하는 것보다 훨씬 덜 도움이 될 수 있습니다. – KevenK
-1 ... 상당히 무해한 관찰을 위해 다른 사람들에게 뛰어 들며 "f'ed up"과 "intolerant"라고 부르는 것은 또한 꽤 오랜 시간 동안있었습니다. –
또한 네, 미묘한 스타일의 차이점이 있습니다 만, 모든 사람들이 들여 쓰기가 ** 항상 ** 파일 내에서 일관되어야한다는 데 모두 동의한다고 생각합니다. 나는이 질문을 생각하게하지 않는 충분한 프로젝트를 보았다. – dsimcha
사람들이 제대로 옷을 입지 않는 이유는 무엇입니까? 사람들이 요리 할 때 마늘을 적당량 사용하지 않는 이유는 무엇입니까? 왜 모두가 이상한 음악을 듣나요? 귀하의 질문은 내가 아직 보지 못한 정당성을 정의하는 권한을 가정합니다.
그 외에도 파일 전체에 일관되게 형식이 지정된 코드가 있습니다. 1 탭 또는 3 칸을 사용하면 일관되게 사용하는 한 실제로는 신경 쓰지 않습니다. 똑같은 줄이나 줄에있는 중괄호와 동일합니다. 상관하지 말고 일관성을 유지하십시오.
필자는 개인적으로 사용 가능한 VS 자동 포맷을 사용하여 나를 위해 모든 것을 기본 설정 규칙에 완전히 만족시킵니다.
코딩 스타일은 '개인적인 선택'의 문제이며 한 스타일은 다른 스타일만큼 좋은 것으로 널리 받아 들여지고 있습니다. 나는 이것이 반드시 사실이라고 생각하지 않는다. accu으로 작성된 기사 (회원에게만 온라인으로 제공됨)는 읽기 쉽고 이해하기 쉬운 다양한 속도 읽기 기술을 코드 레이아웃에 적용 할 수 있음을 시사합니다. 인간이 정보를 얻는 방법에 관한 데이터는 의심의 여지가 없습니다.하지만이 기사는 코드 레이아웃에 적용한 첫 번째 기사였습니다.
특정 코드 레이아웃이 인간이 읽고 이해하는 데 더 적합하다는 것을 보여주는 상당한 정보가있을 수 있지만 필자가 본 많은 (많은) 논증 중 어느 것도이 정보를 참조하지 않으며 일반적으로 사람들 된 것이다.
그러나 아직 좋지 않은 _indented_는 좋지 않은 _ _...보다 낫습니다. – mjv
어리석은 질문입니다. 사람들은 게으르고, 서두르며, 무식하다. – spender
부정적인 가치 판단없이이 질문을 할 수 있습니까? "열악한 들여 쓰기"는 실제로 객관적인 것이 아닙니다. 그것은 당신의 입장에 대한 개인적인 판단입니다. 이 의견을 질문에서 삭제하십시오. –