본문 바로가기

C#/이것이 C#이다

(20)
[ 이것이 C#이다 ] Chapter 22. 가비지 컬렉션 [ 학습 흐름 ]가비지 컬렉터<li style="list-style-typ..
[ 이것이 C#이다 ] Chapter 20. WinForm으로 만드는 사용자 인터페이스 C# 코드로 WinForm 윈도우 만들기 Application 클래스 윈도우를 표현하는 Form 클래스 폼 디자이너를 이용한 WinForm UI 구성 사용자 인터페이스와 비동기 작업 [ C#코드로 WinForm 윈도우 만들기 ] [ 개요 ] - WinForm에서 제공하는 폼 디자이너 툴은 프로그래머가 그림을 그리듯 사용자 인터페이스를 만들게 한다 . - 위즈윅 ( What You See Is What You Get )방식의 개발을 지원한다 . - 비주얼 스튜디오의 도움 없이 C# 코드만으로 GUI를 구성할 수도 있다 . [ WinForm 클래스를 이용한 윈도우 생성 절차 ] System.Windows.Forms.Form 클래스에서 파생된 윈도우 폼 클래스를 선언한다 . 클래스의 인스턴스를 System.W..
[ 이것이 C#이다 ] Chapter 19. 스레드와 태스크 [ 학습 흐름 ] 프로세스와 스레드 스레드 시작하기 스레드 임의로 종료시키기 스레드 일생과 상태 변화 인터럽트 System.Threading.Tasks.Task 클래스 Task클래스 Parallel 클래스 async 한정자와 await 연산자로 만드는 비동기 코드 [ 프로세스와 스레드 ] [ 프로세스 ] - 프로세스란 실행파일이 실행되어 메모리에 적재된 인스턴스 - 즉 , 실행파일에 담겨있는 데이터와 코드가 메모리에 적재되어 동작하는 것이 프로세스 - 프로세스는 하나 이상의 스레드로 구성된다 . - 스레드는 운영체제가 CPU 시간을 할당하는 기본 단위 [ 멀티 스레드의 장점 ] 응답성을 높일 수 있다 . ex ) 파일 복사 - 사용자 대화 두개의 스레드가 있다면 파일복사를 하는 동안 사용자 대화가 가능하..
[ 이것이 C#이다 ] Chapter 18. 파일 다루기 [ 학습 흐름 ] 파일 정보와 디렉토리 정보 다루기 파일을 읽고 쓰기 위해 알아야 할 것들 이진 데이터 처리를 위한 Binary Writer / Binary Reader 텍스트 파일 처리를 위한 Stream Writer / Stream Reader 객체 직렬화하기 [ 파일 정보와 디렉토리 정보 다루기 ] [ 파일과 디렉토리 ] - 파일은 컴퓨터 저장 매체에 기록되는 데이터의 묶음 . - 디렉토리는 파일이 위치하는 주소로 파일을 담는다는 의미에서 폴더라고도 부른다 . - .Net은 파일과 디렉토리 정보를 손쉽게 다룰 수 있도록 System.IO 네임스페이스에 다음 클래스를 제공한다 . [ 파일 관련 클래스 ] 클래스 설명 File 파일의 생성,복사,삭제,이동,조회를 처리하는 정적 메소드를 제공 . File..
[ 이것이 C#이다 ] Chapter 16 . 리플렉션과 애트리뷰트 [ 학습 흐름 ] 리플렉션 Object.GetType()메소드와 Type클래스 리플렉션을 이용하여 객체를 생성하는 방법을 이해한다 . 애트리뷰트가 무엇인지 이해한다 . 애트리뷰트를 작성하고 사용하는 방법을 익힌다 . [ 리플렉션 ] [ 리플렉션 ] - 객체를 X_RAY사진처럼 객체의 형식정보를 들여다보는 기능 . - 프로그램 실행중 객체의 형식이름/프로퍼티 목록/메소드 목록/필드/이벤트 목록까지 열어 볼 수 있다 . - 형식의 이름만 있다면 동적으로 인스턴스를 만들 수 있고 , 인스턴스의 메소드를 호출 가능하다 . - 새로운 데이터 형식을 동적으로 만들 수 있다 . - 런타임중 형식정보를 다룰 수 있는 리플렉션은 강력한 표현력을 선사한다 . [ Object.GetType()메소드와 Type 클래스 ] -..
[ 이것이 C#이다 ] Chapter 15 . LINQ [ 학습 흐름 ] LINQ의 기본 from where order By select 여러개의 데이터 원본에 질의하기 group by로 데이터 분류하기 내부 조인 외부 조인 LINQ의 비밀과 LINQ 표준 연산자 [ 데이터! ] [ LINQ ] - LINQ는 Language INtegrated Query (통합 언어 퀴리)로 C#의 통합된 데이터 질의 기능을 말한다 . - 데이터 질의는 데이터에 대해 물어본다는 말 . 기본적으로 질의는 다음 내용을 포함한다 . - From : 어떤 데이터 집합에서 찾을 것인가? - Where : 어떤 값의 데이터를 찾을 것인가? - Select : 어떤 항목을 추출할 것인가? [ 예시 ] class Profile { public string Name{get;set;} pub..
[ 이것이 C#이다 ] Chapter 14 . 람다식 [ 학습 흐름 ] 람다식 문 형식의 람다식 Func와 Action으로 더 간편하게 무명함수 만들기 Func 대리자 Action 대리자 식으로 이루어지는 멤버 [ 람다식의 기원 ] [ 람다식 ] - 람다식은 알론조 처지의 람다 계산법에서 사용하는 식이다 . - 함수의 정의 / 변수 / 함수의 적용으로 이루어져 있는데 모든 것이 함수로 이루어져 있다 . - 람다 계산법에서는 모든 것이 함수로 이루어져 있다 . [ 람다식 ] [ 람다식 ] - 람다식은 익명 메소드를 만들기 위해 사용한다 . - 람다식으로 만드는 익명 메소드는 무명 함수라는 이름으로 부른다 . delegate int Calculate(int a,int b); //익명 메소드를 만들기 위한 대리자 static void Main(string[]ar..
[ 이것이 C#이다 ] Chapter 13 . 대리자와 이벤트 [ 학습 흐름 ] 대리자 일반화 대리자 대리자 체인 익명 메소드 대리자와 이벤트 [ 대리자란 ] [ 콜백 ] - 어떤 일을 수행하는 코드 . - 콜백은 다른 코드에 맡겨져 실행된다 . - 콜백을 맡아줄 코드는 컴파일 시점이 아닌 프로그램 실행중 결정된다 . [ 대리자 ] - 콜백을 맡아 실행하는 일을 대리자가 담당한다 . - 대리자는 메소드에 대한 참조이다 . - 대리자에 메소드의 주소를 할당 , 대리자를 호출하면 대리자가 해당 메소드를 호출한다 . 한정자 delegate 반환형식 대리자이름 (매개변수 목록); - 대리자는 메소드에 대한 참조이기에 자신이 참조할 메소드의 반환형식과 매개변수를 명시해야 한다 . - 대리자는 인스턴스가 아닌 형식이다 . [ 콜백 구현 하기 ] private delegate ..