C ++ 표준을 아는 것이 얼마나 중요합니까?


11

검색을 시도했지만 비슷한 질문이 표시되지 않았습니다 (그렇거나 검색 용어가 잘못되었습니다. 그렇다면 닫으십시오).

나는 열렬한 사용자이며 토론과 답변에 C ++ 표준에 대한 참조가 많이 있음을 알았습니다.이 문서를 읽지 않아도 언어가 내 눈을 아프게합니다 ... 문제는 C ++ 개발자가이 문서를 읽지 않고도 실제로 코드를 작성할 수 있는가하는 것입니다. 컴파일러를 작성하는 일을하지 않는 필사자들에게 우리에게 정말로 중요한가?


하는 질문의 지속성 대답 표준에서 간단한 시세로는 (당신은 문제가 발생할 때 켜 어딘가에 제공) ... 그것을 읽는 것은 언어를 사용하기위한 필수가 아님을 증거 충분합니다
Shog9

답변:


16

아니-당신은 그것 없이도 잘 지낼 수 있습니다.

그러나 시간을 내서 배우면 훨씬 더 깊이 이해할 수 있습니다. 아마도 당신을 괴롭 히고 한 번에 작은 덩어리를 배우는 질문의 언급을 따르십시오.


8

언어 의미와 표준에 대해 논쟁하고 싶다면 표준이 매우 중요합니다. (I 완전히 derogatorily이 의미하지 않는다.) 당신은 그냥 할 일 얻고 싶은 경우 언어 (대 언어를), 그 다음이 훨씬 덜합니다.

표준은 약간 익숙해지면 표준 라이브러리 (언어 자체에는 그다지 중요하지 않음)에 대한 적절한 참조를 할 수 있지만 그렇게 사용하는 것이 주저합니다. 대부분의 사람들은 다른 재료로 더 잘하는 것 같습니다. 즉, stdlib에 대해 뭔가를 찾아야 할 때가 아닌 표준으로 더 자주 전환합니다.

그러나위원회 초안과 논문을 읽는 것은 C ++ 0x를 유지하는 한 가지 방법입니다. 실제로는 현재 몇 가지 방법 중 하나 일뿐입니다.

SO 및 다른 포럼의 경우 포스터가 명확하고 확실하게 도움이 될 것 같지 않은 경우를 제외하고 표준을 인용하는 것을 주저합니다. 대부분의 경우, 특히 C ++을 처음 사용하는 프로그래머의 경우 인용하는 것이 일반적으로 큰 도움이되지 않습니다.


누군가 언어가 무엇을해야하는지 알고 싶다면 표준이 매우 중요합니다. 컴파일러가 왜 어떤 일을하는지 알고 싶다면 종종 매우 유용합니다. 다른 질문에 대해서는 그리 많지 않습니다.
David Thornley

1
@DavidThornley : 표준을 읽는 데 오랜 시간이 걸린 후에 판단하기는 어렵지만, 대부분의 사람들은 TC ++ PL과 같은 텍스트가 언어가 무엇을해야하는지 알아 내기에 더 접근하기 쉽다고 생각합니다.
Fred Nurk

1
@Fred Nurk : 거의 모든 것이 표준보다 접근하기 쉽습니다. 나는 SO 등에 관한 질문에 대답하려고했지만 명확하지 않았다. 사람들이 cplusplus.com 및 기타 출처를 인용 할 때 약간의 권한이 추가됩니다.
David Thornley

@DavidThornley : 나는 (cplusplus.com이 내 취향에 너무 많은 문제를 가지고 있음) 그런 사이트를 거의 인용하지 않지만, 대부분의 포스터에는 표준보다 오류가 있어도 유용합니다. 불행히도 온라인에서 구할 수있는 것은 그것의 큰 부분입니다.
Fred Nurk

@Fred, 그것은 흥미 롭습니다. 저는 항상 cplusplus가 좋은 참조라고 생각했습니다. (아래 단점은 광고의 소스입니다-매우 부적절합니다!), 이제는 sgi 참조와 상호 참조해야합니다.
Nim

6

당신은 그것을 참조 할 수 있어야하지만 저자는 아니지만 저자는 모든 것을 읽었다 고 생각합니다 ... 그들조차도 (그들은 영역에 초점을 맞춘 그룹에서 일하므로 의심합니다).

사용 가능한 이유는 때때로 코드 정확성에 대한 질문은 표준을 참조해야만 대답 할 수 있기 때문입니다.


3
대부분의 상황에서는 필요하지 않습니다. 필요한 것은 다른 책에서 다룹니다. 해당 코너 케이스에 도달하거나 표준에서 정의를 확인 해야하는 언어 코너를 사용하지 않은 경우에만 (일반적으로 언어에서 코너 케이스를 사용하는 대안이 있습니다). 컴파일러 개발자를위한 표준은 그대로두고 일반 개발자는 다른 비 형식적인 텍스트를 사용할 수 있습니다.
Martin York

2

표준이 어디에 있는지, 언제 물건을 찾아야하는지 아는 것이 더 중요 할 것입니다.

다른 것이 없다면 주기적으로 확인하여 최신 버전을 준수하고 코드가 표류하지 않도록하십시오.


2

대규모 팀에서는 일반적으로 표준을 적어도 잘 아는 사람이 있어야하지만 특정 코드가 표준 요구 사항을 준수하는지 여부와 같은 항목에 대한 인수 / 질문을 정하는 등의 작업을 수행 할 수 있습니다.

그러나 현실적으로 이러한 답변은 판단과 경험으로 강화되어야합니다. (현재) 표준은 export키워드이며 그것이하는 일을 알려줍니다. 실제로는 대부분의 컴파일러에서 그렇게 작동하지 않습니다. 당신은 몇 가지 특정 코드 어떤 표준이 그것에 대해 말할 수에 대한 의견이 맞지 3 명이이있는 경우 마찬가지로, 많은 경우에, 그 의 코드가 더 간단하기 위해 재 작성해야 할 수도 있다는 신호합니다.

동시에 대부분의 팀은 하나의 플랫폼에서 대부분의 작업을 수행하고 표준 (및 적어도 합리적으로 익숙한 사람)을 사용하여 수행중인 작업이 해당 플랫폼과 너무 밀접하게 묶여 있지 않은지 확인합니다. 유용한.


표준을 해석하는 방법에 대해 전문가들 사이에 논쟁을 원하지 않는다면 "더 이상은"아마도 중요 할 것입니다
Steve314

2

나는 표준을 읽지 않고 총 4 년 동안 C ++ 개발자로 빵을 얻었습니다. 사실, 처음 2 년 동안 Stan Lippman과 MSDN 기사의 C ++ Primer 를 읽지 않았습니다 . 실제로 C ++ 코드를 생성하는 대부분의 사람들이 Effective C ++ et al. 나는 나 자신 만 나중에 발견했다.

IMHO는 훌륭한 C ++ 개발자가 되려면 언어의 내부 논리 (Scott Meyers가 지적한 것처럼 C ++은 약 4 가지 언어 임)와 일반적인 관용구 및 함정을 이해하고 항상 더 많은 것을 배울 준비가되어 있어야합니다. SO를 읽는 것은 누군가가 실제로 더 깊이 파고 싶다면 표준의 관련 부분을 읽을 가치가있는 코너 사례에 대해 많은 것을 가르쳐 줄 수 있습니다. 그러나 전체를 읽는 것이 우리 대부분에게는 거의 필요하지 않을 것입니다.


표준보다 훨씬 더 필수적인 (필요한 컴파일러를 작성하지 않는 프로그래머에게) 필수 책이 있다는 것이 좋은 지적입니다. +1-상당한 수의 "필수"책이 있습니다.
Steve314

실제로 @ Steve314-목록을 시작하면이 특정 질문에 대답하는 데 도움이되지 않습니다. 그러나 지금 SO에 관련 스레드에 대한 링크를 추가했습니다.
Péter Török

@ 피터-멋진 터치, 그러나 나의 미지의 요점은 "필수"책 중 어느 것도 진정으로 필수적인 것은 없다는 것입니다. 대부분의 C ++ 프로그래머는이 목록에서 여러 타이틀을 읽을 수 있지만해야 모든 그들의? 있을 것 같지 않게. 당신이 그랬더라도, 당신이 그 모든 지식을 실제로 유지할 수 있을지 의심됩니다. "Effective C ++"은 아직 읽지 않은 목록에 있으므로 필연적으로 필수 도서로 간주합니다.
Steve314

Steve314 @, 내가하지 않았다 평균 하나는 있어야 읽은 모든 사람들의를 - 그것은 그래서, 나도하지 않은, 내가 읽을 수는 있지만 의해 :-) 잡았습니다 그들 중 일부는 이러한 몇 가지 사이에 겹치는 부분이있다 개인적인 취향 및 개발자가 어떤 사람이 먼저 만나고 /거나 어떤 사람이 "필수"라고 레이블을 붙일 지에 대한 질문. 중요한 것은 따라야 할 일반적인 관용구와 피해야 할 일반적인 함정이 있으며, 이것들에 대해 알아야 할 가장 고통스러운 방법이 있다는 것입니다. .
Péter Török

물론 나는 정말 때까지 얼마나 중요 알 수 없습니다 그것을 읽었다.
Steve314

1

"표준을 아는 것"은 정도의 문제이며 반드시 원본 문서를 암기하는 것을 의미하지는 않습니다.

표준 문서는 신뢰할 수 있도록 설계되었으며 반드시 액세스 할 필요는 없습니다. 훨씬 더 접근하기 쉬운 원스텝 제거 소스가 많이 있습니다. 사실, 약간의 중국 속삭임이 있지만 큰 문제는 거의 없습니다. 확실히 한 단계 제거 된 수준입니다.

전체 공개-나는 이것을 말할 의무가 있습니다-나는 표준을 읽지 않았습니다. 최종 C ++ 0x 문서를 완성하려고 노력할 것입니다.

편집 과정의 스트로브 스트 룹 "는 C ++ 언어 프로그래밍 '의 새로운 버전을 출시하면, 나는 다시 정착 할 수있다.


1

C ++로 프로그래밍 할 때 표준 라이브러리 함수에 대한 정보는 종종 언어 표준을 참조했습니다. C ++ 표준 라이브러리는 상당히 커서 언어 표준이 가장 편리한 소스라는 것을 알았습니다.


1
오 정말? 나는 항상 이런 의미에서 cplusplus와 같은 온라인 리소스를 찾아야합니다 ...
Nim

1

나는이 질문에 전에 대답했지만 맹세 할 수는 없었습니다. 기본적으로, C ++ 사용자들은 자바 달리 구성 채울 수있는 사양 다른 플랫폼 사양에 구멍을 가지고 (예를 들어, POSIX, 또는 아키텍처의 ABI 사양, 또는 컴파일러). 따라서 StackOverflow와 같은 사이트에서 질문에 대답 할 때 특정 컴파일러에서 무언가가 작동한다고해서 모든 곳에서 작동한다는 의미는 아닙니다. 다시 말해, C ++로 작업 할 때 특정 사양을 참조하는 많은 이유는 언어의 특정 사용이 얼마나 이식성이 좋은지를 명확하게 설명하기위한 것입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.