40 مستودعات
Project-based learning resources for building high-performance, memory-efficient system software using C and C++.
Explore 40 awesome GitHub repositories matching programming languages & runtimes · C/C++ Tutorials. Refine with filters or upvote what's useful.
هذا المشروع عبارة عن مستودع مركزي يقوده المجتمع للدروس العملية المصممة لتسهيل اكتساب المهارات من خلال البناء العملي لتطبيقات برمجية واقعية. يعمل كدليل شامل يجمع التوثيق الخارجي والمواد التعليمية، مما يوفر مساراً منظماً للمطورين لإتقان لغات برمجة ومجالات تقنية محددة. يتميز المستودع بتنظيم الموارد التقنية المتباينة في هيكل هرمي قائم على التصنيف يتيح للمطورين اكتشاف وتصفح تخصصات هندسة البرمجيات المتنوعة. من خلال تجميع المشاريع الفردية في تسلسلات منطقية، فإنه يوفر خارطة طريق تساعد المتعلمين على التقدم من المفاهيم الأساسية إلى التنفيذ المتقدم. يتم الحفاظ على المحتوى من خلال مساهمات تعاونية، مما يضمن بقاء المجموعة مورداً حالياً وواسع النطاق لمجتمع المطورين. يغطي المشروع نطاقاً واسعاً من القدرات، عبر مجالات مثل تطوير الويب full-stack، وهندسة تطبيقات الهاتف المحمول، وتطوير الألعاب التفاعلية. يتضمن موارد لمجموعة واسعة من لغات البرمجة، بدءاً من اللغات على مستوى النظام مثل C و C++ و Rust وصولاً إلى اللغات عالية المستوى والوظيفية مثل Python و Ruby و Haskell و Clojure. تدعم هذه المواد الإتقان التقني المتخصص في مجالات تشمل تعلم الآلة، وعلوم البيانات، وبرمجة الشبكات. تم تنظيم الدليل للسماح بالاكتشاف الفعال حسب لغة البرمجة والمجال التقني، مع جدول محتويات واضح لمساعدة المستخدمين في تحديد موقع معلومات محددة. يعمل كفهرس مستمر للروابط الخارجية، حيث يربط المطورين بالتوثيق والدروس التعليمية التابعة لجهات خارجية لتعميق فهمهم للمفاهيم التقنية.
Focuses on high-performance system software development using low-level language features in a project-based format.
CPlusPlusThings is an educational and technical resource collection featuring C++ coding exercises, a concurrency library, and a programming guide. It provides structured drills and real-world challenges to reinforce language proficiency and offers technical analysis of the internal implementation of the standard library. The project implements software architecture patterns and industry-standard idioms, including the singleton pattern and resource acquisition is initialization. It also includes a framework for building logging systems with configurable severity levels and output destinations
Offers structured coding exercises and real-world challenges for learning advanced C++ language features.
This project is a comprehensive technical interview question bank and reference library designed for software engineering roles at major technology companies. It serves as a study guide and knowledge base covering the core principles of high-performance systems programming and computer science theory. The collection focuses on deep technical domains, including C++ language mastery, distributed systems design, and database engineering. It provides detailed material on consensus protocols, cluster coordination, and the architectural differences between SQL and NoSQL implementations. The resour
Details the implementation of Resource Acquisition Is Initialization patterns for deterministic resource cleanup.
This project is an educational repository and collection of algorithms implemented in C++. It provides a structured set of code examples covering mathematics, computer science, and physics for reference and learning. The collection includes implementations of data structures for managing hierarchical and linear data, such as binary search trees and AVL trees. It also features simulations of computer science concepts, including CPU scheduling and the resolution of combinatorial puzzles. The repository further covers cryptographic examples through the implementation of classic encryption and e
Provides a comprehensive collection of C++ code examples and algorithm implementations for educational and learning purposes.
This project is a comprehensive, community-maintained knowledge base and toolkit designed for competitive programming. It serves as a centralized repository for algorithmic theory, data structures, and mathematical techniques, providing a structured reference for informatics and collegiate programming competitions. The project distinguishes itself by integrating educational content with a robust suite of automation utilities. It provides a complete workflow for competitive programming, including tools for automated test case generation, solution verification, and direct interaction with onlin
Extends the lifetime of temporary objects by binding them to references, ensuring data remains valid during complex operations.
Deepagents is an LLM agent orchestration platform and stateful application server designed for deploying and managing AI agents built with computational graphs. It provides a containerized runtime environment that handles agent execution, state persistence, and the versioning of AI assistants. The platform distinguishes itself through deep integration with the Model Context Protocol, allowing agents to function as servers that expose tools and capabilities to external clients. It features a sophisticated observability suite for capturing execution traces, performing LLM-based evaluations agai
Deletes old conversation checkpoints and metadata based on a time-to-live strategy.
This project is a comprehensive collection of reference materials, including a language cheatsheet, a standard library reference, and a concurrency reference. It serves as a guide to modern C++ development, focusing on language syntax, standard library utilities, and template metaprogramming patterns. The repository provides specific guidance on template metaprogramming through a dedicated guide covering compile-time evaluation, type deduction, and variadic template execution. The materials cover a broad range of capabilities, including asynchronous programming, memory management, and system
Comprehensive reference and learning resource for implementing modern C++ standards and features.
The Rust Programming Language Book is the official technical guide and educational resource for the Rust language. It provides a comprehensive walkthrough of the language's design, focusing on its core identity as a systems programming language that enforces memory safety and high-performance execution without the need for a garbage collector. The project is distinguished by its focus on ownership, borrowing, and lifetime tracking, which allow the compiler to verify memory safety and thread safety at compile time. It covers the language's unique approach to zero-cost abstractions, including t
Enforces memory safety by explicitly defining the relationship between borrowed references in functions and structs.
Dagger is a compile-time dependency injection framework for Java and Android applications. It automates the construction and wiring of object graphs by generating static source code during the build process, which eliminates the need for reflection or runtime bytecode generation. The framework distinguishes itself by performing strict validation of the entire dependency structure before the application runs, ensuring that all required bindings are satisfied and identifying circular references early. It manages object lifecycles through scoped containers and supports lazy resolution, allowing
Manages object lifecycles by storing instances within specific component containers to control memory usage and ensure proper reuse.
This project is a comprehensive educational resource and programming course covering C++ language semantics and features from C++03 through C++26. It provides structured tutorials and technical guides focused on modern C++ development. The material offers specialized instruction on template metaprogramming, including the use of type traits and compile-time computations. It features detailed guides on concurrency and parallelism for multi-core execution, as well as a reference for software design applying SOLID principles and RAII. Additionally, it covers build performance optimization to redu
Provides a structured educational course and technical guides for learning C++ language semantics from C++03 to C++26.
This project provides a framework for binding Rust and Python, enabling the creation of native extension modules and the embedding of the Python interpreter within host applications. It functions as a cross-language interoperability library that facilitates the execution of scripts, the definition of classes, and the sharing of data structures across the boundary of the two runtimes. The framework distinguishes itself through the use of procedural macros to automate the generation of boilerplate code, simplifying the process of exposing native functions and data types. It employs type-level m
Uses type-level tokens to track the global interpreter lock and ensure safe object access.
This project is a comprehensive educational framework designed to guide learners through the complexities of systems engineering and low-level software development. It provides structured learning paths that integrate hardware simulation, source code analysis, and project-based exercises to help developers master the foundational concepts of computer architecture, operating systems, and firmware design. The curriculum distinguishes itself by emphasizing direct interaction with system internals, requiring learners to examine and modify existing open-source kernel and driver implementations. By
Provides project-based learning resources for building high-performance system software using the C programming language.
LearnOpenGL is an educational resource and collection of C++ graphics implementations designed to teach the OpenGL graphics API. It provides code samples and reference implementations for real-time rendering, focusing on the creation of 2D and 3D visuals. The project includes practical examples of GLSL shaders for rendering 3D geometry and visual effects. These implementations are organized as a cross-platform graphics project, allowing the code to be built and executed across different operating systems. The repository covers the fundamental concepts of graphics programming, including shade
Provides source code demonstrating real-time rendering and shader programming using C++.
Firefox is a cross-platform web browser engine designed to render web content, execute JavaScript, and manage secure browsing sessions. It utilizes a multi-process isolation architecture that distributes browser tasks across independent operating system processes to ensure stability and prevent site-specific failures from impacting the entire application. The engine incorporates a sandboxed execution environment to restrict web content and untrusted scripts to isolated memory compartments, enforcing security policies that prevent unauthorized access to system resources. The project distinguis
Tracks object references and memory usage to prevent leaks and ensure resources are cleaned up.
This project is a C++ template tutorial and metaprogramming guide. It provides instructional content on using templates to implement generic programming and execute Turing-complete logic during the compilation process. The guide serves as a reference for static type dispatching, substitution failure, and the use of concepts to ensure type safety. It covers methods for selecting function implementations at compile time to eliminate runtime branching. The material addresses compile-time type manipulation, including the transformation of type qualifiers and the use of constraints to prevent inv
Provides a structured tutorial for learning generic programming and compile-time logic using C++ templates.
Koin is a dependency injection framework for Kotlin applications that manages object lifetimes and resolves dependencies through a lightweight container. It functions as a multiplatform library, allowing shared object definitions and resource bindings to be reused across different target platforms and source sets. The framework provides a system for resolving dependencies directly within user interface components to decouple business logic from view implementations. It includes a compile-time dependency validator that analyzes dependency graphs during the build process to detect missing bindi
Binds object lifetimes to specific application contexts to automate resource sharing and memory cleanup.
Seastar is a C++ server application framework and asynchronous programming library designed for building high-performance, shared-nothing server applications. It functions as a high-performance I/O engine providing direct disk and network access through a shared-nothing framework that partitions data and execution across CPU cores. The framework distinguishes itself through a thread-per-core architecture that eliminates locking and resource contention by assigning one execution thread to each physical CPU core. It implements a userspace TCP/IP stack and kernel-bypass techniques, integrating w
Handles object ownership across asynchronous boundaries using move semantics and reference-counted pointers.
This project is a curated collection of best practices, coding standards, and style guidelines for writing C++ source code. It serves as a software engineering resource focused on improving code safety, maintainability, and performance. The resource covers multiple domains of C++ development, including safety engineering to reduce bugs and memory errors, as well as code optimization for increased efficiency. It provides a set of collaborative guidelines for consistent code formatting and structural patterns across projects.
Provides industry best practices for writing C++ code that is easier to read, debug, and update.
This repository is a C++ study collection and programming courseware designed to support a structured language curriculum. It functions as a comprehensive study repository containing conceptual notes and verified exercise solution sets for learning the C++ programming language. The project provides a set of working source code implementations and answers for practical programming problems. These materials enable language learning and programming practice by allowing users to implement code and verify their logic against solved exercises. The content is organized into a chapter-based director
Facilitates the study of C++ fundamentals and core concepts through structured notes and conceptual summaries.
This project is an educational blog and learning resource dedicated to the Rust programming language. It provides a collection of curated guides, technical articles, and structured learning paths designed to teach language fundamentals, concurrency, and systems programming. The repository distinguishes itself by offering practical implementation tutorials for complex systems. This includes detailed guides on compiler development—specifically translating source code into targets such as ARM64, x86_64, LLVM IR, and WebAssembly—as well as networking examples for building multithreaded chat serve
Provides detailed technical articles explaining Rust's lifetime concepts and borrow checking for memory safety.