
C# 7 and .NET Core 2.x Blueprints [프로젝트별 예제로 배우는 C#과 닷넷 코어]
- 원서명C# 7 and .NET Core 2.0 Blueprints: Build effective applications that meet modern software requirements (ISBN 9781788396196)
- 지은이더크 스트라우스(Dirk Strauss), 야스 라드메이어(Jas Rademeyer)
- 옮긴이양정열
- ISBN : 9791161752914
- 35,000원
- 2019년 04월 30일 펴냄
- 페이퍼백 | 448쪽 | 188*235mm
- 시리즈 : acorn+PACKT, 웹 프로페셔널
책 소개
소스 코드 파일은 여기에서 내려 받으실 수 있습니다.
요약
C# 7에 추가된 기능의 소개를 시작으로 객체지향 프로그래밍의 원칙과 다양한 플랫폼에서 동작하는 .NET Core 애플리케이션 제작, 몽고 DB 연동 방법, SignalR을 통한 실시간 웹 앱 제작, Entity Framework Core와 다양한 배포 옵션, 서버리스(Serverless) 애저 함수(Azure Function) 사용법, 트위터 클론 등 다양한 예제를 통해 C#과 .NET Core를 쉽게 설명한다. C#에 관한 기본적인 지식이 있으면 좋겠지만 그렇지 않더라도 개발 경험이 있는 독자라면 어렵지 않게 이해 할 수 있으며, 다른 개발 언어나 도구를 통해서도 동일한 아이디어를 적용해 볼 수 있을 것이다.
이 책에서 다루는 내용
■ Entity Framework Core와 ASP.NET Core MVC 애플리케이션 통합
■ SignalR와 NuGet 패키지 활용
■ ASP.NET Core MVC 애플리케이션에서 MongoDB 활용
■ .NET Core MVC와 미들웨어, 컨트롤러, 뷰, 레아아웃, 라우팅, OAuth 실습
■ 애저 함수(Azure Function)와 서버리스 컴퓨팅
■ .NET Core로 윈도우와 맥OS, 리눅스에서 동작하는 크로스 플랫폼 애플리케이션 제작
■ 도커 구성과 .NET Core MVC 애플리케이션 구동
이 책의 대상 독자
C# 프로그래밍 언어를 잘 알고 있으며 .NET Core를 더 알고 싶어하는 개발자를 대상으로 한다.
이 책의 구성
1장, ‘전자책 관리자와 목록 앱’에서는 C# 7의 새로운 기능을 소개한다. 개발자는 이 기능을 통해 적은 코드로 높은 생산성을 얻을 수 있다. 또한 전자책 관리자 응용 프로그램도 만든다. 이 응용 프로그램은 하드 디스크와 외장 드라이브에 위치한 전자책을 하나의 가상 저장소로 모아주는 기능을 제공한다. 이 응용 프로그램은 필요에 따라 개선할 수도 있다.
2장, ‘크리켓 점수 계산기와 트래커’에서는 .NET 응용 프로그램을 만드는 중요한 요소인 객체지향 프로그래밍(OOP)을 설명한다. 개발자는 적절한 객체지향 프로그래밍을 통해 프로젝트 간에 코드를 쉽게 공유할 수 있고, 이미 작성한 코드를 재작성할 필요도 없다. 선호하는 두 팀의 크리켓 점수를 추적하는 ASP.NET Bootstrap 웹 응용 프로그램을 만들어보면서 객체지향 프로그래밍의 원칙을 명확하게 이해할 수 있다.
3장, ‘다양한 플랫폼에서 동작하는 닷넷 코어 시스템 정보 관리자’에서는 .NET Core에 관해 설명한다. .NET Core를 통해 윈도우와 맥OS, 리눅스에서 동작하는 간단한 대시보드 응용 프로그램을 통해 내용을 설명한다. 이 응용 프로그램은 컴퓨터의 정보와 컴퓨터가 있는 위치의 날씨 정보를 보여준다.
4장, ‘태스크와 버그 로깅 ASP .NET Core MVC 앱’에서는 태스크와 버그 로깅 응용 프로그램을 만들면서 ASP.NET Core MVC와 몽고DB(MongoDB) 사용법을 살펴본다. 개발자는 몽고DB를 통해 생산성이 향상시키고 .NET Core와 쉽게 통합할 수 있다.
5장, ‘ASP.NET SignalR 대화 응용 프로그램’에서는 사용자가 페이지를 새로 고침하지 않더라도 서버 측 코드에서 해당 웹 페이지에 실시간으로 데이터를 보낼 수 있는 기능을 생각해보는 것으로 시작한다. 개발자는 ASP.NET SignalR 라이브러리를 통해 응용 프로그램에 실시간 웹 기능을 간단히 추가할 수 있다. 참고로 8장, ‘OAuth를 활용한 트위터 클론’을 살펴볼 때 5장의 내용을 떠올릴 수 있길 바란다. 이 응용 프로그램은 SignalR과 통합하기 좋다.
6장, ‘Entity Framework Core로 만드는 웹 리서치 도구’에서는 .NET Core 학습의 핵심인 Entity Framework Core를 설명한다. 데이터를 읽어와 데이터베이스에 기록하는 응용 프로그램을 개발할 때 가장 힘든 부분은 데이터베이스와 코드 간 통신 계층 설정이다. .NET Core 응용 프로그램에서 이 문제를 해결할 때 이용하는 Entity Framework Core에 대해 설명한다.
7장, ‘서버리스 이메일 유효성 검사 애저 함수’에서는 애저 함수를 만들고 ASP.NET Core MVC 응용 프로그램에서 이 함수를 호출하는 방법을 보여준다. 애저 함수에서는 이메일 주소를 검사한다. 서버리스 컴퓨팅과 그 이점을 명확하게 이해할 수 있다.
8장, ‘OAuth를 활용한 트위터 클론’에서는 트위터의 기능을 필요에 따라 수정하는 방법을 설명한다. 예를 들면 선호하는 트윗을 저장하는 기능이 이에 해당한다. ASP.NET Core MVC 응용 프로그램을 통해 기본적인 기능을 갖춘 트위터 클론을 만드는 일이 얼마나 쉬운지 살펴본다. 이 응용 프로그램에 쉽게 기능을 추가해 특정 요구 사항을 만족시키도록 사용자 정의할 수 있다.
9장, ‘도커와 ASP.NET Core 활용’에서는 요즘 화두가 되고 있는 도커를 살펴보고, 도커가 개발자에게 어떤 도움을 줄 수 있는지에 대해 설명한다. ASP.NET Core MVC 응용 프로그램을 생성하고 도커 컨테이너에서 구동하는 방법을 설명한다. 마지막 부분에서는 도커 허브(Docker Hub)와 깃허브(GitHub)을 사용해 빌드를 자동화하는 방법을 살펴본다.
목차
목차
- 1장. 전자책 관리자와 목록 앱
- 프로젝트 설정하기
- 가상 저장소 공간과 확장 메서드
- DocumentEngine 클래스
- ImportBooks 폼
- 식 본문 접근자, 생성자, 종료자
- TreeView 컨트롤 채우기
- 로컬 함수
- 패턴 일치
- ImportBooks 마무리
- Throw 식
- 저장소 공간에 선택한 책 저장하기
- 메인 eBookManager 폼
- eBookManager 응용 프로그램 실행하기
- 요약
- 2장. 크리켓 점수 계산기와 트래커
- 프로젝트 설정하기
- 객체지향 프로그래밍
- 추상화
- 다형성
- 컴파일 타임 다형성과 런타임 다형성
- 상속
- 캡슐화
- 캡슐화와 추상화
- 크리켓 점수 트래커의 클래스
- 추상 클래스
- 인터페이스
- 클래스
- 모두 합치기
- SOLID 설계 원칙
- 단일 책임의 원칙
- 개방/폐쇄의 원칙
- SOLID 설계 원칙
- 요약
- 3장. 다양한 플랫폼에서 동작하는 닷넷 코어 시스템 정보 관리자
- 윈도우에서 프로젝트 만들기
- 프로젝트 세부 사항
- Climacons
- Startup.cs 파일
- InformationModel 클래스
- InformationController 클래스
- GetInfo 뷰
- 맥OS에서 응용 프로그램 실행하기
- 리눅스에서 앱 설정하기
- 요약
- 윈도우에서 프로젝트 만들기
- 4장. 태스크와 버그 로깅 ASP.NET Core MVC 앱
- 몽고DB를 사용하는 이점은 무엇인가?
- 몽고DB를 통한 빠른 개발
- 커리어 향상 스킬 셋
- 몽고DB의 높은 위상
- 로컬 컴퓨터에 몽고DB 설정
- ASP.NET Core MVC 응용 프로그램과 몽고DB 연결하기
- NuGet 패키지 추가하기
- MongoDBRepository 클래스 만들기
- 몽고DB 데이터 읽고 쓰기
- Interfaces와 WorkItemService 만들기
- View 만들기
- HomeController 변경하기
- 작업 항목 입력하기
- 작업 항목 목록으로 리다이렉션하기
- 요약
- 몽고DB를 사용하는 이점은 무엇인가?
- 5장. ASP.NET SignalR 대화 응용 프로그램
- 프로젝트 레이아웃
- 프로젝트 설정하기
- SignalR 라이브러리 추가하기
- 서버 만들기
- SignalR Hub 하위 클래스
- 설정 변경
- 클라이언트 만들기
- 포함된 라이브러리
- 대화명 정하기
- 대화 입력
- 대화 창
- 저장 기능
- 자바스크립트 함수
- 솔루션 개요
- 출시하기
- 응용 프로그램 실행하기
- 파티 시작하기
- 대화 저장하기
- 요약
- 6장. Entity Framework Core로 만드는 웹 리서치 도구
- 엔티티 프레임워크 코어
- 엔티티 프레임워크
- 코드 우선 방식, 모델 우선 방식, 데이터베이스 우선 방식의 비교
- 코드 우선 방식
- 모델 우선 방식
- 데이터베이스 우선 방식
- 데이터베이스 설계하기
- 프로젝트 설정하기
- 필요한 패키지 설치하기
- Entity Framework Core SQL Server
- 엔티티 프레임워크 코어 도구
- Code generation design
- 모델 만들기
- 서비스 구성하기
- 데이터베이스 만들기
- 데이터베이스에 데스트 데이터 추가하기
- 컨트롤러 만들기
- 응용 프로그램 실행하기
- 응용 프로그램 배포하기
- 애저 앱 서비스
- 사용자 지정 대상
- FTP
- 웹 배포
- Web Deploy 패키지
- 파일 시스템
- 폴더
- 프로필 가져오기
- 요약
- 엔티티 프레임워크 코어
- 7장. 서버리스 이메일 유효성 검사 애저 함수
- 서버리스 컴퓨팅 시작하기
- 서버리스 컴퓨팅의 중요성
- 애저 함수의 기능
- 언어 선택
- 종량제 요금
- 유연한 개발
- 애저 함수의 종류
- 애저 함수 만들기
- 애저 함수 코드 수정하기
- ASP.NET Core MVC 응용 프로그램에서 애저 함수 호출하기
- 로그인 폼 만들기
- 모두 연결하기
- 요약
- 서버리스 컴퓨팅 시작하기
- 8장. OAuth를 활용한 트위터 클론
- Tweetinvi 사용하기
- ASP.NET Core MVC 트위터 클론 응용 프로그램
- 트위터에서 응용 프로그램 만들기
- ASP.NET Core MVC 응용 프로그램을 만들고 NuGet 패키지 추가하기
- 코드 작성하기
- Classes와 appsettings 설정하기
- TweetItem 클래스 만들기
- CSS 설정하기
- 컨트롤러 추가하기
- 뷰 만들기
- HomeController 수정하기
- TwitterViewModel 클래스 만들기
- HomeTimeline 뷰 만들기
- TwitterController 클래스 수정하기
- ComposeTweet 뷰로 마무리하기
- CoreTwitter 응용 프로그램 실행하기
- 요약
- Tweetinvi 사용하기
- 9장. 도커와 ASP.NET Core 활용
- 도커란 무엇인가?
- 이미지와 컨테이너
- 도커는 어디에서 동작하는가?
- 도커가 웹 개발자에게 주는 이점
- 윈도우 10 Pro에 도커 설치하기
- 도커 이해하기
- 비주얼 스튜디오 2017의 ASP.NET Core 응용 프로그램을 도커에서 실행하기
- 이미 존재하는 ASP.NET Core 응용 프로그램에 도커 지원 추가하기
- 깃허브과 도커 허브 사용하기
- 도커란 무엇인가?
도서 오류 신고
정오표
정오표
[p.144 : 2행 링크 수정]
1. 다음 경로에 방문한 후 프로젝트에 추가하기 위해 다운로드한다.
http://adamwhitcroft.com/climacons/
->
1. 다음 경로에 방문한 후 프로젝트에 추가하기 위해 다운로드한다.
https://thenounproject.com/browse/collection-icon/climacons-10/?p=1