하드웨어에서 여러 비트 필드를 받았습니다.플래그 열거 형을 사용하는 장단점은 무엇입니까?
내 코드는 원래이었다
public readonly byte LowByte;
public bool Timer { get { return (LowByte & 1) == 1; } }
가 그럼 난 플래그 열거 형을 기억하고 그것을 변경 고려하고 : 등등
[Flags]
public enum LowByteReasonValues : byte
{
Timer = 1,
DistanceTravelledExceeded = 2,
Polled = 4,
GeofenceEvent = 8,
PanicSwitchActivated = 16,
ExternalInputEvent = 32,
JourneyStart = 64,
JourneyStop = 128
}
public readonly LowByteReasonValues LowByte;
public bool Timer { get { return (LowByte & LowByteReasonValues.Timer) == LowByteReasonValues.Timer; } }
합니다.
가장 좋은 방법은 무엇이며, 각 방법의 장단점이 있다면 무엇이 있을까요?
편집 : 특히 성능과 관련하여 두 가지 접근 방식간에 실질적인 차이가 있는지 알고 싶습니다. 필자는 코딩 스타일에 대한 의견을 구하기를 원하지 않습니다 (Microsoft 가이드 라인에서 제외하지 않는 한). 감사. 그것은 적어도
이 코드를 사용하는 개발자의 관점에서 살펴보십시오. 단위 테스트를 작성하는 것이 좋은 방법 중 하나입니다. 예제 (코드 샘플)를 작성하는 것도 또 다른 방법입니다. 어떤 방법으로 개발자는 가장 명확한 코드를 작성할 수 있습니까? 어떤 방법으로 클라이언트 개발자에게 가장 직관적입니까? – TrueWill