CMake Tests and Tooling for CC Projects 2022 Edition
What you’ll learn
CMake (Command Line and GUI)
Create modern C/C++ Projects
Use external Projects via Git, Conan and VCPKG
Automate the HTML Documentation (Doxygen)
Unit Testing with Catch2
Code Coverage of the Unit Tests
Continuous Integration with Github Actions
Tooling: Clang-Format, Clang-Tidy, Cppcheck
Tooling: Sanitizer, Cmake-Format, Pre-Commit
VSCcode and VS 2022 with GCC, Clang and MSVC
Requirements
C/C++ Basics
Commandline Basics
Description
Reviews:”Thank you Jan for this course which allowed me to learn enough about CMake and more. I am very happy.” (Cyrille Guetsop Guimapi)”Very profound and exciting course. Appropriate level andvery good speaker.” (Felix Maschek)”Am now almost through and very satisfied. I was looking for a good overview of (c)makefiles and its possibilities. The course is definitely recommended for this.” (Franz Gaar)”This exciting course provides solid knowledge about CMake and its use with other professional tools.” (Frank Behrendt)”Very comprehensive course for anyone interested in creating and maintaining professional software projects (in this case C++). Besides the basic understanding of Makefiles and the detailed introduction to CMake, best practices are not missed out. Working with GitHub, continuous integration tools, gtest and a benchmarking framework is also included.” (Steffen Lang)Course Description:You want to take the next step as a C/C++ developer to get a professional foothold in these exciting languages?Then my course is the right one for you.This course consists of the following topics: Installing the software for Windows, Linux and MacWorks for any GCC, Clang and MSVC Compiler CMake Tutorial (Libraries, Targets, Install etc.) Doxygen DocumentationVCPKG and Conan Package ManagerUnit Testing with Catch2Code Coverage and CI TestingTooling: LTO, Cppcheck, Clang-Tidy, Clang-Format, pre-commit, cmake-formatTooling: Sanitizers, Workflow in VSCode and VS2022Debugging and Running the Software.Become a professional today, in the technology of tomorrow!See you in class!
Overview
Section 1: Introduction
Lecture 1 Introduction
Lecture 2 Windows: Software Installation – Part 1
Lecture 3 Windows: Software Installation – Part 2
Lecture 4 Linux: Software Installation – Part 1
Lecture 5 Linux: Software Installation – Part 2
Lecture 6 Mac: Software Installation
Lecture 7 Course Guide
Lecture 8 Course Materials
Lecture 9 Visual Studio Code Setup
Lecture 10 Windows: WSL in VSCode
Section 2: Modern CMake
Lecture 11 Prologue to the chapter
Lecture 12 Hello World Example
Lecture 13 CMake Command Line – Part 1
Lecture 14 Basic Project Strcuture
Lecture 15 Intermediate Project Structure
Lecture 16 Variables and Options
Lecture 17 CMake Command Line – Part 2
Lecture 18 Configure File
Lecture 19 Sources and Headers
Lecture 20 CMake Command Line – Part 3
Lecture 21 External Libraries with Git Submodule
Lecture 22 Dependency Graph – Part 1
Lecture 23 External Libraries with Fetch Content
Lecture 24 Doxygen Documenation
Lecture 25 Unit Testing with Catch2
Lecture 26 Dependency Graph – Part 2
Lecture 27 Public, Interface and Private
Lecture 28 Final Github Repository
Lecture 29 Compiler Warnings
Lecture 30 Clang-Tidy and Cppcheck
Lecture 31 Clang-Format and Cmake-Format
Lecture 32 Link Time Optimization (LTO)
Lecture 33 Sanitizer (Gcc und Clang)
Lecture 34 Install Conan and VCPKG
Lecture 35 Conan
Lecture 36 VCPKG
Lecture 37 Which Tool for external Libraries?
Lecture 38 Github Pages
Lecture 39 Code Coverage
Lecture 40 Github Actions
Lecture 41 Codecov
Lecture 42 Pre-Commit
Lecture 43 Install Command
Lecture 44 Shared vs. Static Library
Lecture 45 CMake GUI
Lecture 46 Windows: Visual Studio 2022 Project
Lecture 47 ImGui and C Template Project
Section 3: Conclusion
Lecture 48 Conclusion
Lecture 49 Bonus Lecture
Every C and C++ Programmer
Course Information:
Udemy | English | 4h 8m | 2.72 GB
Created by: Jan Schaffranek
You Can See More Courses in the Developer >> Greetings from CourseDown.com