awesome-repositories.com
博客
awesome-repositories.com

通过 AI 驱动的搜索,发现最优秀的开源仓库。

探索精选搜索开源替代品自托管软件博客网站地图
项目关于排名机制媒体报道MCP 服务器
法律隐私政策服务条款
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
isocpp avatar

isocpp/CppCoreGuidelines

0
View on GitHub↗
45,100 星标·5,550 分支·CSS·9 次浏览isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines↗

CppCoreGuidelines

The CppCoreGuidelines is a comprehensive software engineering standard that provides a curated framework of coding conventions and design principles for C++. It serves as an authoritative guide for writing safe, efficient, and maintainable code by establishing high-level architectural patterns and organizational principles for large-scale projects. The guidelines emphasize the use of a strong, static type system to ensure memory safety and enforce consistent resource management patterns.

The project distinguishes itself by promoting the zero-overhead abstraction principle, ensuring that high-level language features remain performant. It provides specific, actionable recommendations for modern language usage, including robust error handling, template-based generic programming, and safe concurrency models. By offering a foundation for profile-based static analysis, the guidelines enable developers and automated tools to enforce safety constraints and identify anti-patterns directly within their codebases.

Beyond these core areas, the documentation covers a broad spectrum of software development concerns, ranging from interface design and class hierarchy organization to source file structure and naming conventions. It also includes guidance on leveraging the standard library and maintaining compatibility with legacy programming styles. The repository is maintained as a living document, providing a structured reference for developers aiming to improve the integrity and reliability of their software systems.

Features

  • Software Architecture Design - Establishes structural patterns to ensure long-term maintainability and modularity.
  • Software Engineering Standards - Provides a comprehensive set of principles for writing safe, efficient, and maintainable software.
  • Type System Tools - Uses a strong, static type system to catch errors at compile time and ensure memory safety.
  • Development Best Practices - Provides a framework of conventions to ensure consistency and readability across projects.
  • Resource Management Patterns - Establishes patterns for the reliable management of memory, file handles, and other system resources.
  • Resource Management Standards - Provides consistent patterns for acquiring and releasing resources to prevent leaks.
  • Language Specifications - Offers authoritative guidance on using modern language features to improve code safety.
  • High Performance Engineering - Outlines engineering strategies for minimizing latency and overhead in demanding environments.
  • Performance Optimization Guidelines - Provides specific rules for minimizing resource usage and latency in high-performance applications.
  • Educational Resources - Best practices and rules for C++ development.
  • 学习资源 - Official set of C++ coding guidelines.
  • Generics & Templates - Parameterizes algorithms and data structures by types at compile time to generate efficient, type-safe code.
  • Error Handling Strategies - Defines reliable strategies for maintaining system integrity during runtime failures.
  • Interface Design Principles - An interface is a contract between two parts of a program. Precisely stating what is expected of a supplier of a service and a user of that service is essential. Having good (easy-to-understand, encouraging efficient use
  • Software Development Philosophies - Establishes foundational principles for expressing intent directly in code and maintaining static type safety.
  • Static Analysis - Defines a structured collection of rules to help identify potential errors and anti-patterns.
  • Standard Libraries - Provides guidance on using standard library features to reduce code complexity.
  • Concurrency Patterns - Provides patterns for executing multiple tasks simultaneously to improve system responsiveness and throughput.
  • Concurrent Programming Patterns - Provides architectural guidance for building thread-safe and parallel systems.
  • Coding Profiles - Defines structured profiles to enforce consistent and safe coding standards.
  • Functional Design Patterns - Structures computations into modular, meaningfully named functions that transition the system between consistent states.
  • Generic Programming Patterns - Promotes the use of generic patterns to reduce code duplication and improve type safety.
  • Immutability Strategies - Promotes immutability to simplify program reasoning and prevent race conditions.
  • Interface Design Patterns - Defines clear contracts between program components by isolating declarations in header files.
  • Zero-Overhead Abstractions - Designs high-level language features that compile into machine code performing as efficiently as hand-written low-level instructions.

Star 历史

isocpp/cppcoreguidelines 的 Star 历史图表isocpp/cppcoreguidelines 的 Star 历史图表

AI 搜索

探索更多 awesome 仓库

用简单的语言描述您的需求 —— AI 将根据相关性为您从数千个精选开源项目中进行排序。

Start searching with AI

CppCoreGuidelines 的开源替代方案

相似的开源项目,按与 CppCoreGuidelines 的功能重合度排序。
  • ziglang/zigziglang 的头像

    ziglang/zig

    43,123在 GitHub 上查看↗

    Zig is a general-purpose systems programming language designed for high-performance applications that require manual memory management and direct control over hardware resources. It prioritizes predictable execution by enforcing explicit control flow and requiring functions to accept explicit memory allocators, ensuring that all heap operations and logic paths remain visible to the developer. The language distinguishes itself through a powerful compile-time metaprogramming engine that allows for arbitrary code execution during the build process, enabling advanced reflection and the generation

    Zigcompilerlanguagezig
    在 GitHub 上查看↗43,123
  • google/comprehensive-rustgoogle 的头像

    google/comprehensive-rust

    33,049在 GitHub 上查看↗

    Comprehensive Rust is a structured educational curriculum designed to teach the Rust programming language, focusing on its core principles of memory safety, performance, and type correctness. The project provides a comprehensive learning path for software engineers, covering the language's ownership model, borrow checking, and compile-time validation mechanisms that eliminate common memory-related errors without the need for a garbage collector. The curriculum distinguishes itself by offering specialized modules that demonstrate how to apply these safety guarantees in diverse, high-performanc

    Rustandroidclassroomcourse
    在 GitHub 上查看↗33,049
  • carbon-language/carbon-langcarbon-language 的头像

    carbon-language/carbon-lang

    33,829在 GitHub 上查看↗

    Carbon is an experimental, compiled systems programming language designed as a successor to C++. It focuses on providing a high-performance environment for modern software development while prioritizing memory safety and expressive generic programming. The language is built to support performance-critical engineering, allowing for precise control over memory layout and execution flow. A primary differentiator of the project is its bidirectional interoperability with existing C++ codebases. This allows developers to call functions and share data between languages without manual wrappers, facil

    C++carbon-langcompilercpp
    在 GitHub 上查看↗33,829
  • nushell/nushellnushell 的头像

    nushell/nushell

    39,743在 GitHub 上查看↗

    Nushell is a cross-platform shell and programming language designed to treat all input and output as structured data rather than raw text streams. By enforcing data types and command signatures, it provides a consistent environment for building robust, pipeline-oriented workflows. The shell allows users to chain commands that pass structured objects between stages, enabling complex data processing and automation tasks that remain predictable across different operating systems. What distinguishes the project is its focus on interactive data exploration and modular extensibility. Users can quer

    Rustnushellrustshell
    在 GitHub 上查看↗39,743
查看 CppCoreGuidelines 的所有 30 个替代方案→

常见问题解答

isocpp/cppcoreguidelines 是做什么的?

The CppCoreGuidelines is a comprehensive software engineering standard that provides a curated framework of coding conventions and design principles for C++. It serves as an authoritative guide for writing safe, efficient, and maintainable code by establishing high-level architectural patterns and organizational principles for large-scale projects. The guidelines emphasize the use of a strong, static type system to ensure memory safety and enforce consistent resource…

isocpp/cppcoreguidelines 的主要功能有哪些?

isocpp/cppcoreguidelines 的主要功能包括:Software Architecture Design, Software Engineering Standards, Type System Tools, Development Best Practices, Resource Management Patterns, Resource Management Standards, Language Specifications, High Performance Engineering。

isocpp/cppcoreguidelines 有哪些开源替代品?

isocpp/cppcoreguidelines 的开源替代品包括: ziglang/zig — Zig is a general-purpose systems programming language designed for high-performance applications that require manual… google/comprehensive-rust — Comprehensive Rust is a structured educational curriculum designed to teach the Rust programming language, focusing on… carbon-language/carbon-lang — Carbon is an experimental, compiled systems programming language designed as a successor to C++. It focuses on… nushell/nushell — Nushell is a cross-platform shell and programming language designed to treat all input and output as structured data… huihut/interview — This project is a comprehensive technical knowledge base designed to support developers in mastering systems… uber-go/guide — This project is a collection of guidelines and best practices for the Go programming language, providing a…