[배열]#3.코드의 디자인

해피데빙·2022년 6월 26일
0

CS50

목록 보기
12/17

규모가 큰 프로그램을 작성할 때는 보통 한 사람이 아닌 여러 사람들이 함께 작업을 진행하게 됩니다. 이 때는 내가 기여한 부분이 프로그램에 오류를 발생시키지 않도록 주의를 기울여야 합니다. 또한 코드의 내용 뿐만 아니라 그 형식도 신경써야 합니다. 같은 내용이라 하더라도 어떻게 표현하느냐에 따라 코드를 이해하고 수정하는 속도가 달라질 수 있기 때문입니다. 코드의 정확성과 디자인을 어떻게 잘 관리할 수 있을지 배워봅니다.

https://tttsss77.tistory.com/61

check50

check50 프로그램을 이용하면 과제를 잘 수행했는데 자동으로 검사할 수 있습니다.

물론 이 프로그램은 cs50 강의를 위해서만 작성되었지만, 실제로 많은 사람들이 함께 작업하는 환경에서 이와 같은 자동 검사 프로그램은 많은 도움이 됩니다.

여러 사람들이 각자 한 부분을 맡아 코드를 작성할 때 각자가 수정한 코드가 전체 프로그램의 정확성을 해치지 않는지 쉽게 확인할 수 있기 때문입니다.

style50

style50 프로그램을 이용하면 코드가 심미적으로 잘 작성되어 있는지 검사할 수 있습니다.

공백의 수나 줄바꿈과 같은 것들은 코드의 실행에 직접적으로 영향을 주지는 않지만 코드를 작성하는 사람들이 코드를 읽고 이해하는데 영향을 주기 때문입니다.

가령 아래와 같이 for 루프를 작성할 때도 사람에 따라 여러 방식으로 작성할 수 있습니다.

많은 회사들은 사내에서 코드를 작성할 때 특정한 스타일 가이드를 따르도록 합니다.

여러 사람들이 코드를 작성하기 때문에 서로 불필요한 오해를 없애고, 코드를 이해하는 데 드는 비용을 최소화하기 때문입니다.

고무 오리

때로는 코드에 포함된 오류를 해결할 때 앞서 소개한 help50, debug50, check50과 같은 프로그램들이 존재하지 않거나, 있다 하더라도 디버깅에 큰 도움이 안 될 수 도 있습니다.

이 때는 먼저 한숨 돌리고 직접 곰곰히 생각해보는 수 밖에 없습니다.

한가지 유명한 방법으로 ‘고무 오리’와 같이 무언가 대상이 되는 물체를 앞에 두고, 내가 작성한 코드를 한 줄 한 줄 말로 설명해주는 과정을 거쳐볼 수 있습니다.

이를 통해 미처 놓치고 있었던 논리적 오류를 찾아낼 수도 있습니다.

profile
노션 : https://garrulous-gander-3f2.notion.site/c488d337791c4c4cb6d93cb9fcc26f17

0개의 댓글