본문 바로가기

리디 접속이 원활하지 않습니다.
강제 새로 고침(Ctrl + F5)이나 브라우저 캐시 삭제를 진행해주세요.
계속해서 문제가 발생한다면 리디 접속 테스트를 통해 원인을 파악하고 대응 방법을 안내드리겠습니다.
테스트 페이지로 이동하기

Expert C++ 상세페이지

Expert C++

Become a proficient programmer by learning coding best practices with C++17 and C++20's latest features

  • 관심 1
소장
전자책 정가
19,000원
판매가
19,000원
출간 정보
  • 2020.04.10 전자책 출간
듣기 기능
TTS(듣기) 지원
파일 정보
  • PDF
  • 591 쪽
  • 12.5MB
지원 환경
  • PC뷰어
  • PAPER
ISBN
9781838554767
UCI
-
Expert C++

작품 정보

▶Book Description
C++ has evolved over the years and the latest release – C++20 – is now available. Since C++11, C++ has been constantly enhancing the language feature set. With the new version, you'll explore an array of features such as concepts, modules, ranges, and coroutines. This book will be your guide to learning the intricacies of the language, techniques, C++ tools, and the new features introduced in C++20, while also helping you apply these when building modern and resilient software.

You'll start by exploring the latest features of C++, and then move on to advanced techniques such as multithreading, concurrency, debugging, monitoring, and high-performance programming. The book will delve into object-oriented programming principles and the C++ Standard Template Library, and even show you how to create custom templates. After this, you'll learn about different approaches such as test-driven development (TDD), behavior-driven development (BDD), and domain-driven design (DDD), before taking a look at the coding best practices and design patterns essential for building professional-grade applications. Toward the end of the book, you will gain useful insights into the recent C++ advancements in AI and machine learning.

By the end of this C++ programming book, you'll have gained expertise in real-world application development, including the process of designing complex software.

▶What You Will Learn
- Understand memory management and low-level programming in C++ to write secure and stable applications
- Discover the latest C++20 features such as modules, concepts, ranges, and coroutines
- Understand debugging and testing techniques and reduce issues in your programs
- Design and implement GUI applications using Qt5
- Use multithreading and concurrency to make your programs run faster
- Develop high-end games by using the object-oriented capabilities of C++
- Explore AI and machine learning concepts with C++

▶Key Features
- Design professional-grade, maintainable apps by learning advanced concepts such as functional programming, templates, and networking
- Apply design patterns and best practices to solve real-world problems
- Improve the performance of your projects by designing concurrent data structures and algorithms

▶Who This Book Is For
This C++ book is for experienced C++ developers who are looking to take their knowledge to the next level and perfect their skills in building professional-grade applications.

▶What this book covers
- Chapter 1, Introduction to Building C++ Applications, contains an introduction to the C++ world, its applications, and recent updates to the language standard. This chapter also includes a good overview of the topics covered by C++ and an introduction to the code compilation, linking, and execution phases.

- Chapter 2, Low-Level Programming with C++, focuses on a discussion of C++ data types, arrays, pointers, and addressing and manipulation with pointers, along with low-level details of conditionals, loops, functions, function pointers, and structs. This chapter also includes an introduction to structures (structs).

- Chapter 3, Details of Object-Oriented Programming, dives into the structure of classes and objects, and how a compiler implements object lifetimes. By the end of this chapter, the reader will understand the implementation details of inheritance and virtual functions, as well as the essential inner details of OOP in C++.

- Chapter 4, Understanding and Designing Templates, introduces C++ templates, examples of template functions, template classes, template specialization, and template metaprogramming in general. Traits and meta-programming will incorporate the magic in C++ applications.

- Chapter 5, Memory Management and Smart Pointers, dives into the details of memory sections, allocation, and management in general, including the use of smart pointers to avoid potential memory leaks.

- Chapter 6, Digging into Data Structures and Algorithms in STL, introduces data structures and their STL implementation. This chapter also includes a comparison of data structures and a discussion of proper applications with real-world examples.

- Chapter 7, Functional Programming, focuses on functional programming, which is a different programming paradigm, allowing readers to concentrate on the "functional" rather than the "physical" structure of the code. Mastering functional programming provides developers with a new skill that helps to offer even better solutions to problems.

- Chapter 8, Concurrency and Multithreading, focuses on how to make your programs run faster by leveraging concurrency. When an efficient data structure with efficient algorithms hits the limits of program performance, concurrency comes to the rescue.

- Chapter 9, Designing Concurrent Data Structures, focuses on leveraging data structures and concurrency to design lock-based and lock-free concurrent data structures.

- Chapter 10, Designing World-Ready Applications, focuses on incorporating the knowledge acquired from previous chapters into designing robust real-world applications by using design patterns. This chapter also includes understanding and applying domain-driven design by designing an Amazon clone.

- Chapter 11, Designing a Strategy Game Using Design Patterns, deals with incorporating the knowledge acquired from previous chapters into designing a strategy game by using design patterns and best practices.

- Chapter 12, Networking and Security, introduces network programming in C++ and how to build a dropbox backend clone by leveraging network programming skills. This chapters also includes a discussion of how to ensure coding best practices.

- Chapter 13, Debugging and Testing, focuses on debugging C++ applications and best practices to avoid bugs in code, applying static code analysis in order to reduce issues in the program, introduction, and application of test-driven development and behavior-driven development. This chapter also includes a discussion of the difference between behaviordriven development and TDD as well as use cases.

- Chapter 14, Graphical User Interface with Qt, introduces the Qt library and its main components. This chapter also includes an understanding of the cross-platform nature of the Qt, continuing the dropbox example by building a simple desktop client.

- Chapter 15, Using C++ in Machine Learning Tasks, deals with a brief introduction to the AI concepts and recent developments in the field. This chapter also includes an introduction to machine learning and tasks such as regression analysis and clustering, as well as how to build a simple neural network.

- Chapter 16, Implementing a Dialog-Based Search Engine, deals with applying the knowledge of all previous chapters to design an efficient search engine described as dialog-based because it finds the right document by asking (and learning) the corresponding questions of the user.

작가 소개

▶About the Author
- Vardan Grigoryan
Vardan Grigoryan is a senior backend engineer and C++ developer with more than 9 years of experience. Vardan started his career as a C++ developer and then moved to the world of server-side backend development. While being involved in designing scalable backend architectures, he always tries to incorporate the use of C++ in critical sections that require the fastest execution time. Vardan loves tackling computer systems and program structures on a deeper level. He believes that true excellence in programming can be achieved by means of a detailed analysis of existing solutions and by designing complex systems.

- Shunguang Wu
Shunguang Wu is a senior professional staff at Johns Hopkins University Applied Physics Laboratory, and received his PhDs in theoretical physics and electrical engineering from Northwestern University (China) and Wright State University (USA), respectively. He published about 50 reviewed journal papers in the area of nonlinear dynamics, statistical signal processing and computer vision in his early career. His professional C++ experience started with teaching undergraduate courses in the late 1990s. Since then he has been designing and developing lots of R&D and end-user application software using C++ in world-class academic and industrial laboratories. These projects span both the Windows and Linux platforms.

리뷰

0.0

구매자 별점
0명 평가

이 작품을 평가해 주세요!

건전한 리뷰 정착 및 양질의 리뷰를 위해 아래 해당하는 리뷰는 비공개 조치될 수 있음을 안내드립니다.
  1. 타인에게 불쾌감을 주는 욕설
  2. 비속어나 타인을 비방하는 내용
  3. 특정 종교, 민족, 계층을 비방하는 내용
  4. 해당 작품의 줄거리나 리디 서비스 이용과 관련이 없는 내용
  5. 의미를 알 수 없는 내용
  6. 광고 및 반복적인 글을 게시하여 서비스 품질을 떨어트리는 내용
  7. 저작권상 문제의 소지가 있는 내용
  8. 다른 리뷰에 대한 반박이나 논쟁을 유발하는 내용
* 결말을 예상할 수 있는 리뷰는 자제하여 주시기 바랍니다.
이 외에도 건전한 리뷰 문화 형성을 위한 운영 목적과 취지에 맞지 않는 내용은 담당자에 의해 리뷰가 비공개 처리가 될 수 있습니다.
아직 등록된 리뷰가 없습니다.
첫 번째 리뷰를 남겨주세요!
'구매자' 표시는 유료 작품 결제 후 다운로드하거나 리디셀렉트 작품을 다운로드 한 경우에만 표시됩니다.
무료 작품 (프로모션 등으로 무료로 전환된 작품 포함)
'구매자'로 표시되지 않습니다.
시리즈 내 무료 작품
'구매자'로 표시되지 않습니다. 하지만 같은 시리즈의 유료 작품을 결제한 뒤 리뷰를 수정하거나 재등록하면 '구매자'로 표시됩니다.
영구 삭제
작품을 영구 삭제해도 '구매자' 표시는 남아있습니다.
결제 취소
'구매자' 표시가 자동으로 사라집니다.

개발/프로그래밍 베스트더보기

  • 요즘 개발자를 위한 시스템 설계 수업 (디렌드라 신하 , 테자스 초프라)
  • 요즘 바이브 코딩 클로드 코드 완벽 가이드 (최지호(코드팩토리))
  • AI 엔지니어링 (칩 후옌, 변성윤)
  • 요즘 당근 AI 개발 (당근 팀)
  • 처음이지만 프로처럼 쓰는 노션 Notion (박한용(노션너굴))
  • AI 에이전트 생태계 (이주환)
  • 밑바닥부터 만들면서 배우는 LLM (세바스찬 라시카, 박해선)
  • 헤드 퍼스트 소프트웨어 아키텍처 (라주 간디, 마크 리처드)
  • n8n 첫걸음 업무 자동화 부터 AI 챗봇 까지 (문세환)
  • 밑바닥부터 시작하는 웹 브라우저 (파벨 판체카, 크리스 해럴슨)
  • 데이터 삽질 끝에 UX가 보였다 (이미진(란란))
  • 바이브 코딩 너머 개발자 생존법 (애디 오스마니, 강민혁)
  • 핸즈온 바이브 코딩 (정도현)
  • 0과 1 사이 (가와타 아키라, 고이케 유키)
  • 실무로 통하는 LLM 애플리케이션 설계 (수하스 파이, 박조은)
  • 디자인 외주비 0원 시대: 나노바나나 AI 디자인 실전 가이드 (심화영)
  • 요즘 바이브 코딩 커서 AI 30가지 프로그램 만들기 (박현규)
  • 처음부터 시작하는 Next.js / React 개발 입문 (미요시 아키, 김모세)
  • 플러터 엔지니어링 (마지드 하지안, 한국 플러터 커뮤니티)
  • 이게 되네? 클로드 MCP 미친 활용법 27제 (박현규)

본문 끝 최상단으로 돌아가기

spinner
앱으로 연결해서 다운로드하시겠습니까?
닫기 버튼
대여한 작품은 다운로드 시점부터 대여가 시작됩니다.
앱으로 연결해서 보시겠습니까?
닫기 버튼
앱이 설치되어 있지 않으면 앱 다운로드로 자동 연결됩니다.
모바일 버전