책 이미지
책 정보
· 분류 : 국내도서 > 컴퓨터/모바일 > 프로그래밍 언어 > .NET > C#
· ISBN : 9791195484539
· 쪽수 : 456쪽
· 출판일 : 2016-01-07
책 소개
목차
Chapter 01 컴퓨터와 프로그램
1.1 컴퓨터
1.1.1 컴퓨터와 관련된 서론부
1.1.2 하드웨어와 소프트웨어
1.1.3 데이터와 정보
1.2 프로그램과 프로그래밍
1.2.1 프로그래머란 무엇인가?
1.2.2 간단한 예제
1.3 프로그래밍 언어
1.4 C#
1.4.1 위험한 C
1.4.2 안전한 C#
1.4.3 C#과 객체지향
1.4.4 C#으로 동작하게 만들기
1.4.5 C# 프로그램 만들기
1.4.6 C# 프로그램은 무엇으로 구성되는가?
Chapter 02 간단한 데이터 처리
2.1 첫 번째 C# 프로그램
2.1.1 프로그램 예제
2.2 데이터 다루기
2.2.1 변수와 데이터
2.2.2 숫자 저장하기
2.2.3 텍스트(text) 저장하기
2.2.4 불린(Boolean) 방식을 사용하여 상태 저장하기
2.2.5 식별자(Identifiers)
2.2.6 변수에 값 대입하기
2.2.7 데이터 타입 변경하기
2.2.8 표현식에서 데이터 타입
2.2.9 프로그램과 패턴
2.3 프로그램을 만드는 요령
2.3.1 소설 같은 소프트웨어
2.3.2 프로그램 흐름(Program Flow) 제어하기
2.3.3 루프(반복문)
2.3.4 복합할당 연산자(operator shorthand)
2.3.5 잘 정돈된 출력
Chapter 03 프로그램을 만들 때 필요한 것들
3.1 메소드(Methods)
3.1.1 메소드의 필요성
3.1.2 메소드의 파라미터(매개변수)
3.1.3 반환값(Return Valules)
3.1.4 인수와 파라미터(Arguments and Parameters)
3.1.5 유용한 메소드
3.1.6 이름을 가지는 파라미터와 이름이 없는 파라미터
3.1.7 파라미터로 값을 전달하는 방식(Parameter Passing By Value)
3.1.8 참조(Reference)를 전달하는 방식(Parameter Passing By Reference)
3.1.9 결과를 위한 참조 전달 방식 (Passing Parameters as "out" references)
3.1.10 메소드 라이브러리
3.2 변수와 범위
3.2.1 범위와 블록(Scope and blocks)
3.2.2 중첩된 블록(Nested Blocks)
3.2.3 클래스 선언 아래에 있는 클래스 변수(Data Member in classes)
3.3 배열(Arrays)
3.3.1 배열은 왜 필요한가
3.3.2 배열 요소(Array Elements)
3.3.3 많은 데이터를 담는 배열
3.3.4 2차원 배열 만들기
3.3.5 배열과 룩업테이블(Arrays and Lookup Tables)
3.3.6 2차원 이상
3.4 예외와 에러(Exceptions and Errors)
3.4.1 예외와 Parse 메소드
3.4.2 예외 처리(Catching Exceptions)
3.4.3 예외 객체
3.4.4 중첩된 예외의 처리
3.4.5 Finally 절 추가하기
3.4.6 예외 처리
3.4.7 예외 처리의 기본 매너
3.5 Switch문
3.5.1 다중 결정하기
3.5.2 if문을 사용하여 선택하기
3.5.3 Switch문 사용하기
3.6 파일 사용하기
3.6.1 스트림과 파일
3.6.2 출력 스트림 만들기
3.6.3 스트림으로 저장하기
3.6.4 스트림 닫기(완료하기)
3.6.5 스트림과 네임스페이스(Streams and Namespaces)
3.6.6 파일 읽기
3.6.7 C#에서 파일 경로
Chapter 04 프로그램 제작 연습
4.1 사례: 친절한 은행
4.1.1 은행 시스템의 범위
4.2 열거형 타입(Enumerated Types)
4.2.1 열거와 상태(Enumeration and States)
4.2.2 enum 타입 만들기
4.3 구조체
4.3.1 구조체(Structures)란?
4.3.2 구조체 만들기
4.3.3 구조체 사용하기
4.4 객체, 구조체, 참조(Objects, Structures and References)
4.4.1 객체와 구조체
4.4.2 참조(reference)
4.4.3 참조 사용에 주의해야 하는 이유
4.5 객체를 이용해서 설계하기
4.5.1 객체 내 데이터
4.5.2 객체 내 데이터 보호
4.5.3 완전한 Account 클래스
4.5.4 테스트 주도 개발
4.6 정적 변수
4.6.1 클래스와 static
4.6.2 클래스에서 static을 이용한 변수 사용하기
4.6.3 클래스 내에서 static 메소드 사용하기
4.7 객체 생성
4.7.1 기본 생성자
4.7.2 생성자
4.7.3 생성자 오버로딩(overloading)
4.7.4 생성자 관리
4.7.5 생성자는 실패하면 안 된다.
4.8 객체에서 컴포넌트까지
4.8.1 컴포넌트와 하드웨어
4.8.2 컴포넌트와 인터페이스
4.8.3 C#에서 인터페이스 구현하기
4.8.4 인터페이스에 대한 참조
4.8.5 인터페이스 사용하기
4.8.6 다중 인터페이스 구현하기
4.8.7 Interfaces를 사용하여 설계하기
4.9 상속
4.9.1 부모 클래스 확장하기
4.9.2 오버라이딩 메소드
4.9.3 base 메소드 사용하기
4.9.4 대체 메소드 만들기
4.9.5 오버라이딩 멈추기
4.9.6 생성자와 계층 구조
4.9.7 추상(abstract) 메소드와 클래스
4.9.8 객체와 컴포넌트로 설계하기
4.9.9 패닉에 빠지지 말자
4.10 객체 사용 방법
4.10.1 객체와 ToString
4.10.2 객체와 이퀄(equal) 테스팅
4.10.3 객체와 this
4.11 strings과 chars의 강력한 기능
4.11.1 문자열 다루기
4.11.2 불변(immutable) 문자열
4.11.3 문자열 비교
4.11.4 문자열 편집
4.11.5 문자열 길이
4.11.6 대소문자
4.11.7 빈 문자열 제거
4.11.8 문자 명령어
4.11.9 StringBuilder를 사용하여 문자열 사용하기
4.12 프로퍼티
4.12.1 클래스에 선언되는 프로퍼티
4.12.2 Get과 Set 메소드 만들기
4.12.3 프로퍼티 사용하기
4.12.4 프로퍼티와 인터페이스
4.12.5 프로퍼티 문제점
4.12.6 위임 사용하기
4.13 은행 프로그램 만들기
4.13.1 배열로 계좌 저장하기
4.13.2 검색과 성능
4.13.3 해시 테이블(Hash Table)을 사용하여 계좌 저장하기
4.13.4 C# 해시 테이블 컬렉션 사용하기
Chapter 05 고급 프로그래밍 기법들
5.1 제네릭과 컬렉션(Generics and Collections)
5.1.1 ArrayList 클래스
5.1.2 List 클래스
5.1.3 Dictionary 클래스
5.1.4 제네릭 코드 작성하기
5.2 비즈니스 객체 저장하기
5.2.1 계좌 저장하기
5.2.2 계좌 불러오기
5.2.3 다중 계좌
5.2.4 다른 타입의 계좌 다루기
5.3 비즈니스 객체와 편집(editing)
5.3.1 비즈니스 객체의 역할
5.3.2 텍스트 기반의 편집 시스템
5.4 스레드와 스레드 기법(Threads and Threading)
5.4.1 스레드란 무엇인가?
5.4.2 왜 스레드를 사용해야 하나?
5.4.3 스레드와 프로세서
5.4.4 스레드 사용하기
5.4.5 스레드와 동기화
5.4.6 스레드 제어
5.4.7 스레드 제대로 활용하기
5.4.8 스레드와 프로세스
5.5 구조화된 예외의 처리
5.5.1 예외 클래스
5.5.2 자신의 예외 타입 만들기
5.5.3 예외 발생
5.5.4 다중 예외 타입
5.6 프로그램 구조
5.6.1 분리된 소스 파일 사용하기
5.6.2 네임스페이스
5.6.3 여러 파일의 네임스페이스
5.7 그래픽 사용자 인터페이스
5.7.1 XAML 마크업 언어
5.7.2 완전한 XAML 프로그램 만들기
5.8 디버깅
5.8.1 결함 보고서
5.8.2 버그 찾기
5.8.3 완벽한 소프트웨어 만들기
5.9 끝?
5.9.1 계속 개발하기
5.9.2 더 읽어봐야 할 것
Chapter 06 용어 사전
추상(abstract)
접근자(Accessor)
베이스(Base)
호출(Call)
클래스(Class)
코드 재사용(Code Reuse)
응집력(Cohesion)
컬렉션(Collection)
컴파일러(Compiler)
컴포넌트(Component)
생성자(Constructor)
커플링(Coupling)
창조적 지연(Creative Laziness)
선언적 언어(Declarative language)
위임(Delegate)
의존성(Dependency)
이벤트(Event)
예외(Exception)
기능 설계 명세서(Functional Design Specification)
GUID(Globally Unique Identifier)
계층 구조(Hierarchy)
불변(Immutable)
상속(Inheritance)
인터페이스(Interface)
라이브러리(Library)
기계어 부호(Machine code)
메타데이터(Metadata)
메소드(Method)
뮤테이터(Mutator)
네임스페이스(Namespace)
오버로드(Overload)
오버라이드(Override)
이식성(Portable)
Private
프로퍼티(Property)
Protected
Public
참조(Reference)
시그니처(Signature)
소스 파일(Source file)
정적(Static)
스트림(Stream)
구조(Structure)
서브스크립트(Subscript)
문법 하이라이트(Syntax Highlighting)
견고성 테스트(Test harness)
This
타입세이프(Typesafe)
유닛 테스트(Unit test)
값 타입 (Value type)
버추얼(가상) 메소드 (Virtual method)
Appendix
Visual Studio 설치와 예제 실행
Visual Studio 2015 다운로드
Visual Studio 2015 Community 에디션 다운로드와 설치
Visual Studion 2015 설치
Visual Studio 실행과 프로젝트의 생성
프로젝트 선택
C# 프로젝트 생성
프로젝트 실행과 디버깅
디버깅 모드(단축키 F5)
디버깅(debugging)하지 않고 실행(단축키 Ctrl + F5)
프로젝트에 여러 개의 클래스를 사용하는 방법
클래스 추가하기
추가한 클래스에 Main 작성하기
프로젝트의 시작 개체 변경하기
찾아보기
책속에서





















