Modern CMake for C++: Discover a better approach to building, testing, and packaging your software (Paperback) (現代 CMake 與 C++:探索更佳的軟體建構、測試與包裝方法)

Rafal Swidzinski

買這商品的人也買了...

相關主題

商品描述

Key Features

  • Understand and automate compilation and linking with CMake
  • Manage internal and external dependencies easily
  • Add quality checks and tests as an inherent step for your builds

Book Description

Creating top-notch software is an extremely difficult undertaking. Developers researching the subject have difficulty determining which advice is up to date and which approaches have already been replaced by easier, better practices. At the same time, most online resources offer limited explanation, while also lacking the proper context and structure.

This book offers a simpler, more comprehensive, experience as it treats the subject of building C++ solutions holistically. Modern CMake for C++ is an end-to-end guide to the automatization of complex tasks, including building, testing, and packaging. You'll not only learn how to use the CMake language in CMake projects, but also discover what makes them maintainable, elegant, and clean. The book also focuses on the structure of source directories, building targets, and packages. As you progress, you'll learn how to compile and link executables and libraries, how those processes work, and how to optimize builds in CMake for the best results. You'll understand how to use external dependencies in your project – third-party libraries, testing frameworks, program analysis tools, and documentation generators. Finally, you'll get to grips with exporting, installing, and packaging for internal and external purposes.

By the end of this book, you'll be able to use CMake confidently on a professional level.

What you will learn

  • Understand best practices for building C++ code
  • Gain practical knowledge of the CMake language by focusing on the most useful aspects
  • Use cutting-edge tooling to guarantee code quality with the help of tests and static and dynamic analysis
  • Discover how to manage, discover, download, and link dependencies with CMake
  • Build solutions that can be reused and maintained in the long term
  • Understand how to optimize build artifacts and the build process itself

Who this book is for

The book is for build engineers and software developers with knowledge of C/C++ programming who are looking to learn CMake to automate the process of building small and large software solutions. If you are someone who's just getting started with CMake, a long-time GNU Make user, or simply looking to brush up on the latest best practices, this book is for you.

商品描述(中文翻譯)

主要特點


  • 了解並自動化使用CMake進行編譯和鏈接

  • 輕鬆管理內部和外部依賴

  • 將品質檢查和測試作為構建過程中固有的步驟

書籍描述

創建優質軟體是一項非常困難的任務。研究這個主題的開發人員很難確定哪些建議是最新的,哪些方法已被更簡單、更好的做法取代。同時,大多數線上資源提供的解釋有限,同時缺乏適當的上下文和結構。

本書提供了一種更簡單、更全面的體驗,因為它全面地處理了C++解決方案的構建主題。《現代CMake for C++》是一本從頭到尾的指南,介紹了複雜任務的自動化,包括構建、測試和打包。您不僅將學習如何在CMake項目中使用CMake語言,還將發現什麼使它們易於維護、優雅和乾淨。本書還關注源代碼目錄的結構、構建目標和打包。隨著學習的進展,您將了解如何編譯和鏈接可執行文件和庫,這些過程的工作原理以及如何在CMake中優化構建以獲得最佳結果。您將了解如何在項目中使用外部依賴 - 第三方庫、測試框架、程序分析工具和文檔生成器。最後,您將掌握內部和外部目的的導出、安裝和打包。

通過閱讀本書,您將能夠自信地在專業水平上使用CMake。

您將學到什麼


  • 了解構建C++代碼的最佳實踐

  • 通過專注於最有用的方面,獲得對CMake語言的實用知識

  • 使用尖端工具確保代碼質量,包括測試和靜態、動態分析

  • 發現如何使用CMake管理、發現、下載和鏈接依賴項

  • 構建可以長期重複使用和維護的解決方案

  • 了解如何優化構建產物和構建過程本身

本書適合對象

本書適合構建工程師和具有C/C++編程知識的軟體開發人員,他們希望學習使用CMake自動化構建小型和大型軟體解決方案的過程。如果您剛開始使用CMake,是長期使用GNU Make的用戶,或者只是想了解最新的最佳實踐,本書適合您。

作者簡介

Rafał Świdziński works as a staff engineer at Google. With over 10 years of professional experience as a full stack developer, he has been able to experiment with a vast multitude of programming languages and technologies. During this time, he has been building software under his own company and for corporations including Cisco Meraki, Amazon, and Ericsson. Originally from Łódź, Poland, he now lives in London, UK, from where he runs a YouTube channel, "Smok," discussing topics related to software development. He tackles technical problems, including real-life and work-related challenges encountered by many people in the field. Throughout his work, he explains the technical concepts in detail and demystifies the art and science behind the role of software engineer. His primary focus is on high-quality code and the craftsmanship of programming.

作者簡介(中文翻譯)

Rafał Świdziński在Google擔任一名工程師。擁有超過10年的全端開發經驗,他能夠嘗試各種程式語言和技術。在此期間,他曾經為自己的公司以及Cisco Meraki、Amazon和Ericsson等公司開發軟體。他原本來自波蘭的Łódź,現居於英國倫敦,並在那裡經營一個名為「Smok」的YouTube頻道,討論與軟體開發相關的主題。他解決技術問題,包括許多人在這個領域遇到的現實生活和工作挑戰。在他的工作中,他詳細解釋技術概念,揭示軟體工程師背後的藝術和科學。他的主要關注點是高品質的程式碼和程式設計的技巧。

目錄大綱

Table of Contents

  1. First Steps with CMake
  2. The CMake Language
  3. Setting Up Your First CMake Project
  4. Working with Targets
  5. Compiling C++ Sources with CMake
  6. Linking with CMake
  7. Managing Dependencies with CMake
  8. Testing Frameworks
  9. Program Analysis Tools
  10. Generating Documentation
  11. Installing and Packaging
  12. Creating Your Professional Project
  13. Appendix Miscellaneous Commands

目錄大綱(中文翻譯)

目錄


  1. 使用CMake的第一步

  2. CMake語言

  3. 設置你的第一個CMake項目

  4. 使用CMake處理目標

  5. 使用CMake編譯C++源代碼

  6. 使用CMake進行鏈接

  7. 使用CMake管理依賴

  8. 測試框架

  9. 程序分析工具

  10. 生成文檔

  11. 安裝和打包

  12. 創建你的專業項目

  13. 附錄:其他命令