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.
This project is a reference implementation for structuring Java applications using clean architecture and domain-driven design principles. It provides a template for organizing code into concentric layers, ensuring that core business rules and domain entities remain entirely independent of external frameworks, databases, and delivery mechanisms. The architecture relies on the dependency inversion principle to decouple business logic from infrastructure. By defining abstract interfaces for data access and external services, the system allows for the replacement of underlying technologies witho
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.