[C#] xUnit으로 코드 테스트 해보기
이번 글에서는 xUnit에 대해 알아보겠습니다. 개발을 하다 보면 개발한 클래스나 함수에 대해 테스트가 필요할 때가 있습니다. 수동으로 값을 대입하거나, 화면상으로 눌러가며 테스트도 하지만 코드가 방대해지면 자동화된 단위 테스트는 필수가 됩니다. …
C# 기본
이번 글에서는 xUnit에 대해 알아보겠습니다. 개발을 하다 보면 개발한 클래스나 함수에 대해 테스트가 필요할 때가 있습니다. 수동으로 값을 대입하거나, 화면상으로 눌러가며 테스트도 하지만 코드가 방대해지면 자동화된 단위 테스트는 필수가 됩니다. …
이번 글에서는 Named Pipe에 대해 알아보겠습니다. Named Pipe는 로컬 PC에서 서로 다른 프로그램끼리 데이터를 주고받는 IPC(Inter-Process Communication) 기술 중 하나 입니다. 프로그램 끼리 파이프에 이름을 붙여 통신을 한다고 보시면 됩니다. …
이번 글에서는 C#을 이용하여 dll을 만들고 WPF 프로그램에서 사용해보도록 하겠습니다. dll이 무엇인지는 쉽게 나오니 바로 만들어 보도록 하겠습니다. C#을 사용하여 dll을 만들 땐 클래스 라이브러리 프로젝트를 선택하면 됩니다. 라이브러리 이름은 …
이번 글에서는 lock에 대해 알아보겠습니다. lock은 공유 리소스에 대한 단독 액세스를 보장하는 문입니다. 아래와 같이 공유된 리소스에 두 개의 쓰레드가 동시에 접근한다고 가정해봅시다. 당연히 현재 값에서 1을 증가 시켰으니 temp …
C#의 checked와 unchecked 문은 오버플로우 검사 여부를 제어하는 키워드입니다. 정수 계산에서 값이 자료형의 범위를 벗어날 때 예외를 던질지, 그냥 넘어갈 지를 결정합니다. 정수 계산에서 오버플로우가 발생하면 System.OverflowException이 throw됩니다. 기본 명령문은 …
WPF 개발을 하다 보면 창에 표현되는 내부 UI가 창의 크기를 넘어가는 화면을 만들 때가 있습니다. 이럴 때 내부의 UI 크기는 그대로 두면서 스크롤이 필요해지는 상황이 생기는데 그 때 ScrollViewer를 사용하면 …
이번 글에서는 간단하게 변환기 IValueConverter에 대해 알아보겠습니다. 데이터 바인딩을 사용하면 객체 유형을 변환하는 작업을 수행하게 됩니다.데이터 바인딩 글을 보시면 string으로 입력한 색상이 Background에도 적용하는 것을 볼 수 있습니다. 이는 WPF의 …
개요 이번 글에서는 데이터 관리를 위한 클래스 DataRow, DataTable, DataSet에 대해 알아보겠습니다. DataRow, DataTable, DataSet은 System.Data 네임스페이스에서 제공하는 클래스이며 데이터 관리를 위한 핵심적인 클래스입니다. 이 클래스들은 주로 데이터를 다룰 때 …
개요 이번 글에서는 C#에서 Dictionary에 대해 알아보겠습니다. Dictionary<TKey, TValue>는 키(Key)-값(Value) 데이터를 저장하고 관리하는데 가장 효율적인 제네릭 컬렉션 클래스입니다. 키 값은 고유하며, 키를 통해 값을 효율적으로 얻을 수 있습니다. 내부적으로 해시 …
개요 이번 글에서는 C#에서 사용되는 스택, Stack<T>에 대해 알아보겠습니다. Stack<T> 또한 C#의 제네릭 컬렉션 클래스로 LIFO(Last In, First Out) 방식으로 데이터를 관리하는 자료 구조 입니다. 다른 자료 구조와 마찬가지로 T에는 …