주석

5단 분석법

순서
분석
단어
내용
1
일반 명사
주석
단어나 문장의 뜻을 쉽게 풀이함
2
고유 명사
주석
프로그램의 실행에 영향이 없고 코드를 읽는 사람이 코드를 쉽게 이해할 수 있게 도와주는 설명문
3
사용 이유
주석
- 코드의 이해 또는 잘못 작성한 것을 파악하기 위해서 - 미래의 나를 위해서 - 다른 개발자를 위해서
4
사용 방법
주석
언어별 문법에 따라서 주석 처리 문법을 사용
5
다른 기술과의 비교
주석
-

주석의 정의

일반 명사

주석
단어나 문장의 뜻을 쉽게 풀이함
주석의 일반 명사는 “단어나 문장의 뜻을 쉽게 풀이함” 입니다.
일상생활에서 어떤 예시를 들어볼 수 있을까요?
어려운 단어 설명 또는 내용에 대한 보충 설명을 하기 위해서 각주가 존재합니다.
바로 이 각주가 일반적인 주석의 예가 될 수 있습니다.
주석의 고유 명사는 무엇일까요?

고유 명사

주석
프로그램의 실행에 영향이 없고 코드를 읽는 사람이 코드를 쉽게 이해할 수 있게 도와주는 설명문
주석의 고유 명사는 “프로그램의 실행에 영향이 없고 코드를 읽는 사람이 코드를 쉽게 이해할 수 있게 도와주는 설명문” 입니다.
Javascript
Python
Java
Dart
짧은 코드이기 때문에 주석이 없어도 이해가 가능할 수 있지만, 코드가 조금이라도 길어지거나, 여러 가지 기능이 추가된다면 한 눈에 코드의 구조를 파악하기는 쉽지 않을 것입니다.
우리가 사용하고 있는 앱이나 웹 사이트의 코드는 우리가 생각하는 것보다 훨씬 길고 복잡합니다.
서비스 기간이 오래됐고 유명한 앱 또는 웹 사이트의 경우 소스 코드의 용량이 대략 100GB 정도 입니다.
용량을 생각해보았을 때, 얼마나 길고 복잡한 코드인지 상상 해볼 수 있습니다.

사용해야하는 이유

주석
- 코드의 이해 또는 잘못 작성한 것을 파악하기 위해서 - 미래의 나를 위해서 - 다른 개발자를 위해서
컴퓨터언어에서 주석은 대표적으로 3가지 이유로 사용합니다.
1.
코드의 이해 또는 잘못 작성한 것을 파악하기 위해서
2.
미래의 나를 위해서
3.
다른 개발자를 위해서
각각의 이유에 대해서 한 가지씩 알아 보겠습니다.

코드의 이해 / 잘못 작성한 것 파악

수많은 초보 개발자들은 ‘a’라고 작성했다고 생각하지만, 막상 나중에 보면 ‘b’로 작성한 경우가 매우 많습니다.
프로그래밍 언어를 사용해 코드를 작성하는 게 익숙치 않아 잘못 작성한 부분도 눈으로 파악하기 쉽지가 않습니다.
Javascript
Python
Java
Dart
위의 코드를 보고 어떤 동작을 하는 코드인지 한눈에, 한 번에 파악할 수 있나요?
처음 보는 것도 있고, 한눈에 이해하기에는 조금 코드가 복잡해 보이는 것이 사실입니다.
하지만 주석을 추가하면 어떻게 될까요?
Javascript
Python
Java
Dart
출력 결과
나이는 14살입니다.
주석을 추가한다면 각각 코드의 줄이 어떠한 의도로 작성되었고 어떠한 동작을 하게 되는지 명시해뒀기 때문에,
한눈에 파악하기가 비교적 쉬운 것을 확인할 수 있습니다.
내가 코드를 작성하면서 어떤 생각으로, 무엇 때문에 이 코드를 작성했는지 하나하나 주석을 달았다면?
내가 어느 부분에서 어떤 것을 잘못 작성했는지 한 번에 파악할 수 있을 것입니다. 그러므로 주석을 하나하나 작성하면서 잘못 작성한 게 있는지 파악할 수 있도록 코드를 작성해야 합니다.

미래의 나를 위해서

Javascript
Python
Java
Dart
코드를 열심히 작성해서 한 가지 프로그램을 만들었습니다.
그러면 앞으로의 나는 이 프로그램의 코드를 다시는 볼 일이 없는 걸까요?
아닙니다.
1주 뒤의 나, 1년 뒤의 내가 이 코드를 언제 보게 될 지는 아무도 예상할 수 없습니다.
어떤 생각으로 코드를 작성했는지 아주 희미하게 기억은 날 수 있습니다.
그런데 정확히 기억이 나지 않을 가능성이 매우 높습니다.
코드에서 오류가 나고 있다면 그 코드의 오류를 해결하기 위해 모든 코드를 다 훑어봐야 할 수도 있습니다.
주석을 작성했다면 내가 어떠한 생각으로 이 코드를 작성했는지 수 년이 지나도 빠르게 이해할 수 있습니다.
그러므로, 미래의 나를 위해서 주석을 작성해놔야 더 빠르게 코드를 이해하고 유지, 보수할 수 있습니다.

다른 개발자를 위해서

실무에 있는 개발자들은 대부분 팀을 이뤄 개발을 진행합니다. 내가 짠 코드를 공유해 다른 개발자들이 코드를 보고 추가, 수정할 수 있습니다. 이 경우, 내가 어떠한 생각으로 이 코드를 짰는지에 대한 주석을 작성해두면 다른 개발자들도 나의 의도를 이해하기 쉬워질 것입니다.
주석 작성은 몇몇 개발자들 사이에서 논란이 되는 주제입니다. ‘협업을 위해 작성을 해야 한다’, 코드의 가독성을 위해 작성을 하면 안 된다’라고 생각으로 나뉩니다.
정답은 없습니다. 상황마다 주석이 필요할 수도, 필요하지 않을 수도 있습니다. 회사마다 다르고 개발자마다 다르니 상황에 맞춰 작성하는 것을 권장해 드립니다.
다만, 초보자분들은 무조건 작성하시는 것을 권장해 드립니다. 위 이유처럼 자신이 잘못 작성한 것을 파악하기 위해서 작성하는 것을 권장해 드립니다. 귀찮다고 생각이 들지라도 초보자들은 더 빠르게 이슈를 해결할 가능성이 높습니다.
그리고 주석을 작성하는 것도 실력이기에 작성하셔서 주석 작성 실력을 키우면 좋을 것 같습니다. 만약 다음에 동료가 혹은 회사에서 주석이 필요 없다고 하면 작성을 하지 않으면 그만이니까요. 반대로 무조건 작성해야 한다고 하면 작성하는데 너무나도 어려울 것입니다.
주석을 사용하는 이유에 대해 알아 보았습니다.
다음에는 주석을 사용하는 방법에 대해서 알아보도록 하겠습니다.

사용 방법

주석
언어별 문법에 따라서 주석 처리 문법을 사용
주석의 사용 방법은 “언어별 문법에 따라서 주석 처리 문법을 사용” 입니다.
아래에서 언어별 주석 문법을 보여 드리겠습니다.

문법의 형식

Javascript
Python
Java
Dart
주석을 작성할 때 중요한 것은 ‘주석을 작성하는 목적’에 맞게 작성을 해야합니다.
주석은 컴퓨터가 이해하는 코드가 아닙니다.
사람이 이해하기 위해 작성하는 코드이기 때문에 위 3가지를 목적에 맞춰 사용하면 됩니다.

알아두면 좋은 정보

실무에서 사용하는 주석 TIP

주석을 쓰는 목적은 매우 다양합니다. 그래서 올바르게 구분을 하기 위해 개발자끼리 통용되는 규칙이 존재합니다. 규칙은 규칙일 뿐, 문법이 아니니 무조건 지켜야 한다는 아닙니다.
주석은 개발자 간 소통 및 협업을 돕고, 코드 가독성과 유지 보수성을 향상하는 데 도움이 많이 됩니다.
아래는 규칙 몇 가지를 적어둔 내용입니다.
TODO: 주로 미완성된 작업이나 추가 작업이 필요한 부분을 나타내는 주석입니다. 개발자가 코드를 작성할 때 작업을 나중에 처리하거나 완료해야 할 때 사용됩니다. 주석에는 "TODO" 키워드와 함께 작업 내용이 작성됩니다. 저같은 경우 매일 업무가 끝날 때마다 TODO 주석으로 오늘 하루 어디까지 진행했는지 작성해놓습니다. 다음날에 업무를 시작할 때 어디까지 했는지 쉽게 알 수 있기 때문입니다.
// TODO: 이렇게 주석을 사용합니다.
JavaScript
복사
XXX: 주로 경고나 주의 사항을 나타내는 주석으로 사용됩니다. 코드에 문제가 있거나 개발자가 주의해야 할 사항이 있을 때 사용됩니다. "XXX"는 주석을 빠르게 찾을 수 있게 하려고 사용되며, 주로 잠재적인 버그 또는 개선이 필요한 부분을 나타냅니다.
// XXX: 이렇게 주석을 사용합니다.
JavaScript
복사
FIXME: 코드에 버그가 있거나 수정해야 할 부분이 있음을 나타내는 주석입니다. 주로 임시로 수정해 둔 코드나 버그 수정이 필요한 부분을 표시하기 위해 사용됩니다. "FIXME"는 나중에 코드를 검토하거나 유지 보수할 때 수정해야 할 부분을 식별하는 데 도움을 줍니다.
// FIXME: 이렇게 주석을 사용합니다.
JavaScript
복사
NOTE: 코드에 중요한 정보나 설명을 추가하기 위해 사용되는 주석입니다. 주로 코드의 동작 방식이나 설계에 대한 정보, 참고 사항을 기록하는 데 사용됩니다. "NOTE" 주석은 코드를 이해하는 데 필요한 추가적인 정보를 제공합니다.
// NOTE: 이렇게 주석을 사용합니다.
JavaScript
복사
HACK: 일시적인 또는 부정확한 해결책이나 속임수를 나타내는 주석입니다. 주로 특정 문제를 해결하기 위해 임시로 적용된 코드나 우회 방법을 표시하기 위해 사용됩니다. "HACK" 주석은 코드의 가독성과 유지 보수성을 떨어뜨릴 수 있으므로 주의가 필요합니다.
// HACK: 이렇게 주석을 사용합니다.
JavaScript
복사

좋지 않은 주석 사용법

// 'name'이라는 이름의 변수를 선언하고 '웨인'이라는 문자열을 할당합니다. const name = "웨인"; // name 은 웨인이다. // name 에 웨인 이라는 값을 넣음
JavaScript
복사
위와 같은 주석은 불필요한 주석이라 할 수 있습니다. 정말 필요한 곳에는 작성하는 게 맞지만, 위와 같은 의미 없는 주석은 오히려 코드 가독성을 떨어뜨릴 수 있습니다. 주석은 코드를 명확하게 하는 데 도움이 되어야 하며, 코드의 의도나 복잡한 내용을 설명할 때 가장 유용합니다.