Note ≣
어떤 사양이 있을 때만 버그가 존재할 수 있다. 만약 아무런 사양도 없다면 버그라고 주장할 수 있는 것은 아무것도 없다. 기업들은 “오, 그런 특별한 예외가 있다”라는 식으로 버그를 처리하여 논란을 피할 수 있다. 그저 “이 기능이 예상대로 잘 동작하는가?”라는 질문에 답할 수 있는 한, 사양은 문서도 필요 없이 우리 마음 속에만 존재할 수도 있다.
더 중요한 것은 이 논리가 코드에서 분명하지 않다는 점이다. 더 나은 방법은 다음 코드와 같이 .NET 프레임워크의 Uri 클래스를 활용하는 것이다.
public string GetShortCode(Uri url){ → 우리가 기대하는 것은 분명하다. string path = url.AbsolutePath; → 봐라, 더 이상 정규 표현식이 필요하지 않다! if (path.Contains('/')) { return null; → 올바른 URL이 아니다. } return path; }