[text-editor] 이 시대에 코드 파일에 최대 80 자 너비를 적용해야하는 유효한 이유가 있습니까? [닫은]

진심으로. 22 인치 모니터에서는 화면의 1/4 만 덮을 수 있습니다.이 규칙을 줄이기 위해 탄약이 필요합니다.


나는 제한이 없어야한다는 말이 아닙니다. 그냥 80 글자가 매우 작습니다.



답변

80 열 (또는 79) 열로 코드를 유지하는 관행은 원래 80 열 덤 터미널 또는 80 열 인쇄에서 코드를 편집하는 사람들을 지원하기 위해 만들어 졌다고 생각합니다. 이러한 요구 사항은 현재 대부분 사라졌지 만 80 열 규칙을 유지해야하는 유효한 이유는 여전히 있습니다.

  • 이메일, 웹 페이지 및 서적에 코드를 복사 할 때 줄 바꿈을 피하십시오.
  • 여러 소스 창을 나란히 또는 단계별 diff 뷰어를 사용하여 볼 수 있습니다.
  • 가독성을 향상시킵니다. 눈을 좌우로 스캔하지 않고도 좁은 코드를 빠르게 읽을 수 있습니다.

마지막 요점이 가장 중요하다고 생각합니다. 지난 몇 년 동안 디스플레이의 크기와 해상도가 커졌지 만 눈은 그렇지 않았습니다 .


답변

80 열 텍스트 형식의 기원은 80 열 터미널보다 빠릅니다. IBM 펀치 카드는 1928 년으로 거슬러 올라갑니다 ! 이것은 로마 철도의 전차 바퀴 너비에 의해 미국 철도 계기판이 결정되었다는 (아포 크리프) 이야기를 떠올리게합니다 .

때로는 약간의 수축을 발견하지만 표준 제한 이 있는 것이 합리적 이므로 80 열입니다.

다음은 Slashdot에서 다루는 동일한 주제 입니다.

그리고 여기 구식 포트란 진술이 있습니다 :

FORTRAN 펀치 카드


답변

요즘 80 문자는 어리석은 한계입니다. 임의의 문자 제한이 아닌 코드 라인을 의미있는 곳으로 분할하십시오.


답변

22 인치 와이드 스크린 모니터가없는 모든 사람을 위해해야합니다. 개인적으로 저는 17 인치 4 : 3 모니터를 사용하는데, 그 너비는 충분히 넓습니다. 그러나 3 개의 모니터가 있으므로 사용 가능한 화면 공간이 여전히 많습니다.

뿐만 아니라 줄이 너무 길면 사람의 눈에는 실제로 텍스트를 읽는 데 문제가 있습니다. 어느 라인에서 길을 잃기 쉽습니까? 신문은 17 인치 (또는 그와 비슷한 크기)이지만 페이지 전체에서 글을 쓰지 않고 잡지 나 기타 인쇄 된 기사도 마찬가지입니다. 열을 좁 히면 실제로 읽기가 더 쉽습니다.


답변

사소한 변형으로 반복되는 일련의 명령문이있는 경우 유사점과 차이점이 선으로 그룹화되어 차이점이 수직으로 정렬되면 더 쉽게 유사점과 차이점을 확인할 수 있습니다.

나는 여러 줄로 나누면 다음보다 훨씬 더 읽기 쉽다고 주장한다.

switch(Type) {
case External_BL:   mpstrd["X"] = ptDig1.x - RadialClrX;    mpstrd["Y"] = ptDig1.y - RadialClrY;    break;
case External_BR:   mpstrd["X"] = ptDig1.x + RadialClrX;    mpstrd["Y"] = ptDig1.y - RadialClrY;    break;
case External_TR:   mpstrd["X"] = ptDig1.x + RadialClrX;    mpstrd["Y"] = ptDig1.y + RadialClrY;    break;
case External_TL:   mpstrd["X"] = ptDig1.x - RadialClrX;    mpstrd["Y"] = ptDig1.y + RadialClrY;    break;
case Internal_BL:   mpstrd["X"] = ptDig1.x + RadialClrX;    mpstrd["Y"] = ptDig1.y + RadialClrY;    break;
case Internal_BR:   mpstrd["X"] = ptDig1.x - RadialClrX;    mpstrd["Y"] = ptDig1.y + RadialClrY;    break;
case Internal_TR:   mpstrd["X"] = ptDig1.x - RadialClrX;    mpstrd["Y"] = ptDig1.y - RadialClrY;    break;
case Internal_TL:   mpstrd["X"] = ptDig1.x + RadialClrX;    mpstrd["Y"] = ptDig1.y - RadialClrY;    break;
}

업데이트 : 의견에서 이것은 위의 작업을보다 간결한 방법으로 제안합니다.

switch(Type) {
  case External_BL: dxDir = - 1; dyDir = - 1; break;
  case External_BR: dxDir = + 1; dyDir = - 1; break;
  case External_TR: dxDir = + 1; dyDir = + 1; break;
  case External_TL: dxDir = - 1; dyDir = + 1; break;
  case Internal_BL: dxDir = + 1; dyDir = + 1; break;
  case Internal_BR: dxDir = - 1; dyDir = + 1; break;
  case Internal_TR: dxDir = - 1; dyDir = - 1; break;
  case Internal_TL: dxDir = + 1; dyDir = - 1; break;
}
mpstrd["X"] = pt1.x + dxDir * RadialClrX;
mpstrd["Y"] = pt1.y + dyDir * RadialClrY;

지금은 80 열에 맞지만 내 요점은 여전히 ​​존재하고 있다고 생각합니다. 행에 여러 명령문을 배치하면 가독성을 향상시킬 수 있음을 여전히 보여줍니다.


답변

기본 크기로 고정 폭 글꼴을 인쇄하는 것은 (A4 용지에서) 80 열 x 66 행입니다.


답변

더 큰 화면의 이점을 사용하여 서로 옆에 여러 코드 조각을 갖습니다.

당신은 나에게서 탄약을 얻지 못할 것입니다. 사실, 나는 비상 사태 이후에 텍스트 콘솔에서 코드를 변경 해야하는 드문 경우를 본 이후로 변경되는 것을 싫어했습니다.