10 مستودعات
Principles for defining classes and organizing class hierarchies.
Distinguishing note: Focuses on structural class organization rather than specific language syntax.
Explore 10 awesome GitHub repositories matching software engineering & architecture · Object-Oriented Design Patterns. Refine with filters or upvote what's useful.
This project is a collection of engineering guidelines and best practices for writing readable and maintainable JavaScript source code. It serves as a clean code guide and refactoring manual to help developers improve the structure of their codebases. The repository provides a reference for applying SOLID principles to reduce coupling and enable extensions without modifying existing logic. It includes a naming convention standard for using explicit, searchable identifiers and a guide for asynchronous patterns to replace nested callbacks with clearer execution flows. The guidelines cover soft
Guides the implementation of structured and extensible object hierarchies using classes and composition.
This project is a comprehensive educational resource designed to help developers master object-oriented design and architectural patterns. It serves as a structured reference for understanding how to organize classes and objects to improve code maintainability, resolve recurring development challenges, and prepare for technical engineering assessments. The guide covers the three primary categories of design patterns: creational, structural, and behavioral. Each pattern is explained through practical examples that demonstrate how to manage object instantiation, simplify complex interfaces, and
Implements the Abstract Factory pattern to create families of related objects without specifying concrete classes.
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-
Organizes related classes into hierarchical structures to define clear representations and interfaces.
This repository serves as a technical reference and educational resource for implementing software design patterns within the Swift programming language. It provides a collection of common architectural patterns designed to help developers structure codebases for improved maintainability, scalability, and system organization. The project focuses on applying fundamental object-oriented and protocol-oriented principles to manage relationships between classes and objects. It demonstrates how to use language-level interfaces to define shared behaviors and how to organize components into cohesive
Provides principles for defining classes and organizing class hierarchies to create robust and reusable application code.
This project is a comprehensive programming course and educational curriculum designed to transition developers from basic scripting to advanced software development. It provides structured guides and technical exercises focusing on language internals, professional software architecture, and sophisticated programming techniques. The curriculum distinguishes itself through a deep focus on language internals, analyzing object behavior and memory efficiency to improve execution speed. It provides specialized instruction on metaprogramming using decorators and dynamic attributes, as well as async
Instructs on mapping structural and behavioral logic to class hierarchies using standard object-oriented design patterns.
This project is a PHP clean code guide and software architecture reference. It provides a set of standards, naming conventions, and design patterns intended to improve the long-term maintainability and readability of PHP codebases. The guide emphasizes a structured approach to refactoring and system design, focusing on the application of SOLID principles to reduce coupling and increase extensibility. It advocates for object-oriented design through the use of composition over inheritance, the use of final classes to prevent unexpected overrides, and the implementation of strict type declaratio
Applies SOLID object-oriented design principles to reduce coupling and increase extensibility in PHP.
This project is a comprehensive library of practical Python code examples and patterns. It provides a collection of scripts and snippets designed to demonstrate a wide range of programming tasks, from basic syntax to advanced implementation patterns. The repository focuses on several core domains, including the implementation of concurrency and multithreading examples, data analysis snippets for cleaning and manipulating tabular data, and various data visualization examples. It also covers automation scripts for file system management and a variety of general programming patterns. Additional
Illustrates object-oriented design patterns including class methods, property decorators, and metaclasses.
هذا المشروع عبارة عن مجموعة مرجعية من الأمثلة العملية التي توضح تنفيذ أنماط تصميم البرمجيات الشائعة في Kotlin. يعمل كدليل لأفضل الممارسات المعمارية ومبادئ البرمجة كائنية التوجه من خلال تطبيق الأنماط السلوكية والإنشائية والهيكلية. توفر المجموعة تطبيقات ملموسة لتوضيح كيفية فصل إنشاء الكائنات، وإدارة التواصل والمسؤولية بين الكائنات، وتنظيم علاقات الفئات والكائنات المعقدة. يغطي المرجع الأنماط الإنشائية مثل المصانع والبناة، والأنماط الهيكلية بما في ذلك المحولات والمركبات، والأنماط السلوكية مثل المراقبين والاستراتيجيات.
Implements the abstract factory pattern to create families of related objects without specifying concrete classes.
هذا المشروع عبارة عن مجموعة من التفسيرات المبسطة وتنفيذات الكود لأنماط تصميم البرمجيات الشائعة باستخدام JavaScript. يعمل كدليل لتنفيذ أنماط التصميم الإنشائية والهيكلية والسلوكية لحل مشاكل هندسة البرمجيات. يصنف المورد الأنماط إلى ثلاث مجموعات رئيسية. تركز الأنماط الإنشائية على إنشاء الكائنات المرن وإدارة الموارد. تنظم الأنماط الهيكلية علاقات الكائنات والواجهات لتشكيل هياكل فعالة. تدير الأنماط السلوكية التواصل والتفاعل بين الكائنات. تغطي المادة مفاهيم أساسية بما في ذلك البرمجة الموجهة للكائنات، وتخطيط هندسة البرمجيات، واستراتيجيات إعادة هيكلة الكود لتقليل الديون التقنية.
Implements the Abstract Factory pattern to create families of related objects.
This repository is a collection of practical code samples and an idiomatic programming guide for the Python language. It serves as a reference for implementing advanced language features, data structures, and professional coding standards. The project focuses on demonstrating object-oriented architectures and structural design patterns. It provides a set of source files that illustrate the use of advanced Python capabilities to create readable and efficient software designs. The implementation covers asynchronous and concurrent execution patterns, as well as idiomatic software design and pro
Applies professional object-oriented design patterns and structural layouts to create scalable Python code.