분류 전체보기106 IComparer를 이용한 개체 비교 이전 포스팅에서는 object를 바이너리로 변환하여 개체를 비교하거나 object의 ReferenceEquals( ) 함수를 이용한 비교 방법에 대해서 알아보았습니다. 이번 포스팅에서는 순수하게 IComparer를 이용해서 두 개체를 비교하는 방법에 대해서 알아보겠습니다. IComparer Interface는 두 개체를 비교하는 Compare( ) 메서드를 구현해야 합니다. Compare( ) 함수의 리턴 값으로 만약 Compare(a, b)의 리턴 값을 구하고자 한다면 아래의 표와 같이 3가지 결괏값을 반환합니다. Compare(a, b) 리턴값 결 과 사용 예 -1 b가 a 보다 작을 경우 if(a > b) b가 a 보다 작은 조건 return -1 1 b가 a 보다 클 경우 if(a < b) b가 .. 2020. 7. 8. 개체 비교 함수 이번 포스팅에서는 개체를 비교하는 몇 가지 방법에 대해서 알아보겠습니다. 보통 개체 비교를 위해 IComparable 인터페이스를 구현하여 CompareTo( ) 함수를 이용하지만 여기서는 object를 바이너리로 변환하여 비교하는 방법과 object의 ReferenceEquals( ) 함수를 이용한 방법에 대해서 살펴보겠습니다. 먼저 object를 바이너리로 변환하여 비교하는 방법입니다. 함수의 원형은 아래와 같습니다. bool CheckEquals(object source, object target); 매개변수로 두 개의 object를 받아서 내부에서 바이너리로 변환, 비교한 후 결과를 반환하는 함수입니다. 함수의 구현은 아래와 같습니다. bool CheckEquals(object source, ob.. 2020. 7. 7. 관리자 권한으로 프로그램 실행 이번 포스팅에서는 프로그램 실행 시 관리자 권한이 필요한 이유와 그 실행 방법에 대해서 알아보겠습니다. 프로그램 실행시실행 시 '관리자 권한으로 프로그램 실행'을 요구하는 이유는 해당 프로그램이 사용자 컴퓨터 레지스트리 접근이 필요할 경우입니다. 즉 해당 프로그램이 레지스트리 상의 관리자 권한이 필요한 부분에 읽거나 쓰기를 할 경우 반드시 관리자 권한이 필요하기 때문입니다. 이는 프로그램을 개발한 개발자가 해당 프로그램 실행 시 내부적으로 레지스트리 접근 권한이 필요할 경우에 적용됩니다. 레지스트리는 윈도우 시스템의 모든 설정 데이터를 모아 두는 중앙 저장소이기 때문에 잘못 편집하거나 삭제될 경우 치명적인 오류가 발생할 수 있으므로 주의가 필요합니다. 그럼 프로그램 실행시 관리자 권한으로 실행하는 방법에.. 2020. 7. 6. 트랜잭션(Transaction) 정리 이번 포스팅에서는 트랜잭션(Transaction)에 대해서 알아보겠습니다. 트랜잭션은 데이터베이스에서 일어나는 연산의 집합으로 하나의 논리적인 기능을 수행하기 위한 작업의 단위입니다. 데이터베이스의 상태를 하나의 일관된 상태에서 다른 일관된 상태로 변화시키며, 하나의 트랜잭션은 완료(Commit)되거나 실패 시 복귀(Rollback)되어야 합니다. 트랜잭션의 특성에는 원자성(Atomicity), 일관성(Consistency), 독립성(Isolation), 영속성(Durability) 등이 있습니다. 먼저 원자성은 트랜잭션의 가장 중요한 성질로 트랜잭션이 연산의 집단을 의미하지만, 논리적으로 하나라는 의미를 가집니다. 또한 분리해서 처리할 수 없고, 일부 완료라는 것은 존재하지 않으며 연산의 결과가 모두 .. 2020. 7. 3. 이전 1 ··· 8 9 10 11 12 13 14 ··· 27 다음