상세정보
미리보기
이것이 C#이다
- 저자
- 박상현 저
- 출판사
- 한빛미디어
- 출판일
- 2021-01-18
- 등록일
- 2022-06-21
- 파일포맷
- PDF
- 파일크기
- 8MB
- 공급사
- 예스이십사
- 지원기기
-
PC
웹뷰어
프로그램 수동설치
뷰어프로그램 설치 안내
책소개
처음부터 끝까지 입문자를 배려한 C# 입문서『뇌를 자극하는 C# 4.0』을 시작으로 2011년부터 꾸준히 개정하며 독자의 신뢰를 쌓아온 『이것이 C#이다』이 C# 9.0 버전에 맞춰 코드와 내용을 개정해 돌아왔다. C#과 닷넷 세계에 처음 입문하는 독자를 대상으로 집필한 이 책은 강의를 듣는 듯 편한 구어체로 프로그램의 역사와 기초 문법부터 가비지 컬렉션까지 C#의 방대한 내용을 집대성했다. 친절한 설명, 직관적인 예제, 직강 동영상, 여기에 저자가 직접 질문에 답해주는 커뮤니티까지 올인원으로 구성된 이 책을 발판 삼아 C# 입문자에서 전문가로 성장해보자.
저자소개
한화시스템에서 방위 분야의 프로그래머로 일하고 있다. 최근까지는 방공 무기체계에 탑재되는 소프트웨어를 개발해 왔다. 컴퓨터 하드웨어와 소프트웨어 모두를 사랑하는 경력 17년차 엔지니어이다. 대학원에서 우연히 만난 인공지능 지식을 살려 『그로킹 딥러닝』(2020 세종 학술부문 우수 도서)을 번역했으며, 집필서로는 『뇌를 자극하는 알고리즘』(2010 대한민국 학술원 우수학술 도서), 『뇌를 자극하는 파이썬 3』 등이 있다.
대표 저서로는 『뇌를 자극하는 파이썬 3』(2016) 『뇌를 자극하는 C# 5.0 프로그래밍』(2014) 『뇌를 자극하는 알고리즘』(2009) 등이 있다.
목차
__목차__지은이 글__일러두기__학습 로드맵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 가비지 컬렉션을 이해했습니다. 우리는 뭘 해야 하죠?