서브메뉴
검색
본문
Powered by NAVER OpenAPI
-
이것이 C# 이다 (입문자에게 가장 탄탄한 기본기를 다져줄 C# 입문서)
저자 : 박상현
출판사 : 한빛미디어
출판년 : 2021
ISBN : 9791162243770
책소개
처음부터 끝까지 입문자를 배려한 C# 입문서
『뇌를 자극하는 C# 4.0』을 시작으로 2011년부터 꾸준히 개정하며 독자의 신뢰를 쌓아온 『이것이 C#이다』이 C# 9.0 버전에 맞춰 코드와 내용을 개정해 돌아왔다. C#과 닷넷 세계에 처음 입문하는 독자를 대상으로 집필한 이 책은 강의를 듣는 듯 편한 구어체로 프로그램의 역사와 기초 문법부터 가비지 컬렉션까지 C#의 방대한 내용을 집대성했다.
친절한 설명, 직관적인 예제, 직강 동영상, 여기에 저자가 직접 질문에 답해주는 커뮤니티까지 올인원으로 구성된 이 책을 발판 삼아 C# 입문자에서 전문가로 성장해보자.
목차
__목차
__지은이 글
__일러두기
__학습 로드맵
chapter 1 프로그래밍을 시작합시다
__1.1 프로그래밍 언어의 역사
__1.2 C#의 기본 파일과 환경 설정
chapter 2 처음 만드는 C# 프로그램
__2.1 Hello, World!
__2.2 첫 번째 프로그램 뜯어보기
__2.3 CLR에 대하여
chapter 3 데이터 보관하기
__3.1 다양한 데이터의 종류
__3.2 변수
__3.3 값 형식과 참조 형식
__3.3.2 힙과 참조 형식
__3.4 기본 데이터 형식
__3.5 상수와 열거 형식
__3.6 Nullable 형식
__3.7 var: 데이터 형식을 알아서 파악하는 똑똑한 C# 컴파일러
__3.8 공용 형식 시스템
__3.9 문자열 다루기
chapter 4 데이터를 가공하는 연산자
__4.1 C#에서 제공하는 연산자 둘러보기
__4.2 산술 연산자
__4.3 증가 연산자와 감소 연산자
__4.4 문자열 결합 연산자
__4.5 관계 연산자
__4.6 논리 연산자
__4.7 조건 연산자
__4.8 null 조건부 연산자
__4.9 비트 연산자
__4.10 할당 연산자
__4.11 null 병합 연산자
__4.12 연산자의 우선순위
chapter 5 코드의 흐름 제어하기
__5.1 분기문
__5.2 반복문
__5.3 점프문
chapter 6 메소드로 코드 간추리기
__6.1 메소드란?
__6.2 return에 대하여
__6.3 매개변수에 대하여
__6.4 참조에 의한 매개변수 전달
__6.5 메소드의 결과를 참조로 반환하기
__6.6 출력 전용 매개변수
__6.7 메소드 오버로딩
__6.8 가변 개수의 인수
__6.9 명명된 인수
__6.10 선택적 인수
__6.11 로컬 함수
chapter 7 클래스
__7.1 객체지향 프로그래밍과 클래스
__7.2 클래스의 선언과 객체의 생성
__7.3 객체의 삶과 죽음에 대하여: 생성자와 종료자
__7.4 정적 필드와 메소드
__7.5 객체 복사하기: 얕은 복사와 깊은 복사
__7.6 this 키워드
__7.7 접근 한정자로 공개 수준 결정하기
__7.8 상속으로 코드 재활용하기
__7.9 기반 클래스와 파생 클래스 사이의 형식 변환, 그리고 is와 as
__7.10 오버라이딩과 다형성
__7.11 메소드 숨기기
__7.12 오버라이딩 봉인하기
__7.13 읽기 전용 필드
__7.14 중첩 클래스
__7.15 분할 클래스
__7.16 확장 메소드
__7.17 구조체
__7.18 튜플
chapter 8 인터페이스와 추상 클래스
__8.1 인터페이스의 선언
__8.2 인터페이스는 약속이다
__8.3 인터페이스를 상속하는 인터페이스
__8.4 여러 개의 인터페이스, 한꺼번에 상속하기
__8.5 인터페이스의 기본 구현 메소드
__8.6 추상 클래스: 인터페이스와 클래스 사이
chapter 9 프로퍼티
__9.1 public 필드의 유혹
__9.2 메소드보다 프로퍼티
__9.3 자동 구현 프로퍼티
__9.4 프로퍼티와 생성자
__9.5 초기화 전용(Init-Only) 자동 구현 프로퍼티
__9.6 레코드 형식로 만드는 불변 객체
__9.7 무명 형식
__9.8 인터페이스의 프로퍼티
__9.9 추상 클래스와 프로퍼티
chapter 10 배열과 컬렉션 그리고 인덱서
__10.1 All for one, one for all
__10.2 배열을 초기화하는 방법 세 가지
__10.3 알아두면 삶이 윤택해지는 System.Array
__10.4 배열 분할하기
__10.5 2차원 배열
__10.6 다차원 배열
__10.7 가변 배열
__10.8 컬렉션 맛보기
__10.9 컬렉션을 초기화하는 방법
__10.10 인덱서
__10.11 foreach가 가능한 객체 만들기
chapter 11 일반화 프로그래밍
__11.1 일반화 프로그래밍이란?
__11.2 일반화 메소드
__11.3 일반화 클래스
__11.4 형식 매개변수 제약시키기
__11.5 일반화 컬렉션
__11.6 foreach를 사용할 수 있는 일반화 클래스
chapter 12 예외 처리하기
__12.1 예외에 대하여
__12.2 try~catch로 예외 받기
__12.3 System.Exception 클래스
__12.4 예외 던지기
__12.5 try~catch와 finally
__12.6 사용자 정의 예외 클래스 만들기
__12.7 예외 필터하기
__12.8 예외 처리 다시 생각해보기
chapter 13 대리자와 이벤트
__13.1 대리자란?
__13.2 대리자는 왜, 그리고 언제 사용하나요?
__13.3 일반화 대리자
__13.4 대리자 체인
__13.5 익명 메소드
__13.6 이벤트: 객체에 일어난 사건 알리기
__13.7 대리자와 이벤트
chapter 14 람다식
__14.1 람다식, 너는 어디에서 왔니?
__14.2 처음 만나는 람다식
__14.3 문 형식의 람다식
__14.4 Func와 Action으로 더 간편하게 무명 함수 만들기
__14.5 식 트리
__14.6 식으로 이루어지는 멤버
chapter 15 LINQ
__15.1 데이터! 데이터! 데이터!
__15.2 LINQ의 기본: from, where, orderby, select
__15.3 여러 개의 데이터 원본에 질의하기
__15.4 group by로 데이터 분류하기
__15.5 두 데이터 원본을 연결하는 join
__15.6 LINQ의 비밀과 LINQ 표준 연산자
chapter 16 리플렉션과 애트리뷰트
__16.1 리플렉션
__16.1.3 형식 내보내기
__16.2 애트리뷰트
chapter 17 dynamic 형식
__17.1 dynamic 형식 소개
__17.2 COM과 .NET 사이의 상호 운용성을 위한 dynamic 형식
__17.3 동적 언어와의 상호 운용성을 위한 dynamic 형식
chapter 18 파일 다루기
__18.1 파일 정보와 디렉터리 정보 다루기
__18.2 파일을 읽고 쓰기 위해 알아야 할 것들
__18.3 실수를 줄여주는 using 선언
__18.4 이진 데이터 처리를 위한 BinaryWriter/BinaryReader
__18.5 텍스트 파일 처리를 위한 StreamWriter/StreamReader
__18.6 객체 직렬화하기
chapter 19 스레드와 태스크
__19.1 프로세스와 스레드
__19.1.5 스레드 간의 동기화
__19.2 Task와 Task〈TResult〉 그리고 Parallel
__19.3 async 한정자와 await 연산자로 만드는 비동기 코드
chapter 20 WinForm으로 만드는 사용자 인터페이스
__20.1 도대체 무슨 일이 일어나고 있는 걸까?
__20.2 C# 코드로 WinForm 윈도우 만들기
__20.3 Application 클래스
__20.4 윈도우를 표현하는 Form 클래스
__20.5 폼 디자이너를 이용한 WinForm UI 구성
__20.6 사용자 인터페이스와 비동기 작업
chapter 21 네트워크 프로그래밍
__21.1 네트워크 프로그래밍에 앞서 알아둬야 할 기초
__21.2 TcpListener와 TcpClient
__21.3 흐르는 패킷
__21.4 프로토콜 설계와 네트워크 애플리케이션 프로그래밍 예제
chapter 22 가비지 컬렉션
__22.1 가비지 컬렉터를 아시나요?
__22.2 개처럼 할당하고 정승처럼 수거하라
__22.3 세대별 가비지 컬렉션
__22.4 가비지 컬렉션을 이해했습니다. 우리는 뭘 해야 하죠?