
"와, 또 다른 인간 여자! 하지만 이번에는 검은 머리다. 신기해라!"
"안녕, 나는 혜영이라고 해."
"안녕하세요, 저는 아미고예요!"
"알고 있어. 내가 네 이름을 생각해 냈으니까. 디에고가 혼자서 생각하진 않았을 테니."
아미고의 생각이 전자의 속도로 질주했다. "음...여자가 정말 친절하네. 로봇을 좋아하는 건가."
"레슨으로 돌아가자. 간단한 단어로 자료를 설명해 볼게."
"좋아요."
"교수님과 리시가 한 강의 내용에 몇 마디 덧붙일게."
"자바에서 명령어를 그냥 쓸 수도 있지만, 해당 명령어에 대한 코멘트까지 코드에서 바로 추가할 수 있어. 컴파일러는 코멘트를 완전히 무시하지. 프로그램을 실행하면서 코멘트는 모두 생략해 버리지."
"예를 들어 주실래요?"
"그럴게."
public class Home
{
public static void main(String[] args)
{
/*
이제 화면에 '아미고가 제일 잘한다'라는 문구를 표시합니다.
*/
System.out.print("아미고");
System.out.println("가 ");
System.out.print("제일 ");
System.out.print("잘한다");
}
}
"'이제 화면에...'라는 코멘트를 추가했어. 코멘트를 여는 한 쌍의 기호(/*
)로 시작해 코멘트를 닫는 기호(*/
)로 끝나. 프로그램을 컴파일하면 컴파일러가 /*
기호와 */
기호 사이에 있는 것을 모두 생략해 버리지."
"무엇이든 원하는 대로 쓸 수 있다는 거예요?"
"그래. 일반적으로 코드에 들어 있는 코멘트는 이해하기 어려운 코드에 대한 설명이야. 일부 코멘트는 문자열 수십 개로 이루어지지. 때로는 메소드 작동 방식에서 미묘한 차이를 설명하려고 메소드 앞에 종종 코멘트를 달기도 해."
"코드에 코멘트를 추가하는 방법이 하나 더 있지. 사선 두 개(//
)를 사용할 수도 있어."
public class Home
{
public static void main(String[] args)
{
System.out.print("아미고가 ");
System.out.print("제일 "); // 여기도 코멘트
System.out.print("잘한다");
}
}
"여기서 //을 표기하면 //에서 시작하여 해당 줄 끝까지의 코드를 코멘트로 간주해. 즉, '코멘트 완료'를 나타내는 다른 한 쌍의 기호는 없어."
"그런데 일부 코멘트는 정말 흥미롭지."
// 저는 이 코드를 책임지지 않습니다. 제 의사에 반하여, 시키는 대로 코드를 썼습니다.
// 미래의 나에게. 날 용서해.
// 용서를 구할 엄두조차 나질 않아.
// 이런 걸 한 번 더 보게 되면 직장에서 진짜 신경 쇠약에 걸릴 거예요.
// 이 조건이 언제든 충족되면
// 사례할 테니 저에게 알려 주세요. 전화: xxx-xxx-xxx.
// 관리자님,
// 이 루틴을 '최적화'하기 위한 노력이 끝나고,
// 그게 얼마나 끔찍한 실수였는지 깨달았다면
// 다음 counter를 증가시켜 경고하십시오.
// 다음 사람에게요.
// total_hours_wasted_here = 42
// 내가 이 코멘트를 썼을 때, 내가 하고 있는 일을 이해한 존재는 신과 나 뿐이었다.
// 지금은 신만이 안다
// 나는 컴파일러가 내가 쓴 코멘트를 무시한다고 믿곤 했다.
// 일단 그게 일반에 공개되면
// 나와 세 아이들, 그리고 우리 개를 부양해야 하는 내 아내,
// 달린에게 이 모든 코드와 내 모든 일을 바친다.
// 취했음, 나중에 수정
// 마법. 만지지 마시오
"그래, 어떤 코멘트는 아주 재미있어."
"오늘 레슨은 이걸로 끝."
"짧아도 흥미로운 레슨이었어요. 고마워, 혜영아."
GO TO FULL VERSION