Jan은 C# 코드에서 일반적인 getter가 보호되는 경우를 발견했습니다. 이 getter는 값을 JSON으로 직렬화합니다. 이러한 코드는 getter가 실제 getter가 아니라 JSON 직렬화기라는 점에서 문제가 되며, 속성이 문자열이므로 직렬화가 중복됩니다. 또한 문자열에 IsNotValid()라는 확장 메서드가 적용되어 있었습니다. 이러한 코드 패턴은 .NET 언어에서 일반적이나 예상치 못한 동작을 초래할 수 있습니다. 속성의 값을 할당하면 실제로 JSON으로 직렬화됩니다. 이러한 코드 패턴은 Jan의 애플리케이션에서 일반적인 함정으로 나타나고 있습니다. 이러한 코드 패턴을 사용할 때 주의해야 할 필요성을 강조합니다.
thedailywtf.com
CodeSOD: Serial Properties
Create attached notes ...
