백견불여일타 C# 입문 (예제와 연습문제에 집중한 프로그래밍 입문서)

백견불여일타 C# 입문 (예제와 연습문제에 집중한 프로그래밍 입문서)

$27.50
Description
이 책은 프로그래밍에 입문하고자 하거나 C# 언어를 새롭게 배우고자 하는 프로그래머를 위한 입문서이다. 개념과 예제 그리고 연습문제에 집중하여 기획되었다. 100개의 본문 예제를 반복하여 익히고 각 장마다 제공되는 연습문제를 스스로 풀어낸다면 C# 개발자로 충분히 성장할 수 있는 발판을 마련할 수 있을 것이다.
저자

정준석

성공회대학교소프트웨어공학과에입학해서,대학교3학년때C#을처음접했고그이후로Microsoft와VisualStudio를찬양하기시작했다.LG전자에서C#기반의실버라이트프로그램을시작으로실무에뛰어들었고,검색엔진회사인와이즈넛에서데이터수집분야를담당하며이때부터C#과자바를골고루쓸수있는개발자가되었다.이러한지식을토대로KSUG(한국스프링유저그룹)에서주최하는스프링캠프에서"HotTrendLambda,CompareC#WithJava"강연을진행했으며,이것이인연이되어C#책을집필하기시작했다.현재는에듀윌,중앙일보를거쳐브레인커머스(잡플래닛)에서열심히개발자의커리어를키워나가고있다.

목차

지은이의글
편집자이자베타테스터의글
일러두기

1장첫만남,프로그래밍을말하다
1.1프로그래밍이란무엇일까?
1.2프로그래밍언어에는무엇이있을까?
1.3C#의탄생과발전가능성,이언어매력적이다!
1.4VisualStudio설치를해봅시다
1.5내가만드는첫번째프로그램
1.6프로그램배포하기
1.7C#개발자의원조선생님,MSDN
1.8이책의코드구성
정리해봅시다
[함께해봐요]내가만드는첫번째코드(Program.cs)

2장변수사용법,바구니에이름표붙이기
2.1변수:데이터를담아내는바구니
2.2숫자를담는변수타입
2.3문자를담는변수타입
2.4참/거짓을담는변수타입.그리고참/거짓을판단하는연산자
2.5예측이불가능한데이터를담을때유용한변수타입
2.6바구니의활용도를바꾸는변수‘형변환’
2.7지역변수,전역변수,그리고상수
2.8.NETFramework에서제공되는변수타입
정리해봅시다
나의이해도를측정하자
[함께해봐요]인사해보기(Hello.cs)
[함께해봐요]인사해보기파일호출(Program.cs)
[함께해봐요]숫자를담아내는바구니(Ex001.cs)
[함께해봐요]문자를담아내는바구니(Ex002.cs)
[함께해봐요]참/거짓을담아내는바구니(Ex003.cs)
[함께해봐요]무엇이든담을수있는만능바구니(Ex004.cs)
[함께해봐요]object,var,dynamic의차이점(Ex005.cs)
[함께해봐요]변수사용법에대한복습(Ex006.cs)
[함께해봐요]학생의총점수와평균점수를계산하는프로그램(Ex007.cs)
[함께해봐요]학생의총점수와평균점수를계산하는프로그램확장(Ex008.cs)
[함께해봐요]암시적인형변환과명시적인형변환(Ex009.cs)
[함께해봐요]문자로구성된숫자를형변환하는방법(Ex010.cs)
[함께해봐요]지역변수와전역변수(Ex011.cs)
[함께해봐요]상수(Ex012.cs)

3장조건문:상황에따른프로그램의변화
3.1if문:“만약에~라면~이다”
3.23항연산자:if-else문의축소판
3.3시험지의답안을보는것처럼명확하게조건이나뉘는switch문
정리해봅시다
나의이해도를측정하자
[함께해봐요]조건문의사용과코드블록의흐름(Ex001.cs)
[함께해봐요]조건문의사용과코드블록의흐름(Ex002.cs)
[함께해봐요]else키워드의사용(Ex003.cs)
[함께해봐요]else키워드를대체한not코드(Ex004.cs)
[함께해봐요]if?elseif?else의조건문조합(Ex005.cs)
[함께해봐요]사용자에게입력받은숫자의특성을알려주는프로그램(Ex006.cs)
[함께해봐요]중첩조건문(Ex007.cs)
[함께해봐요]&&연산자활용과3항연산자를이용한조건문(Ex008.cs)
[함께해봐요]영화평점피드백프로그램(Ex009.cs)
[함께해봐요]switch문을이요한영화평점피드백프로그램(Ex010.cs)

4장반복문:반복된상황의프로그램제어
4.1반복작업의기초이자가장많이사용되는for문
4.2while문:‘~하는동안~을반복하라’
4.31번이상의반복문do-while문,0번이상의반복문while문
정리해봅시다
나의이해도를측정하자
[함께해봐요]반복문의흐름파악해보기첫번째(Ex001.cs)
[함께해봐요]반복문의흐름파악해보기두번째(Ex002.cs)
[함께해봐요]반복문의흐름파악해보기세번째(Ex003.cs)
[함께해봐요]증감연산자의흐름(Ex004.cs)
[함께해봐요]5팩토리얼계산(Ex005.cs)
[함께해봐요]3번의중첩반복문(Ex006.cs)
[함께해봐요]구구단예제(Ex007.cs)
[함께해봐요]while문을이용한랜덤숫자찾기게임(Ex007.cs)
[함께해봐요]while문을이용한랜덤숫자찾기게임심화,continue의활용(Ex009.cs)
[함께해봐요]do-while문을이용한숫자찾기게임(Ex010.cs)

5장프로그래밍의꽃객체지향:간단히코드를조립하자
5.1객체지향이란?클래스의활용법은?
5.2객체지향이란?메소드의활용법은?
5.3namespace:비슷한성격의클래스를그룹화해서관리하자
정리해봅시다
나의이해도를측정하자
[함께해봐요]자동차클래스설계(Ex001.cs)
[함께해봐요]프로퍼티를이용한자동차클래스설계(Ex002.cs)
[함께해봐요]프로퍼티를이용한자동차클래스설계(Ex003.cs)
[함께해봐요]빵클래스를이용한여러가지빵객체만들기(Ex004.cs)
[함께해봐요]더하기공통기능(Ex005.cs)
[함께해봐요]사칙연산메소드(Ex006.cs)
[함께해봐요]사칙연산메소드(Ex007.cs)
[함께해봐요]클래스상속(Ex008.cs)
[함께해봐요]메소드오버라이드(Ex009.cs)
[함께해봐요]게시판클래스(Model/Board.cs)
[함께해봐요]게시판비즈니스로직(Service/BoardService.cs)
[함께해봐요]게시판작성(Ex010.cs)
[함께해봐요]using키워드사용하기(Ex011.cs)

6장배열과제네릭:여러개의데이터를보관하는방법
6.1Split:특정문자기준으로데이터를나누는방법
6.2배열선언공식
6.3배열은폭식하면안돼요
6.4배열을선언하는또다른방법
6.5많이사용하지는않지만,알아두면좋은다차원(N차원)배열
6.6ArrayList:데이터가얼마나담길지예측이불가능한경우
6.7알아두면좋은자료구조,버스대기중인승객과같은구조인Queue
6.8알아두면좋은자료구조,Queue의반대개념Stack
6.9Hashtable,마치사전과같은자료구조
6.10제네릭(Generic),Collection에속한자료구조의한계를넘어라
6.11ArrayList의버전업인List〈T〉:가장많이사용하는Generic
6.12Generic에서사용되는Queue/Stack자료구조
6.13사전역할을하는Dictionary:Hashtable컬렉션의제네릭버전
정리해봅시다
나의이해도를측정하자
[함께해봐요]문자열나누기(Ex001.cs)
[함께해봐요]배열을이용한일주일의날씨통계출력하기(Ex002.cs)
[함께해봐요]선언된크기보다더많은데이터를받아들인배열(Ex003.cs)
[함께해봐요]날짜통계프로그램만들기(Ex004.cs)
[함께해봐요]학생별성적계산프로그램(Ex005.cs)
[함께해봐요]ArrayList사용하기(Ex006.cs)195
[함께해봐요]ArrayList인덱스중간위치에삽입하기(Ex007.cs)
[함께해봐요]ArrayList인덱스중간위치값삭제하기(Ex008.cs)
[함께해봐요]버스정류장의승객현황을Queue로표현한예제(Ex009.cs)
[함께해봐요]올림픽대표선수를발탁하는예제를Stack으로표현한예제(Ex010.cs)
[함께해봐요]나라이름영한사전을Hashtable로표현한예제(Ex011.cs)
[함께해봐요]사용자영한사전만들기(Ex012.cs)
[함께해봐요]Ex008ArrayList를제네릭으로바꾸어표현하는예제(Ex013.cs)
[함께해봐요]학생정보를관리하는모델설계(Model/Student.cs)
[함께해봐요]ArrayList를이용한학생정보관리프로그램(Ex014.cs)
[함께해봐요]제네릭List를이용한학생정보관리프로그램(Ex015.cs)
[함께해봐요]Ex009Queue를제네릭으로바꾸어표현하는예제(Ex016.cs)
[함께해봐요]Ex010Stack을제네릭으로바꾸어표현하는예제(Ex017.cs)
[함께해봐요]Ex012사용자영한사전Hashtable구조를제네릭으로바꾸어표현하는예제(Ex018.cs)

7장예외처리:누구에게나예상치못한실수는있어요
7.1예외상황?언제어디서나타나는것일까?
7.2자전거를배우는어린아이의돌발상황을잡아주는예외처리:부모님의역할
7.3직접만들어보는예외클래스
정리해봅시다
나의이해도를측정하자
[함께해봐요]예상치못한입력오류(Ex001.cs)
[함께해봐요]인덱스범위초과오류(Ex002.cs)
[함께해봐요]예외처리의기본(Ex003.cs)
[함께해봐요]예외메시지출력및예외코드출력(Ex004.cs)
[함께해봐요]CaseByCase예외처리(Ex005.cs)
[함께해봐요]try블록의최소화(Ex006.cs)
[함께해봐요]finally구문(Ex007.cs)
[함께해봐요]사용자예외클래스(UserException/MyStyleException.cs)
[함께해봐요]사용자예외클래스를이용한예외던지기(Ex008.cs)

8장파일과데이터베이스:데이터를보관하자
8.1파일확장자의대표종류:txt,log
8.2파일의입력과출력
8.3데이터베이스란?
8.4MS-SQL설치
9.5SSMS(SQLServerManagementSystem)설치
8.6MS-SQL설정
8.7SQL기초지식습득하기
8.8C#언어를이용하여데이터베이스에접근하기
8.9C#언어를이용하여데이터를집어넣고조회하기
8.10C#언어를이용한데이터수정과삭제
정리해봅시다
나의이해도를측정하자
[함께해봐요]디렉토리생성(Ex001.cs)
[함께해봐요]파일에내용입력해보기(Ex002.cs)
[함께해봐요]파일에내용출력해보기(Ex003.cs)
[함께해봐요]데이터베이스만들기(SQL/SQL001.sql)
[함께해봐요]테이블만들기(SQL/SQL002.sql)
[함께해봐요]테이블데이터추가(SQL/SQL003.sql)
[함께해봐요]테이블데이터조회(SQL/SQL004.sql)
[함께해봐요]데이터베이스에접근하기(Ex004.cs)
[함께해봐요]유저클래스만들기(Model/User.cs)
[함께해봐요]데이터신규생성(Ex005.cs)
[함께해봐요]데이터조회(Ex006.cs)
[함께해봐요]데이터수정(SQL/SQL005.sql)
[함께해봐요]데이터삭제(SQL/SQL006.sql)
[함께해봐요]데이터수정(Ex007.cs)
[함께해봐요]데이터삭제(Ex008.cs)

9장함수형프로

출판사 서평

_대상독자
C#을첫프로그래밍언어로선택한초보자
새로운프로젝트에새로운언어로C#을선택한개발자
프로그래밍언어의기초를탄탄하게다지고싶은독자
객체지향적프로그래밍의기초를배우고자하는독자

[핵심컨셉]
1.한땀한땀작성한예제와연습문제
2.누구나따라하며배울수있는완벽한실습

[주요특징]
프로젝트3개예제100개수록
예제로완벽하게정복하는람다와링큐
연습문제와강의자료제공.

C#은웹,데이터과학,게임,솔루션등등수많은분야에서활용되는대세언어중하나입니다.비주얼스튜디오라는개발툴이든든하게지원하고있어누구나쉽게프로그래밍을배울수있습니다.이책에서제공하는크고작은미션(예제)들을스스로풀고이해한다면여러분은이미프로그래머입니다.

실력을높여주는프로젝트3개
1.콘솔게시판을만들어보고웹게시판으로확장하기
대부분의프로젝트가데이터를다루는일이많은만큼게시판을만들어보면어떤프로젝트에도쉽게적응할수있습니다.이책은먼저원리를알기위해콘솔게시판을만들어보고,그다음에간단하게웹에서어떻게구현하는지알아봅니다.

2.매출관리시스템(POS)만들어보기
Windows에서돌아가는솔루션을만드는곳은반드시윈폼(WindowsForm)이필요합니다.가장기본적인매출관리시스템을만들어봄으로써윈폼프로그래밍의기초를다질수있습니다.

3.데이터관련분야에도전하려는독자를위한검색엔진프로젝트
데이터관련분야로자신의진로를정한다면더할나위없이좋은프로젝트가될것입니다.데이터수집과색인그리고검색의기초원리를배울수있습니다.

눈으로만읽으면절대내지식이될수없습니다.특히이책에서제공하는연습문제들은여러분이나중에현업에서부딪히며해결해야할미션들의작은버전과도같습니다.안되면밤새고민해서해결해보고성취감을맞본후에저자의정답과맞춰보고잘한점,잘못한점을구분하여배워나가야합니다.
연습문제를스스로풀어본다는것은나에게어떤미션이주어졌을때프로그램을어떻게짤것이고for문을쓸것인지switch문을쓸것인지배열혹은리스트,제네릭등등어떤자료구조를쓸것인지고민하는것부터시작됩니다.여러분이어떤입문서를택하든연습문제는꼭스스로풀어보는훌륭한독자이기를바랍니다.그리고여러분이원하는프로그래밍의세계에서마음껏날갯짓을하며즐겁고행복한삶이되기를기원합니다.

_편집자코멘트
역시하이라이트는연습문제였습니다.본문에서열심히구문을익혔는데도잘생각이나지않으면어쩔수없이본문을참고하였지만,절대저자가제공한해답은보지않았습니다.그리고완성된나만의해답과저자가제공한해답을비교했을때,“아~이렇게도코딩을할수있구나”하며큰깨달음의순간도많았던것같습니다.연습문제푸는시간이제일힘들었고재미있었습니다.그냥단순교정을보면10분도채걸리지않지만,한문제만으로도하루종일시름하던적도있
었습니다.그러면서힌트가부족한건아니었는지왜이렇게오래걸린건지저자와소통하며연습문제의힌트나,문제를약간씩수정하기도하며책의완성도에기여를한것같습니다.