델리게이트와 이벤트(Delegates and Events)

델리게이트와 이벤트(Delegates and Events)

델리게이트(Delegate) 오늘은 델리게이트(Delegate)에 대해서 알아보려고 합니다. 델리게이트는 한마디로 말해서 대리자라고 말할 수 있습니다. 즉, 대신 일을 해주는 녀석이라고 할 수 있겠죠? 다른 말로 해서는 메소드 참조를 포함하고 있는 영역이라고 말할 수 있습니다. 아래는 델리게이트의 선언 형식입니다. 위의 선언 형식을 보아하니, 델리게이트가 메소드같이 생겼죠? 델리게이트는 위에서 말한 대로, 메소드의 참조를 포함합니다. ‘메소드를 참조한다니, 그럼 메소드를 매개변수로 … 더 읽기

컬렉션(Collection)

컬렉션(Collection)

컬렉션(Collection) 우리가 이번 강좌에서 배우게될 ‘컬렉션(Collection)’이 뭐하는 녀석인지 간단히 알아봅시다. 컬렉션은 데이터의 검색과 저장을 위해 특화된 것이라고 말할 수 있습니다. 자료구조(Data Structure) 라고도 말할 수 있습니다. 컬렉션에서는 배열 리스트(Array List), 해시 테이블(Hash table), 큐(Queue), 스택(Stack) 등을 지원합니다. 하나하나 다 설명 배열 리스트(ArrayList) 배열 리스트란 배열과 가장 비슷하면서도 크기가 유연(동적)합니다. 배열 리스트에는 Add, BinarySearch, Clear, Contain, Insert, … 더 읽기

예외 처리(Exception handling)

예외 처리(Exception handling)

예외 처리(Exception handling) 지금까지 강좌를 진행하면서, 그 예제를 응용하여 프로그램을 만드시면서 예외가 발생하신 적이 있나요? 여기서 예외란, 프로그램을 실행하다 도중에 예기치 않은 일이 벌어져 프로그램이 종료되는 것을 말합니다. 예를 들면 어떠한 수를 0으로 나눈다던가, 음수의 제곱근을 구하는 경우라던가, 어떤 인수의 값이 텅텅 비어있던가 등 논리적으로 어긋난 상황에 마주치면 프로그램은 어김없이 예외를 내보내고 프로그램이 종료되어버릴 것입니다. … 더 읽기

인터페이스(Interface)

인터페이스(Interface)

인터페이스(Interface) 이번 강좌에서는 ‘인터페이스(Interface)’에 대해 알아보려고 합니다. 인터페이스라고 하니, 어디서 많이 들어보신것 같죠? 사전적 의미로는 ‘사용자인 인간과 컴퓨터를 연결하여 주는 장치. 키보드나 디스플레이 따위를 이른다.’, ‘서로 다른 두 시스템, 장치, 소프트웨어 따위를 서로 이어 주는 부분. 또는 그런 접속 장치.’라는 의미를 담고 있습니다.  예를 들어, 키보드나 모니터 등을 사용하기 위해서 USB 포트에 연결시키면 컴퓨터가 이를 … 더 읽기

구조체(Structures)

구조체(Structures)

구조체(Structures) C/C++에서 등장했던 구조체가 C#에서 다시한번 등장합니다. 구조체는, 클래스와 상당히 비슷한 구조를 지니고 있습니다. 하지만 무시할 수 없는 큰 차이점이 존재하는데, 클래스는 힙에 생성되는 참조 타입(Reference Type)이고, 구조체는 스택에 생성되는 값 타입(Value Type)이라는 것이죠. 구조체는 클래스보다 메모리 소모가 덜하므로 어떤 개발자들은 구조체를 더 선호하기도 합니다. 아래는 구조체의 선언 형식입니다. 위의 예제를 보시면, 클래스처럼 멤버 변수를 가질수도 있고, … 더 읽기