이 상품은 구매 후 지원 기기에서 예스24 eBook앱 설치 후 바로 이용 가능한 상품입니다.
|
[PART 01] C#
▣ 01장 소개 1.1 닷넷 ___1.1.1 닷넷 호환 언어 ___1.1.2 공통 중간 언어(CIL: Common Intermediate Language) ___1.1.3 공용 타입 시스템 ___1.1.4 공용 언어 사양 ___1.1.5 메타데이터 ___1.1.6 어셈블리, 모듈, 매니페스트 ___1.1.7 공용 언어 기반구조 ___1.1.8 공용 언어 런타임(CLR: Common Language Runtime) ___1.1.9 닷넷 ___1.1.10 C#과 닷넷의 관계 1.2 닷넷 프레임워크, 닷넷 코어와 닷넷 표준 1.3 닷넷으로 새롭게 명명 정리 ▣ 02장 개발 환경 준비 2.1 기본 예제 2.2 편집기 + 명령행 컴파일러 사용 2.3 비주얼 스튜디오 개발 환경 2.4 두 가지 유형의 예제 코드 2.5 윈도우 운영체제 이외의 개발 환경 2.6 닷넷 역컴파일러 정리 ▣ 03장 C# 기초 3.1 기본 자료형 ___3.1.1 정수형 기본 타입 ___3.1.2 실수형 기본 타입 ___3.1.3 문자형 기본 타입 ___3.1.4 불린(boolean)형 기본 타입 ___3.1.5 마치며 3.2 형 변환 ___3.2.1 암시적 변환 ___3.2.2 명시적 변환 3.3 기본 문법 요소 ___3.3.1 예약어, 키워드 ___3.3.2 식별자 ___3.3.3 리터럴 ___3.3.4 변수 ___3.3.5 상수 ___3.3.6 연산자, 문장 부호 3.4 배열 ___3.4.1 다차원 배열 ___3.4.2. 가변 배열 3.5 제어문 ___3.5.1 선택문 ___3.5.2 반복문 ___3.5.3 점프문 정리 ▣ 04장 C# 객체지향 문법 4.1 클래스 ___4.1.1 필드 ___4.1.2 메서드 ___4.1.3 생성자 ___4.1.4 종료자 ___4.1.5 정적 멤버, 인스턴스 멤버 ___4.1.6 네임스페이스 4.2 캡슐화 ___4.2.1 접근 제한자 ___4.2.2 정보 은닉 ___4.2.3 프로퍼티 4.3 상속 ___4.3.1 형 변환 ___4.3.2 모든 타입의 조상: System.Object ___4.3.3 모든 배열의 조상: System.Array ___4.3.4 this ___4.3.5 base 4.4 다형성 ___4.4.1 메서드 오버라이드 ___4.4.2 오버로드 4.5 C#의 클래스 확장 ___4.5.1 타입 유형 확장 ___4.5.2 멤버 유형 확장 정리 ▣ 05장 C# 1.0 완성하기 5.1 문법 요소 ___5.1.1 구문 ___5.1.2 연산자 ___5.1.3 예약어 정리 5.2 프로젝트 구성 ___5.2.1 다중 소스코드 파일 ___5.2.2 라이브러리 ___5.2.3 디버그 빌드와 릴리스 빌드 ___5.2.4 플랫폼(x86, x64, ARM32, ARM64, AnyCPU) 선택 5.3 예외 ___5.3.1 예외 타입 ___5.3.2 예외 처리기 ___5.3.3 호출 스택 ___5.3.4 예외 발생 ___5.3.5 사용자 정의 예외 타입 ___5.3.6 올바른 예외 처리 5.4 힙과 스택 ___5.4.1 스택 ___5.4.2 힙 정리 ▣ 06장 BCL(Base Class Library). 6.1 시간 ___6.1.1 System.DateTime ___6.1.2 System.TimeSpan ___6.1.3 System.Diagnostics.Stopwatch 6.2 문자열 처리 ___6.2.1 System.String ___6.2.2 System.Text.StringBuilder ___6.2.3 System.Text.Encoding ___6.2.4 System.Text.RegularExpressions.Regex 6.3 직렬화/역직렬화 ___6.3.1 System.BitConverter ___6.3.2 System.IO.MemoryStream ___6.3.3 System.IO.StreamWriter / System.IO.StreamReader ___6.3.4 System.IO.BinaryWriter / System.IO.BinaryReader ___6.3.5 System.Xml.Serialization.XmlSerializer ___6.3.6 System.Text.Json.JsonSerializer 6.4 컬렉션 ___6.4.1 System.Collections.ArrayList ___6.4.2 System.Collections.Hashtable ___6.4.3 System.Collections.SortedList ___6.4.4 System.Collections.Stack ___6.4.5 System.Collections.Queue 6.5 파일 ___6.5.1 System.IO.FileStream ___6.5.2 System.IO.File / System.IO.FileInfo ___6.5.3 System.IO.Directory/System.IO.DirectoryInfo ___6.5.4 System.IO.Path 6.6 스레딩 ___6.6.1 System.Threading.Thread ___6.6.2 System.Threading.Monitor ___6.6.3 System.Threading.Interlocked ___6.6.4 System.Threading.ThreadPool ___6.6.5 System.Threading.EventWaitHandle ___6.6.6 비동기 호출 ___6.6.7 System.Delegate의 비동기 호출 6.7 네트워크 통신 ___6.7.1 System.Net.IPAddress ___6.7.2 포트 ___6.7.3 System.Net.IPEndPoint ___6.7.4 System.Net.Dns ___6.7.5 System.Net.Sockets.Socket ___6.7.6 System.Net.Http.HttpClient 6.8 데이터베이스 ___6.8.1 마이크로소프트 SQL 서버 ___6.8.2 ADO.NET 데이터 제공자 ___6.8.3 데이터 컨테이너 ___6.8.4 데이터베이스 트랜잭션 6.9 리플렉션 ___6.9.1 AppDomain과 Assembly ___6.9.2 Type과 리플렉션 ___6.9.3 리플렉션을 이용한 확장 모듈 구현 6.10 기타 ___6.10.1 윈도우 레지스트리 ___6.10.2 BigInteger ___6.10.3 IntPtr [PART 02] C# 고급 문법 ▣ 07장 C# 2.0 7.1 제네릭 ___7.1.1 형식 매개변수에 대한 제약 조건 ___7.1.2 BCL에 적용된 제네릭 7.2 ?? 연산자(null 병합 연산자) 7.3 default 예약어 7.4 yield return/break 7.5 부분(partial) 클래스 7.6 nullable 형식 7.7 익명 메서드 7.8 정적 클래스 ▣ 08장 C# 3.0 8.1 var 예약어 8.2 자동 구현 속성 8.3 개체 초기화(Object initializers) 8.4 컬렉션 초기화 8.5 익명 타입 8.6 부분 메서드 8.7 확장 메서드 8.8 람다 식 ___8.8.1 코드로서의 람다 식 ___8.8.2 데이터로서의 람다 식 8.9 LINQ ___8.9.1 where, orderby, group by, join ___8.9.2 표준 쿼리 연산자 ___8.9.3 일관된 데이터 조회 ▣ 09장 C# 4.0 9.1 선택적 매개변수와 명명된 인수 9.2 dynamic 예약어 ___9.2.1 리플렉션 개선 ___9.2.2 덕 타이핑 ___9.2.3 동적 언어와의 타입 연동 9.3 동시성 컬렉션(Concurrent Collections) ▣ 10장 C# 5.0 10.1 호출자 정보 10.2 비동기 호출 ___10.2.1 닷넷 BCL에 추가된 Async 메서드 ___10.2.2 Task, Task 타입 ___10.2.3 async 예약어가 적용된 메서드의 반환 타입 ___10.2.4 Async 메서드가 아닌 경우의 비동기 처리 ___10.2.5 비동기 호출의 병렬 처리 ▣ 11장 C# 6.0 11.1 자동 구현 속성의 초기화 구문 추가 11.2 표현식을 이용한 메서드, 속성 및 인덱서 정의 11.3 using static 구문을 이용한 타입명 생략 11.4 null 조건 연산자 11.5 문자열 내에 식(expression)을 포함 11.6 nameof 연산자 11.7 Dictionary 타입의 인덱스 초기화 11.8 예외 필터 11.9 컬렉션 초기화 구문에 확장 메서드로 정의한 Add 지원 11.10 기타 개선 사항 ▣ 12장 C# 7.0 12.1 더욱 편리해진 out 매개변수 사용 12.2 반환값 및 로컬 변수에 ref 기능 추가(ref returns and locals) 12.3 튜플 12.4 Deconstruct 메서드 12.5 람다 식을 이용한 메서드 정의 확대(Expression-bodied members) 12.6 로컬 함수(Local functions) 12.7 사용자 정의 Task 타입을 async 메서드의 반환 타입으로 사용 가능 12.8 자유로워진 throw 사용 12.9 리터럴에 대한 표현 방법 개선 12.10 패턴 매칭 ___12.10.1 is 연산자의 패턴 매칭 ___12.10.2 switch/case 문의 패턴 매칭 ▣ 13장 C# 7.1 13.1 Main 메서드에 async 예약어 허용 13.2 default 리터럴 추가 13.3 타입 추론을 통한 튜플의 변수명 자동 지정 13.4 기타 개선 사항 ▣ 14장 C# 7.2 14.1 메서드의 매개변수에 in 변경자 추가 14.2 읽기 전용(readonly) 구조체 14.3 메서드의 반환 값 및 로컬 변수에 ref readonly 추가 14.4 스택에만 생성할 수 있는 값 타입 지원 ? ref struct 14.5 신규 추가 타입: Span 14.6 3항 연산자에 ref 지원 14.7 private protected 접근자 추가 14.8 숫자 리터럴의 선행 밑줄 14.9 뒤에 오지 않는 명명된 인수 ▣ 15장 C# 7.3 15.1 신규 제네릭 제약 조건 ? Delegate, Enum, unmanaged 15.2 사용자 정의 타입에 fixed 적용 가능 15.3 힙에 할당된 고정 크기 배열의 인덱싱 개선 15.4 초기화 식에서 변수 사용 가능 15.5 자동 구현 속성의 특성 지원 15.6 튜플의 ==, != 연산자 지원 15.7 ref 지역 변수의 재할당 가능 15.8 stackalloc 배열의 초기화 구문 지원 ▣ 16장 C# 8.0 16.1 #nullable 지시자와 nullable 참조 형식 ___16.1.1 null일 수 없음을 보장 ___16.1.2 null일 수 있다면 해당 인스턴스를 null 가능한 타입이라고 명시 ___16.1.3 널 가능(Nullable) 문맥 제어 16.2 비동기 스트림 16.3 새로운 연산자 ? 인덱스, 범위 16.4 간결해진 using 선언 16.5 Dispose 호출이 가능한 ref struct 16.6 정적 로컬 함수 16.7 패턴 매칭 개선 ___16.7.1 switch 식 16.7.2 속성 패턴 ___16.7.3 튜플 패턴 ___16.7.4 위치 패턴 ___16.7.5 재귀 패턴 16.8 기본 인터페이스 메서드 16.9 ??= (널 병합 할당 연산자) 16.10 문자열 @, $ 접두사 혼합 지원 16.11 기본 식(primary expression)으로 바뀐 stackalloc 16.12 제네릭 구조체의 unmanaged 지원 16.13 구조체의 읽기 전용 메서드 ▣ 17장 C# 9.0 17.1 레코드(Records) ___17.1.1 init 설정자 추가 ___17.1.2 with 초기화 구문 추가 17.2 대상에 따라 new 식 추론(Target-typed new expressions) 17.3 달라진 조건식 평가 17.4 로컬 함수에 특성 지정 가능(Attributes on local functions) 17.5 익명 함수 개선 ___17.5.1 정적 익명 함수(static anonymous functions) ___17.5.2 익명 함수의 매개변수 무시 17.6 최상위 문(Top-level statements) 17.7 패턴 매칭 개선(Pattern matching enhancements) 17.8 모듈 이니셜라이저(Module initializers) 17.9 공변 반환 형식(Covariant return types) 17.10 foreach 루프에 대한 GetEnumerator 확장 메서드지원(Extension GetEnumerator) 17.11 부분 메서드에 대한 새로운 기능(New features for partial methods) 17.12 localsinit 플래그 내보내기 무시(Suppress emitting localsinit flag) 17.13 원시 크기 정수(Native ints) 17.14 함수 포인터(Function pointers) ___17.14.1 비관리 함수 포인터 지원 ___17.14.2 비관리 함수를 통한 콜백 지원 17.15 제약 조건이 없는 형식 매개변수 주석(Unconstrained type parameter annotations) ▣ 18장 C# 10 18.1 레코드 개선 ___18.1.1 레코드 구조체(Record structs) ___18.1.2 class 타입의 record에 ToString 메서드의 sealed 지원 18.2 구조체 개선 ___18.2.1 매개변수가 없는 구조체 생성자 (Parameterless struct constructors) ___18.2.2 필드 초기화 지원 18.3 네임스페이스 개선 ___18.3.1 전역 using 지시문(Global Using Directive) ___18.3.2 파일 범위 네임스페이스(File Scoped Namespaces) 18.4 보간된 상수 문자열(Constant Interpolated Strings) 18.5 확장 속성 패턴(Extended property patterns) 18.6 람다 기능 향상(Lambda improvements) ___18.6.1 특성 허용 ___18.6.2 반환 타입 지정 ___18.6.3 람다 식의 var 추론 18.7 호줄자 인수 식(CallerArgumentExpression) 18.8 기타 개선 사항 ___18.8.1 보간된 문자열 개선(Improved Interpolated Strings) ___18.8.2 분해 구문에서 기존 변수의 재사용 가능(Mix Declarations and Variables in Deconstruction) ___18.8.3 Source Generator V2 API ___18.8.4 향상된 #line 지시문(Enhanced #line directives) ▣ 19장 C# 11 19.1 인터페이스 내에 정적 추상 메서드 정의 가능 19.2 제네릭 타입의 특성 적용 19.3 사용자 정의 checked 연산자 19.4 shift 연산자 개선 ___19.4.1 shift 연산자 재정의에 대한 제약 완화 ___19.4.2 새로운 연산자 ">>>" (부호 없는 오른쪽 시프트 연산자) 19.5 IntPtr/UIntPtr과 nint/unint의 통합 19.6 문자열 개선 ___19.6.1 원시 문자열 리터럴 ___19.6.2 문자열 보간 개선 ___19.6.3 UTF-8 문자열 리터럴 지원 19.7 목록 및 ReadOnlySpan 패턴 매칭 19.8 ref struct 내에 ref 필드 지원 ___19.8.1 새로운 예약어: scoped 19.9 파일 범위 내에서 유효한 타입 정의 19.10 메서드 매개 변수에 대한 nameof 지원 확장 19.11 속성 및 필드에 지정할 수 있는 required 예약어 추가 19.12 구조체 필드의 기본값 자동 초기화(auto-default structs) 19.13 정적 메서드에 대한 delegate처리 시 캐시(cahce) 적용 ▣ 20장 C# 12 20.1 기본 람다 매개 변수 20.2 기본 생성자 20.3 모든 형식의 별칭 20.4 인라인 배열 20.5 컬렉션 식과 스프레드 연산자 20.6 ref readonly 매개 변수 20.7 Interceptor(컴파일 시점에 메서드 호출 재작성) 20.8 Experimental 특성 지원 그리고 C# 13… [PART 03] 닷넷 응용 프로그램 http://www.sysnet.pe.kr/2/0/12021 및 출판사의 공식 홈페이지를 통해 내용이 모두 공개돼 있으니 참고하자. ▣ 부록 http://www.sysnet.pe.kr/2/0/13101 및 출판사의 공식 홈페이지를 통해 내용이 모두 공개돼 있으니 참고하자. |
정성태의 다른 상품
|
이 책을 덮으면서 이제 한 가지를 결정해야 한다.* 더 공부할 것인가? * 아니면 뭔가를 만들어 볼 것인가? 더 공부하면 그만큼 알게 되어 나중에 만들고 싶은 프로그램이 있을 때 시행착오를 덜 겪으면서 편하게 작업할 수 있다. 반면 뭔가를 만들게 된다면 부족한 지식으로 인해 초기에 어려움을 겪겠지만 만들어질 프로그램에 필요한 사항을 빠르게 습득한다는 점과 자신만의 프로그램을 완성해 봄으로써 얻어지는 독특한 경험이 남는다.프로그래밍은 만드는 재미도 있고, 공부하는 재미도 있다. 결정을 내렸으면 이제부터 그냥 재미에 푹 빠져들면 된다.[소스코드 다운로드 & 홈페이지]이 책에서 설명한 소스코드를 내려받거나 읽으면서 문의사항이 생기면 아래 사이트를 방문해서 해결할 수 있다.▣ https://www.sysnet.pe.kr/이번 개정판에서는 C# 12에서 개선된 다양한 언어적 특성을 다룬다.◎ 레코드/구조체/네임스페이스 개선◎ 보간된 상수 문자열◎ 확장 속성 패턴◎ 람다 기능 향상◎ 호출자 인수 식
|