SF-PD (safety-related stuff)를 주로 다루는 20 년의 소프트웨어 엔지니어로서, 나는 당신의 상사가 당신의 모범이되고 싶은 사람이 아닐 수도 있다고 말하고 싶습니다. 의견이 부족한 것은 일을 올바르게 수행하는 방법을 배우지 못한 자습 아마추어 코더 또는 경험이없는 엔지니어의 표시입니다. 또는 단순히 시간이없는 엔지니어 일 수도 있습니다. 마감일과 편의는 코드에 끔찍한 일을 할 수 있습니다! ;) 그것은 모든 유능한 소프트웨어 엔지니어에게는 확실히 안티 패턴입니다.
당신의 상사는 아주 좋은 코더 일지 모르지만, 그는 훌륭한 소프트웨어 엔지니어가 아닌 것 같습니다. 엔지니어는 집단적 그룹 경험을 사용하여 다른 사람들이 이미 잡은 함정을 피합니다. 효과적인 주석은 응력 분석이 기계 공학에 대한 집단 그룹 경험의 일부와 같은 방식으로 소프트웨어에 대한 집단 그룹 경험의 일부입니다. 효과적인 댓글 달기로 계산되는 것은 더 유동적이며 경험을 통해 얻는 것입니다.
가장 기본적인 것은 주석은 한 줄의 코드가하는 말을하지 않아야한다는 것입니다. 함수가하는 일에 대한 언급이 불필요한 경우도 있습니다 (특히 C #에서). 과도한 주석 처리는 드 로스에서 중요한 것을 찾을 수 없기 때문에 비효율적이며 경험 부족에 대한 포인터 일 수 있습니다. 초보자로서, 당신은 여전히 코드의 "무엇"을 알아 내기 위해 노력하고있을 수 있으며, 그 때문에 그가 한 일을 읽고 이해하면됩니다.
그러나 주석의 중요한 점은 왜 코드 라인이나 함수가 기능을 수행하는지 명확하지 않을 수 있다고 말합니다 . 모듈 Y 전에 모듈 X를 설정해야합니까? 파일이 이미 열려 있는지 확인하기 위해 리턴 코드를 점검해야합니까, 아니면 다른 곳에서 점검되었으므로 의식적으로 리턴 코드를 무시하고 있습니까? 코드의 "왜"는 경험에 관계없이 모든 사람과 관련이 있으며, 특정 방식으로 무언가를하는 좋은 이유를 잊어 버린 6 개월 후에도 그와 관련이있을 것입니다. 주석은 다른 사람들을위한 것이 아니라 미래에도 도움을주기위한 것입니다.
상사를 성가 시게하지 않으려면 현명한 질문을하십시오. "왜"에 대한 질문에 집중하고, "무엇"을 스스로 해결하십시오 (진실이 모호하지 않은 경우 제외). R-ing TFM에서 찾을 수없는 것이 아니라면 좋은 상사는 질문을받지 않을 것입니다. 또한 훌륭한 엔지니어는 적은 비용으로 다른 엔지니어의 삶을 훨씬 쉽게 만들 수있는 일을하도록 신경 쓰지 않습니다. (그에게 전체 코드베이스에 대한 의견을 백필하도록 요청하지 마십시오!;)