|
Kanda Foundation 0.8.0
|
The Kanda SDK is designed for building enterprise applications, not games. In enterprise settings, many developers will work on the same codebase over long periods of time. Therefore, it's important to adopt robust engineering practices to ensure the maintainability and quality of the code over time.
We provide several tools to help achieve this goal. These tools help you write maintainable, high-quality code by addressing common issues in enterprise application development.
Effective logging is useful for tracking the behavior of your application and diagnosing issues. This package provides a custom logging implementation, KandaLog, which wraps the default Unity logger.
This custom logger standardizes log messages and includes additional contextual information, making it easier to parse and analyze logs during debugging and maintenance.
For detailed usage and examples, refer to the Logging page.
App and user settings are for controlling application behavior without modifying code.
We offer tools for managing settings in a structured and consistent manner. This ensures that configuration is straightforward to understand and modify, facilitating easier adjustments and maintenance over the lifecycle of the application.
For more information on managing app settings, refer to the App Settings and User Settings pages.
We provide a basic App Events system to decouple core systems from UI and other high-level systems. App Events represent significant occurrences in the application lifecycle that require attention from the app or user, allowing for more modular and maintainable code.
For a detailed explanation of App Events and their usage, refer to the App Events page.
We provide a connection monitoring system to help manage and respond to network-related events in your application. This system includes features for tracking client disconnections, connection timeouts, and player counts, generating app events that you can use in downstream logic.
For a detailed explanation of the connection monitoring features and their usage, refer to the Connection Monitoring page.
Managing dependencies effectively is crucial for creating modular and testable code. This package includes a Service Locator framework to handle dependency inversion.
This framework allows for flexible registration and retrieval of services, avoiding the tight coupling associated with singletons.
For detailed instructions on using services, refer to the Services page.
Automated testing is key to maintaining high-quality code in enterprise applications.
We provide a basic testing framework designed to simplify the creation and execution of automated tests within Unity. This framework helps ensure that the codebase remains reliable and maintainable.
For detailed guidelines on automated testing, refer to the AutomatedTesting page".