6 مستودعات
Refining code interfaces and dependency management to improve the ease of writing automated tests.
Distinct from Code Optimization: Focuses on architectural structure for testability rather than runtime performance optimization.
Explore 6 awesome GitHub repositories matching software engineering & architecture · Testability Optimizations. Refine with filters or upvote what's useful.
This project is an AI agent workflow framework and development toolkit designed for AI-driven software engineering. It provides a system of modular instructions, prompt libraries, and standardized routines to orchestrate complex engineering sequences and automate the decomposition of plans into technical tasks. The system differentiates itself through advanced context management and prompt engineering, using state compression and handoff documents to preserve conversation history between different AI sessions. It employs a structured library of prompt skills and high-signal trigger words to e
Optimizes interfaces to accept dependencies and return results, reducing side effects to improve testability.
This project is a comprehensive collection of software design patterns implemented in Python. It serves as a reference for architectural, behavioral, creational, and structural patterns to guide the organization of Python applications. The collection covers behavioral strategies for managing object communication and state, creational techniques for controlling object instantiation, and structural methods for composing classes and objects into flexible hierarchies. It also includes architectural references for system-wide structuring, such as multi-tier architectures and blackboard models. Th
Uses dependency injection and decoupling techniques in Python to improve code isolation and unit testability.
Learngo is an interactive coding course and programming tutorial designed to teach the Go language. It functions as an educational guide that combines instructional materials with a learning-by-doing approach to help users master language syntax and practical application. The project focuses on idiomatic Go programming, providing a practical reference for writing code that follows industry standards and conventions. It emphasizes the development of testable code and the implementation of maintainable programming patterns. The curriculum is delivered through a series of hand-crafted examples,
Instructs users on structuring Go applications to ensure they are easy to test and verify.
This project is a comprehensive guide and set of engineering standards for writing readable, maintainable, and scalable JavaScript code. It provides a framework for software architecture, refactoring patterns, and clean coding practices designed to improve codebase health and longevity. The guide emphasizes the application of SOLID principles and architectural strategies such as dependency inversion and the separation of concerns. It focuses on transforming complex conditional logic through polymorphism and refactoring, while promoting a transition from imperative loops to declarative functio
Promotes the use of pure functions and dependency injection to optimize code for easier automated testing.
هذا المشروع عبارة عن تنفيذ مرجعي لهيكلة تطبيقات Java باستخدام الهندسة النظيفة ومبادئ التصميم القائم على النطاق (domain-driven design). يوفر قالباً لتنظيم الكود في طبقات متحدة المركز، مما يضمن بقاء قواعد العمل الأساسية وكيانات النطاق مستقلة تماماً عن الأطر الخارجية، وقواعد البيانات، وآليات التسليم. تعتمد الهندسة على مبدأ عكس التبعية لفصل منطق العمل عن البنية التحتية. من خلال تعريف واجهات مجردة للوصول إلى البيانات والخدمات الخارجية، يسمح النظام باستبدال التقنيات الأساسية دون الحاجة إلى تعديلات على منطق التطبيق الأساسي. تدير طبقة تهيئة مخصصة حقن التبعية، مما يعزل الأسلاك الخاصة بإطار العمل عن كود النطاق. يدعم الكود المصدري استراتيجية اختبار شاملة تتحقق من سلوك النظام عبر مستويات متعددة، بما في ذلك منطق الوحدة المعزول، وسيناريوهات القبول التي تركز على الأعمال، ورحلات النهاية إلى النهاية. يسهل هذا النهج المعياري الصيانة طويلة الأجل من خلال ضمان بقاء إجراءات العمل مغلفة كوحدات مستقلة وقابلة للاختبار.
Designs application components with clear interfaces to enable comprehensive testing without requiring external system environments.
Kotlin-inject is a dependency injection framework for Kotlin that utilizes compile-time code generation to construct type-safe object graphs. By processing declarative annotations during the build process, the library eliminates the need for runtime reflection, ensuring that dependency resolution and validation occur before the application executes. The framework distinguishes itself through its native support for Kotlin Multiplatform, enabling consistent dependency management across shared and platform-specific codebases. It provides specialized mechanisms for assisted injection, allowing de
Facilitates testable software design by allowing production implementations to be substituted with mocks during the testing lifecycle.