HOME > 상세정보

상세정보

CLR via C#

CLR via C# (4회 대출)

자료유형
단행본
개인저자
Richter, Jeffrey CLR via C#, 2nd. 송기수 , 역
서명 / 저자사항
CLR via C# / Jeffrey Richter ; 송기수 역.
발행사항
서울 :   정보문화사 ,   2008.  
형태사항
983 p. : 삽도 ; 24 cm.
ISBN
9788956744544
일반주기
색인수록.  
원저자명: CLR via C#, 2nd.  
일반주제명
C# (Computer program language) Common Language Runtime (Computer science) Microsoft .NET Framework. Compiling (Electronic computers).
000 00953camccc200313 k 4500
001 000045496771
005 20100807092823
007 ta
008 081202s2008 ulka 001c kor
020 ▼a 9788956744544 ▼g 13000: ▼c \38,000
035 ▼a (KERIS)BIB000011490473
040 ▼d 244007 ▼a 244007 ▼c 244007 ▼d 211009 ▼d 244002
041 1 ▼a kor ▼h eng
082 0 4 ▼a 005.133 ▼2 22
090 ▼a 005.133 ▼b C110 2008z52
100 1 ▼a Richter, Jeffrey ▼0 AUTH(211009)83184
245 1 0 ▼a CLR via C# / ▼d Jeffrey Richter ; ▼e 송기수 역.
260 ▼a 서울 : ▼b 정보문화사 , ▼c 2008.
300 ▼a 983 p. : ▼b 삽도 ; ▼c 24 cm.
500 ▼a 색인수록.
500 ▼a 원저자명: CLR via C#, 2nd.
650 0 ▼a C# (Computer program language)
650 0 ▼a Common Language Runtime (Computer science)
650 0 ▼a Microsoft .NET Framework.
650 0 ▼a Compiling (Electronic computers).
700 1 ▼a CLR via C#, 2nd.
700 1 ▼a 송기수 , ▼e
945 ▼a KINS

No. 소장처 청구기호 등록번호 도서상태 반납예정일 예약 서비스
No. 1 소장처 중앙도서관/제2자료실(3층)/ 청구기호 005.133 C110 2008z52 등록번호 111525294 (1회 대출) 도서상태 대출가능 반납예정일 예약 서비스 B M
No. 2 소장처 세종학술정보원/과학기술실(5층)/ 청구기호 005.133 C110 2008z52 등록번호 151269405 (3회 대출) 도서상태 대출가능 반납예정일 예약 서비스 B M ?
No. 소장처 청구기호 등록번호 도서상태 반납예정일 예약 서비스
No. 1 소장처 중앙도서관/제2자료실(3층)/ 청구기호 005.133 C110 2008z52 등록번호 111525294 (1회 대출) 도서상태 대출가능 반납예정일 예약 서비스 B M
No. 소장처 청구기호 등록번호 도서상태 반납예정일 예약 서비스
No. 1 소장처 세종학술정보원/과학기술실(5층)/ 청구기호 005.133 C110 2008z52 등록번호 151269405 (3회 대출) 도서상태 대출가능 반납예정일 예약 서비스 B M ?

컨텐츠정보

책소개

공용 언어 런타임(CLR)과 .NET Framework의 여러 복잡한 기능을 상세하게 소개하는 책. 모든 종류의 어플리케이션(Microsoft ASP.NET, Windows Forms, Microsoft SQL Server , 웹 서비스와 콘솔 어플리케이션)을 개발하는 개발자들에게 꼭 필요한 내용들로 채워졌다.

공용 언어 런타임(CLR)과 .NET Framework의 여러 복잡한 기능을 상세하게 파고들어 마스터해보자. 필자는 최고 수준의 프로그램 전문가이자 Microsoft의 .NET 팀을 컨설팅했으며, 이 책에 포함된 가이드 내용은 모든 종류의 어플리케이션(Microsoft ASP.NET, Windows Forms, Microsoft SQL Server , 웹 서비스와 콘솔 어플리케이션)을 개발하는 개발자들에게 꼭 필요한 내용들로 채워져 있다. 독자는 이 책의 단계별 실습 정보와 C# 코드 샘플을 통해서 각 장의 주요 주제를 쉽게 이해할 수 있을 것이며, 고성능의 어플리케이션을 효과적으로 개발할 수 있을 것이다.

이 책에 포함된 내용 :
>> 어플리케이션, 컴포넌트, 공유 어셈블리의 빌드, 배포, 관리, 버전에 대한 내용
>> 상수, 필드, 생성자, 메서드, 속성, 이벤트를 이용한 타입 디자인
>> 열거형, 배열, 문자열과 같은 CLR의 특수 타입을 이용한 효과적인 작업
>> 콜백 함수를 표현하기 위한 델리게이트의 선언, 생성, 사용
>> 인터페이스와 제네릭을 이용한 재사용 알고리즘의 정의 및 사용
>> 사용자 특성의 정의와 적용
>> 예외 처리를 이용한 강력하고, 견고하면서 안전한 컴포넌트의 빌드
>> 가비지 수집기를 이용한 자동 메모리관리 메커니즘과 네이티브 리소스와의 작업
>> CLR 호스팅, AppDomain, 어셈블리 로딩 그리고 리플렉션을 적용하여 동적 확장 가능한 어플리케이션 디자인


정보제공 : Aladin

저자소개

Jeffrey Richter(지은이)

<Programming Applications for Windows>

송기수(옮긴이)

<핵심동의학>

정보제공 : Aladin

목차

목차
시작하면서 = 18
 개발자 플랫폼: .NET Framework = 20
 개발 환경: Microsoft Visual Studio = 25
 이 책의 목표 = 25
 시스템 사양과 샘플 코드 = 26
 이 책은 잘못된 내용이 전혀 없으며 완벽하다 = 26
 감사의 글 = 27
 지원 = 28
Part 1 CLR의 기본 지식
 Chapter 1 공용 언어 런타임(CLR)의 실행 모델
  소스 코드를 관리되는 모듈로 컴파일하기 = 32
  관리되는 모듈을 어셈블리 파일로 결합하기 = 38
  CLR 로딩 = 40
  어셈블리 코드의 실행 = 44
   IL과 코드 검증 = 53
   안전하지 않은 코드 = 54
  네이티브 코드 생성기: NGen.exe = 57
  Framework 클래스 라이브러리 소개 = 61
  공용 타입 시스템(CTS) = 64
  공용 언어 사양(CLS) = 67
  비관리 코드와의 상호연동 = 73
 Chapter 2 빌드, 패키지, 배포 그리고 어플리케이션과 타입 관리
  .NET Framework 배포 = 78
  타입 모듈로 빌드하기 = 80
   응답 파일 = 82
  메타데이터 = 85
  다수의 모듈 어셈블리로 병합하기 = 94
   Visual Studio IDE를 이용해서 프로젝트에 어셈블리 추가하기 = 103
   어셈블리 링커 사용하기 = 105
   어셈블리에 리소스 파일 포함하기 = 107
  어셈블리 버전 리소스 정보 = 108
   버전 번호 = 112
  컬처 = 114
  단순 어셈블리 배포(전용 어셈블리) = 115
  단순 관리 제어(설정) = 118
 Chapter 3 공유 어셈블리와 강력한 이름의 어셈블리
  두 종류의 어셈블리, 두 종류의 배포 = 126
  어셈블리에 강력한 이름 부여하기 = 127
  전역 어셈블리 캐시 = 135
   GAC 내부의 구조 = 141
  강력한 이름의 어셈블리를 참조하는 어셈블리 만들기 = 144
  위ㆍ변조가 쉽지 않은 강력한 이름의 어셈블리 = 146
  어셈블리 서명 지연 = 147
  강력한 이름의 어셈블리를 전용으로 배포하기 = 150
 런타임이 형식 참조를 해결하는 방법 = 152
 고급 관리 컨트롤(구성) = 156
  배포자 정책 컨트롤 = 159
Part 2 타입(Type)
 Chapter 4 타입의 기본
  모든 타입은 System.Object로부터 파생된다 = 168
  타입들 사이의 변환(형 변환) = 171
   C#에서의 타입 변환(형 변환)과 is, as 연산자 = 174
  네임스페이스와 어셈블리 = 176
  런타임에는 어떻게 동작할까? = 182
 Chapter 5 기본 형식, 참조 형식 그리고 값 형식
  프로그램 언어 기본 형식 = 196
   기본 형식 연산에서 Checked/Unchecked 사용하기 = 201
  참조 형식과 값 형식 = 205
  값 형식의 박싱과 언박싱 = 213
  박싱된 값 형식 필드를 인터페이스로 수정하기(그리고 왜 이것을 이용해서는 안 되는지) = 230
  객체의 등질성과 식별자 = 234
  객체 해시 코드 = 238
Part 3 타입 디자인
 Chapter 6 타입과 멤버
  타입(클래스) 멤버의 종류 = 246
  타입의 가시성 = 250
   프렌드(Friend) 어셈블리 = 250
  멤버 접근 제한자 = 253
  정적 클래스 = 256
  Partial 클래스, 구조체 그리고 인터페이스 = 258
  컴포넌트, 다형성 그리고 버전 관리 = 259
   CLR은 가상 함수, 속성, 이벤트를 어떻게 호출하나 = 263
   타입의 가시성과 멤버의 접근성을 효과적으로 사용하기 = 269
   타입의 버전과 관련하여 가상 함수 다루기 = 274
 Chapter 7 상수와 필드
  상수 = 282
  필드 = 284
 Chapter 8 메서드: 생성자, 연산자, 형 변환 그리고 파라미터
  인스턴스 생성자와 클래스(참조 형식) = 290
  인스턴스 생성자와 구조체(값 형식) = 294
  타입 생성자 = 298
   타입 생성자의 성능 = 303
  연산자 오버로드 메서드 = 307
   연산자와 프로그래밍 언어의 연동 = 310
  형 변환 연산자 메서드 = 312
  파라미터 참조형으로 메서드에 전달하기 = 316
  가변의 파라미터를 메서드에 전달하기 = 324
  메서드의 파라미터 타입 선언하기 = 328
  상수 메서드와 파라미터 = 330
 Chapter 9 속성
  인자 없는 속성 = 334
   속성 효과적으로 정의하기 = 339
  인자를 포함한 속성 = 341
  속성 메서드의 호출 성능 = 348
  속성 메서드의 접근성 = 349
  제네릭 속성 메서드 = 350
 Chapter 10 이벤트
  이벤트를 포함하는 타입(클래스) 디자인 = 354
   단계 1: 이벤트 통지를 기다리는 구독자에게 전달될 정보 타입 정의 = 354
   단계 2: 이벤트 멤버 정의 = 355
   단계 3: 이벤트 구독을 등록한 객체에게 이벤트를 발생시켜 알려주도록 하는 메서드 정의 = 357
   단계 4: 특정 입력 정보를 이벤트로 전달시켜 주는 메서드 정의 = 358
  이벤트 구현 방식 = 359
  이벤트를 구독하는 타입(클래스) 디자인하기 = 362
  이벤트와 스레드 안정성 = 365
  명시적 이벤트 등록과 등록 해제 = 367
  다수의 이벤트를 정의하는 타입 디자인 = 370
Part 4 필수적인 타입
 Chapter 11 문자와 문자열, 그리고 텍스트 다루기
  문자 = 376
  System.String 타입 = 380
   문자열의 생성 = 380
   문자열은 고정적이다 = 383
   문자열 비교하기 = 385
   문자열 보관 = 394
   문자열 풀링 = 398
   문자열의 문자와 텍스트 요소를 검사하기 = 399
   기타 문자열 조작 = 402
  동적인 문자열을 생성하는 효과적인 방법 = 403
   StringBuilder 객체의 생성 = 404
   StringBuilder 객체의 멤버들 = 405
  객체를 표현하는 문자열 얻기 = 409
   형식과 언어 설정 지정하기 = 410
   여러 개의 객체를 하나의 문자열로 형식화하기 = 415
   사용자 정의 포맷터 제공하기 = 418
  문자열 파싱하여 객체 얻기 = 422
  인코딩: 문자와 바이트 간의 변환 = 425
   문자와 바이트의 인코딩/디코딩 스트림 = 433
   Base-64 문자열 인코딩과 디코딩 = 435
  보안상 안전한 문자열 = 436
 Chapter 12 열거형 타입과 비트 플래그
  열거형 타입 = 442
  비트 플래그 = 450
 Chapter 13 배열
  배열의 형 변환 = 461
  모든 배열은 묵시적으로 System.Array 타입으로부터 파생된다 = 464
  모든 배열은 묵시적으로 IEnumerable, ICollection, IList 인터페이스를 구현한다 = 465
  배열을 전달하거나 반환 받기 = 467
  인덱스가 0으로 시작하지 않는 배열 만들기 = 469
  배열 접근 시의 성능에 대하여 = 470
  안전하지 않은 배열 접근과 고정 크기 배열 = 477
 Chapter 14 인터페이스
  클래스와 인터페이스 상속 = 482
  인터페이스 정의 = 484
  인터페이스의 상속 = 485
  인터페이스 메서드 호출에 대한 더 자세한 이야기 = 489
  인터페이스 메서드의 묵시적 구현과 명시적 구현(그리고 그 이면에서 일어나는 일들) = 490
  제네릭 인터페이스 = 493
  제네릭과 인터페이스 제약 = 496
  같은 메서드 이름과 시그니처를 갖는 여러 개의 인터페이스 구현하기 = 498
  명시적 인터페이스 메서드 구현으로 시 타입 안정성 향상시키기 = 499
  명시적 인터페이스 메서드 구현에 있어 주의해야 할 점 = 502
  디자인: 기본 클래스 또는 인터페이스? = 506
 Chapter 15 델리게이트
  델리게이트와의 첫 만남 = 510
  델리게이트를 이용하여 정적 메서드 호출하기 = 513
  델리게이트를 이용하여 인스턴스 메서드 호출하기 = 516
  델리게이트에 대한 고찰 = 517
  델리게이트를 이용하여 다중 콜백 메서드 호출하기 = 524
   델리게이트 체인을 위한 C#의 지원 = 530
   델리게이트 체인 호출을 더 세밀히 제어하기 = 530
  C#에서의 델리게이트 구문 = 534
   축약 문법 #1: Delegate 객체를 생성할 필요가 없다 = 535
   축약 문법 #2: 콜백 메서드를 정의할 필요가 없다 = 536
   축약 문법 #3: 콜백 메서드의 매개 변수를 굳이 지정할 필요는 없다 = 539
   축약 문법 #4: 클래스의 로컬 변수를 콜백 메서드에 전달하기 위해 이 변수를 수동으로 래핑할 필요는 없다 = 540
  델리게이트와 리플렉션 = 544
 Chapter 16 제네릭
  Framework 클래스 라이브러리에서 제공되는 제네릭 = 556
  윈텔렉트(Wintellect)의 파워 컬렉션 라이브러리 = 559
  제네릭 인프라 = 560
   개방형과 폐쇄형 형식 = 561
   제네릭 타입과 상속 = 564
   제네릭 타입 식별 = 566
   코드 급증 = 568
  제네릭 인터페이스 = 569
  제네릭 델리게이트 = 570
  제네릭 메서드 = 571
   제네릭 메서드와 타입 추정 = 573
  제네릭과 다른 멤버들 = 575
  검증 가능성과 제약 조건 = 575
   주 제약 조건 = 579
   보조 제약 조건 = 581
   생성자 제약 조건 = 583
   다른 검증 가능성 이슈들 = 584
 Chapter 17 사용자 지정 특성
  사용자 지정 특성 사용하기 = 591
  나만의 사용자 특성 정의하기 = 596
  특성 생성자와 필드/속성 데이터 타입 = 601
  사용자 특성의 사용 여부를 판단하기 = 603
  두 개의 특성 인스턴스 비교하기 = 609
  특성 인스턴스를 생성하지 않고 사용자 특성의 사용 여부를 파악하기 = 613
  조건부 특성 클래스들 = 317
 Chapter 18 Nullable 값 타입
  C#에서의 Nullable 값 타입 지원 = 623
  C#의 Null 할당 연산자들 = 625
  Nullable 값 타입에 대한 CLR의 특별 지원 = 626
   Nullable 값 타입의 박싱 = 626
   Nullable 값 타입의 언박싱 = 627
   Nullable 값 타입의 GetType 메서드 호출 = 628
   Nullable 값 타입의 인터페이스 메서드 호출 = 629
Part 5 CLR 활용
 Chapter 19 예외
  예외 처리의 혁신 = 635
  예외 처리의 구조 = 638
   try 블록 = 639
   catch 블록 = 640
   finally 블록 = 642
  공통 언어 명세와 비공통 언어 명세 예외 = 643
  구체적으로 예외란 뭔가? = 646
  System.Exception 클래스 = 649
  FCL에 정의된 예외 클래스 = 651
  예외 생성하기 = 654
  자신만의 예외 클래스 정의하기 = 655
  예외 올바르게 사용하기 = 660
   메서드 인자의 검증 = 661
   finally 블록 아낌없이 사용하기 = 665
   모든 예외를 처리하지는 말자 = 666
   자연스럽게 예외 복구하기 = 668
   (처리되지 않은 예외 발생으로 인하여) 완료되지 못한 작업으로부터 복구하기 = 669
   "계약"을 유지하기 위해 구체적인 구현 내용 감추기 = 671
  예외 처리 관련 성능 문제 = 675
  처리되지 않은 예외 = 679
  예외 스택 추적 = 682
  예외 디버깅 = 685
 Chapter 20 자동 메모리 관리(가비지 수집)
  가비지 수집 플랫폼에 의한 기본 동작 이해하기 = 690
   관리되는 힙에 리소스 할당하기 = 692
  가비지 수집 알고리즘 = 695
  가비지 수집 디버깅 = 701
  네이티브 리소스를 반환하기 위해서 Finalization 사용하기 = 705
   CriticalFinalizerObject 타입을 이용한 Finalization 실행 보장 = 707
   SafeHandle 타입과 하위 클래스들 = 709
   SafeHandle 타입을 이용한 비 관리 코드의 사용 = 713
  관리되는 리소스 반환을 위해서 Finalization 사용하기 = 716
  무엇이 Finalize 메서드를 호출하도록 하나 = 720
  Finalization의 내부 동작 = 722
  Dispose 패턴: 객체 메모리 반환 강요하기 = 726
  Dispose 패턴이 구현된 객체/타입 사용하기 = 733
  C# 언어의 using 문 = 738
  주의해야 할 종속 사항 = 741
  객체의 수명 직접 모니터링하고 제어하기 = 744
  객체의 부활 = 755
  세대(Generations) = 758
  네이티브 리소스를 위한 가비지 수집의 기능 = 765
  대용량 메모리를 필요로 하는 작업의 성공 여부 가늠해 보기 = 771
  가비지 수집기, 프로그램적으로 제어하기 = 773
  기타 가비지 수집기 성능과 관련된 사항 = 777
   동기화가 필요 없는 메모리 할당 = 779
   확장 가능한 병렬 수집 = 779
   동시 진행형 수집 = 780
   대용량 객체 = 782
  가비지 수집 모니터링 = 783
 Chapter 21 CLR 호스팅과 AppDomain
  CLR 호스팅 = 786
  AppDomain = 791
   AppDomain간 객체 액세스하기 = 795
  AppDomain 언로딩 = 812
  호스트에서 AppDomain 이용하기 = 814
   콘솔 및 Windows Forms 어플리케이션 = 815
   Microsoft 인터넷 익스플로러 = 816
   Microsoft ASP.NET의 Web Forms과 XML 웹서비스 프로그램 어플리케이션 = 816
   Microsoft SQL Server 2005 = 817
   미래 그리고 개발자의 상상 = 818
  고급 호스트 제어 = 818
   관리되는 코드에 의한 CLR 관리 = 818
   강력한 호스트 어플리케이션 구현 = 820
   원래의 스레드로 복귀하는 방법 = 822
 Chapter 22 어셈블리 로딩과 리플렉션
  어셈블리 로딩 = 828
  리플렉션을 이용한 동적 확장 가능한 어플리케이션의 구현 = 834
  리플렉션 성능 = 836
   어셈블리에 정의된 타입 정보 읽기 = 837
   타입 객체는 정확히 무엇인가? = 838
   예외 타입들의 트리 구조를 표현하는 어플리케이션 빌드하기 = 841
   타입의 인스턴스 생성하기 = 844
  Add-In 기능을 지원하는 어플리케이션 디자인 = 847
  리플렉션을 이용해서 타입 멤버 접근하기 = 852
   타입 멤버 확인하기 = 852
   BindingFlags: 반환되는 멤버 종류 필터링하기 = 859
   타입의 인터페이스 정보 구하기 = 860
   타입의 멤버 호출하기 = 863
   한 번 바인드로 여러 번 호출 = 869
   바인딩 핸들을 이용해서 워킹셋 줄이기 = 876
 Chapter 23 비동기 작업 수행
  CLR의 Windows 스레드 사용 = 882
  효과적인 스레드의 사용 = 883
  CLR의 스레드 풀 = 887
  스레드 풀의 최대 스레드 개수 = 889
  스레드 풀을 이용한 비동기 계산 작업 수행하기 = 891
  전용 스레드를 이용한 비동기 계산 작업 수행하기 = 895
  비동기 계산 작업 주기적으로 수행하기 = 898
   세 가지 종류의 Timer = 900
  비동기 프로그램 모델 소개 = 901
  APM을 이용한 비동기 I/O 작업 수행하기 = 903
   APM의 세 가지 랑데부(Rendezvous) 테크닉 = 906
   APM의 작업 완료 대기 랑데부 테크닉 = 907
   APM의 폴링(Polling) 랑데부 테크닉 = 910
  APM의 콜백 랑데부 테크닉 = 913
  APM을 이용한 비동기 계산 작업 수행하기 = 920
  APM과 예외 = 923
  APM에 관한 주의할 사항 = 924
  실행 콘텍스트 = 928
 Chapter 24 스레드 동기화
  메모리 일관성, 휘발성 메모리 액세스 그리고 휘발성 필드들 = 936
   휘발성 읽기와 쓰기 = 939
   휘발성 필드(Volatile Field)에 대한 C#의 지원 = 941
  Interlocked 메서드 = 945
  Monitor 클래스와 동기화 블록 = 946
   "Great" 아이디어 = 947
   "Great" 아이디어의 구현 = 948
   Monitor 클래스를 이용하여 동기화 블록 조작하기 = 950
   Microsoft가 의도한 동기화 방법 = 952
   C#의 lock 문으로 코드 단순화하기 = 953
   Microsoft가 의도한 정적 멤버의 동기화 방법 = 954
   결국 "Great" 아이디어가 그다지 "Great" 하지 않은 이유 = 956
   유명한 DCL 기술 = 960
  ReaderWriterLock 클래스 = 964
  관리 코드에서 Windows 커널 객체 사용하기 = 966
   단일 커널 객체가 신호를 받았을 때의 메서드 호출 = 970
찾아보기 = 974

관련분야 신착자료

Harvard Business Review (2025)