├── CleanArchitectureExample ├── Assets │ ├── CleanArchtecture │ │ ├── CleanArchtecture.asmdef │ │ ├── IView.cs │ │ ├── IDataStore.cs │ │ ├── IPresenter.cs │ │ ├── IRepository.cs │ │ ├── IUseCase.cs │ │ ├── CleanArchtecture.asmdef.meta │ │ ├── IView.cs.meta │ │ ├── IDataStore.cs.meta │ │ ├── IPresenter.cs.meta │ │ ├── IRepository.cs.meta │ │ └── IUseCase.cs.meta │ ├── Example │ │ ├── Scripts │ │ │ ├── Main │ │ │ │ ├── IMain.cs │ │ │ │ ├── Example.Main.asmdef.meta │ │ │ │ ├── IMain.cs.meta │ │ │ │ ├── ExampleMain.cs.meta │ │ │ │ ├── Example.Main.asmdef │ │ │ │ └── ExampleMain.cs │ │ │ ├── Installer │ │ │ │ ├── IInstaller.cs │ │ │ │ ├── Example.Installer.asmdef.meta │ │ │ │ ├── IInstaller.cs.meta │ │ │ │ ├── ExampleInstaller.cs.meta │ │ │ │ ├── Example.Installer.asmdef │ │ │ │ └── ExampleInstaller.cs │ │ │ ├── Core │ │ │ │ ├── Constants.cs │ │ │ │ └── Constants.cs.meta │ │ │ ├── Core.meta │ │ │ ├── Domain.meta │ │ │ ├── Main.meta │ │ │ ├── Tests.meta │ │ │ ├── Installer.meta │ │ │ ├── Presenter.meta │ │ │ ├── Repository.meta │ │ │ ├── ValueObject.meta │ │ │ ├── Domain │ │ │ │ ├── Presenter.meta │ │ │ │ ├── UseCase.meta │ │ │ │ ├── BusinessRule.meta │ │ │ │ ├── Example.Domain.asmdef.meta │ │ │ │ ├── Repository.meta │ │ │ │ ├── UseCase │ │ │ │ │ ├── Example.Domain.UseCase.asmdef.meta │ │ │ │ │ ├── CountUseCase.cs.meta │ │ │ │ │ ├── Example.Domain.UseCase.asmdef │ │ │ │ │ └── CountUseCase.cs │ │ │ │ ├── Presenter │ │ │ │ │ ├── Example.Domain.Presenter.asmdef.meta │ │ │ │ │ ├── ICountPresenter.cs │ │ │ │ │ ├── ICountPresenter.cs.meta │ │ │ │ │ └── Example.Domain.Presenter.asmdef │ │ │ │ ├── Repository │ │ │ │ │ ├── Example.Domain.Repository.asmdef.meta │ │ │ │ │ ├── ICountRepository.cs │ │ │ │ │ ├── ICountRepository.cs.meta │ │ │ │ │ └── Example.Domain.Repository.asmdef │ │ │ │ ├── BusinessRule │ │ │ │ │ ├── CountUpBr.cs.meta │ │ │ │ │ └── CountUpBr.cs │ │ │ │ └── Example.Domain.asmdef │ │ │ ├── Presenter │ │ │ │ ├── Detail.meta │ │ │ │ ├── Example.Presenter.asmdef.meta │ │ │ │ ├── Detail │ │ │ │ │ ├── Example.Presenter.Detail.asmdef.meta │ │ │ │ │ ├── CounterView.cs.meta │ │ │ │ │ ├── CounterView.cs │ │ │ │ │ └── Example.Presenter.Detail.asmdef │ │ │ │ ├── ICounterView.cs │ │ │ │ ├── ICounterView.cs.meta │ │ │ │ ├── CountPresenter.cs.meta │ │ │ │ ├── CountPresenter.cs │ │ │ │ └── Example.Presenter.asmdef │ │ │ ├── Tests │ │ │ │ ├── EditMode.meta │ │ │ │ ├── PlayMode.meta │ │ │ │ ├── EditMode │ │ │ │ │ ├── Editor.meta │ │ │ │ │ ├── Example.Tests.EditMode.asmdef.meta │ │ │ │ │ ├── Editor │ │ │ │ │ │ ├── CountVoTest.cs.meta │ │ │ │ │ │ ├── CountUpBrTest.cs.meta │ │ │ │ │ │ ├── CountViewMock.cs.meta │ │ │ │ │ │ ├── CountDataStoreMock.cs.meta │ │ │ │ │ │ ├── CountPresenterTest.cs.meta │ │ │ │ │ │ ├── CountRepositoryTest.cs.meta │ │ │ │ │ │ ├── CountVoTest.cs │ │ │ │ │ │ ├── CountDataStoreMock.cs │ │ │ │ │ │ ├── CountViewMock.cs │ │ │ │ │ │ ├── CountRepositoryTest.cs │ │ │ │ │ │ ├── CountPresenterTest.cs │ │ │ │ │ │ └── CountUpBrTest.cs │ │ │ │ │ └── Example.Tests.EditMode.asmdef │ │ │ │ └── PlayMode │ │ │ │ │ ├── Example.Tests.PlayMode.asmdef.meta │ │ │ │ │ ├── CountUpSceneTest.cs.meta │ │ │ │ │ ├── CountUpSceneTest.cs │ │ │ │ │ └── Example.Tests.PlayMode.asmdef │ │ │ ├── Repository │ │ │ │ ├── Detail.meta │ │ │ │ ├── Example.Repository.asmdef.meta │ │ │ │ ├── Detail │ │ │ │ │ ├── Example.Repository.Detail.asmdef.meta │ │ │ │ │ ├── PlayerPrefsCountDataStore.cs.meta │ │ │ │ │ ├── PlayerPrefsCountDataStore.cs │ │ │ │ │ └── Example.Repository.Detail.asmdef │ │ │ │ ├── CountRepository.cs.meta │ │ │ │ ├── ICountDataStore.cs.meta │ │ │ │ ├── ICountDataStore.cs │ │ │ │ ├── Example.Repository.asmdef │ │ │ │ └── CountRepository.cs │ │ │ └── ValueObject │ │ │ │ ├── CountVo.cs │ │ │ │ └── CountVo.cs.meta │ │ ├── SampleScene.unity.meta │ │ ├── Example.asmdef.meta │ │ ├── Scripts.meta │ │ ├── Example.asmdef │ │ └── SampleScene.unity │ ├── Zenject-TestFramework-local │ │ ├── README.md │ │ ├── README.md.meta │ │ ├── ValidateOnlyAttribute.cs │ │ ├── Zenject-TestFramework-local.asmdef.meta │ │ ├── SceneTestFixtureSceneReference.cs │ │ ├── Zenject-TestFramework-local.asmdef │ │ ├── ValidateOnlyAttribute.cs.meta │ │ ├── ZenjectIntegrationTestFixture.cs.meta │ │ ├── SceneTestFixture.cs.meta │ │ ├── ZenjectTestUtil.cs.meta │ │ ├── ZenjectUnitTestFixture.cs.meta │ │ ├── SceneTestFixtureSceneReference.cs.meta │ │ ├── ZenjectUnitTestFixture.cs │ │ ├── ZenjectTestUtil.cs │ │ ├── SceneTestFixture.cs │ │ └── ZenjectIntegrationTestFixture.cs │ ├── Example.meta │ ├── CleanArchtecture.meta │ └── Zenject-TestFramework-local.meta ├── ProjectSettings │ ├── ProjectVersion.txt │ ├── ClusterInputManager.asset │ ├── PresetManager.asset │ ├── EditorBuildSettings.asset │ ├── XRSettings.asset │ ├── TimeManager.asset │ ├── VFXManager.asset │ ├── AudioManager.asset │ ├── TagManager.asset │ ├── UnityConnectSettings.asset │ ├── EditorSettings.asset │ ├── DynamicsManager.asset │ ├── NavMeshAreas.asset │ ├── Physics2DSettings.asset │ ├── GraphicsSettings.asset │ ├── InputManager.asset │ ├── QualitySettings.asset │ └── ProjectSettings.asset ├── Logs │ └── Packages-Update.log └── Packages │ └── manifest.json ├── doc ├── clean-architecture-example.png └── clean-architecture-example.pu ├── README.md └── .gitignore /CleanArchitectureExample/Assets/CleanArchtecture/CleanArchtecture.asmdef: -------------------------------------------------------------------------------- 1 | { 2 | "name": "CleanArchtecture" 3 | } 4 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/CleanArchtecture/IView.cs: -------------------------------------------------------------------------------- 1 | namespace CleanArchtecture { 2 | public interface IView { 3 | } 4 | } 5 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Main/IMain.cs: -------------------------------------------------------------------------------- 1 | namespace Example.Main { 2 | public interface IMain { 3 | } 4 | } 5 | -------------------------------------------------------------------------------- /doc/clean-architecture-example.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/naninunenoy/UnityCleanArchitectureExample/HEAD/doc/clean-architecture-example.png -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/CleanArchtecture/IDataStore.cs: -------------------------------------------------------------------------------- 1 | namespace CleanArchtecture { 2 | public interface IDataStore { 3 | } 4 | } 5 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/CleanArchtecture/IPresenter.cs: -------------------------------------------------------------------------------- 1 | namespace CleanArchtecture { 2 | public interface IPresenter { 3 | } 4 | } 5 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/CleanArchtecture/IRepository.cs: -------------------------------------------------------------------------------- 1 | namespace CleanArchtecture { 2 | public interface IRepository { 3 | } 4 | } 5 | -------------------------------------------------------------------------------- /CleanArchitectureExample/ProjectSettings/ProjectVersion.txt: -------------------------------------------------------------------------------- 1 | m_EditorVersion: 2019.3.0f1 2 | m_EditorVersionWithRevision: 2019.3.0f1 (ffacea4b84e7) 3 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Installer/IInstaller.cs: -------------------------------------------------------------------------------- 1 | namespace Example.Installer { 2 | public interface IInstaller { 3 | } 4 | } 5 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Core/Constants.cs: -------------------------------------------------------------------------------- 1 | namespace Example { 2 | public static class Constants { 3 | public const int MaxCount = 100; 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Zenject-TestFramework-local/README.md: -------------------------------------------------------------------------------- 1 | From https://github.com/modesttree/Zenject/tree/master/UnityProject/Assets/Plugins/Zenject/OptionalExtras/TestFramework 2 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/CleanArchtecture/IUseCase.cs: -------------------------------------------------------------------------------- 1 | namespace CleanArchtecture { 2 | public interface IUseCase { 3 | void Begin(); 4 | void Finish(); 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /CleanArchitectureExample/ProjectSettings/ClusterInputManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!236 &1 4 | ClusterInputManager: 5 | m_ObjectHideFlags: 0 6 | m_Inputs: [] 7 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # UnityCleanArchitectureExample 2 | my Clean-Architecture Example of Unity 3 | 4 | ![クラス図](https://github.com/naninunenoy/UnityCleanArchitectureExample/blob/master/doc/clean-architecture-example.png) 5 | -------------------------------------------------------------------------------- /CleanArchitectureExample/ProjectSettings/PresetManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1386491679 &1 4 | PresetManager: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | m_DefaultPresets: {} 8 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d036f5130f9989d469d06bac875af57f 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/SampleScene.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f9e2691751fe1b84fa7d601768955f4a 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Example.asmdef.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9083b1b07ab69dc4e9bb87b12a763e5b 3 | AssemblyDefinitionImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/CleanArchtecture.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b1b8f4965a3c7f5489799ae0c9b29ed2 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 08e27e0900014324e837cf63b7bee64a 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /CleanArchitectureExample/ProjectSettings/EditorBuildSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1045 &1 4 | EditorBuildSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | m_Scenes: [] 8 | m_configObjects: {} 9 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Core.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ca9b18e65ee93494b949f3bc233574b7 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Domain.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1de71570b56ceb940bb67c8f88d8bb9e 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Main.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e42074080f8f925448496dd8ae9592fa 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Tests.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 00bfe02e6e6342d488651602329ef7a2 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Zenject-TestFramework-local/README.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: dfc460c5fb990f941abef72dd36151b8 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /CleanArchitectureExample/ProjectSettings/XRSettings.asset: -------------------------------------------------------------------------------- 1 | { 2 | "m_SettingKeys": [ 3 | "VR Device Disabled", 4 | "VR Device User Alert" 5 | ], 6 | "m_SettingValues": [ 7 | "False", 8 | "False" 9 | ] 10 | } -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Installer.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7ddff26fb1074014cb14c0b4359d611e 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Presenter.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f0b597d925274894b884870603e656c4 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Repository.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d591fb2008043c742924548a48d84061 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/ValueObject.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1161dbd83aa69f24d9133ecff74c90eb 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Zenject-TestFramework-local.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ca3ec693476695c4ca683c58bdef01b3 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/CleanArchtecture/CleanArchtecture.asmdef.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5490f9cc2b331a945904ce198a9bfd24 3 | AssemblyDefinitionImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Domain/Presenter.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3acc8561207ce904fb865b52305b50b7 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Domain/UseCase.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e3e867fad2da4f841b1a23b7acca068e 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Main/Example.Main.asmdef.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f0d6244fdeb50c04599e8b805ea7bd46 3 | AssemblyDefinitionImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Presenter/Detail.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1228a48bdc7d7094ca4aec080aff7356 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Tests/EditMode.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 64c1958455e01d7438dee72346449a2c 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Tests/PlayMode.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 38726016ab9b4c24f846e7187c8ff6ba 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Domain/BusinessRule.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 35b846fc7e7302c4885fa3718fc92699 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Domain/Example.Domain.asmdef.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f2dc8315f26de9540914ecc626fd4255 3 | AssemblyDefinitionImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Domain/Repository.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1ac202df45e48eb40a297a08c2b0b7bd 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Repository/Detail.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c2ef4dedbbe776e4aa2e3b232fcf9b9e 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Tests/EditMode/Editor.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f343976323e09f44a9a3e8da5559b171 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Installer/Example.Installer.asmdef.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5d8bc77942568864588e148172441488 3 | AssemblyDefinitionImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Presenter/Example.Presenter.asmdef.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: afdaf3040dc17a54e8cdb1e4957c3cbe 3 | AssemblyDefinitionImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Repository/Example.Repository.asmdef.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 863d809f878178846b61cd7756f47d2b 3 | AssemblyDefinitionImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Zenject-TestFramework-local/ValidateOnlyAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace Zenject 4 | { 5 | [AttributeUsage(AttributeTargets.Method)] 6 | public class ValidateOnlyAttribute : Attribute 7 | { 8 | } 9 | } 10 | 11 | 12 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Domain/UseCase/Example.Domain.UseCase.asmdef.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 852aa32f19c023d46ac9dee1bf1f339c 3 | AssemblyDefinitionImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Tests/EditMode/Example.Tests.EditMode.asmdef.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c4953b9ce5c352447b46fba18d7da17b 3 | AssemblyDefinitionImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Tests/PlayMode/Example.Tests.PlayMode.asmdef.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 066bf1eece82b6d419517243b7aa4f92 3 | AssemblyDefinitionImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Domain/Presenter/Example.Domain.Presenter.asmdef.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0c08413245cf2574cb1236394821c1d7 3 | AssemblyDefinitionImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Domain/Repository/Example.Domain.Repository.asmdef.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1f8a1bdca36923d4a8b3f97ff001af0c 3 | AssemblyDefinitionImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Presenter/Detail/Example.Presenter.Detail.asmdef.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6d84c87b8ccda0943b37c3756f8b1bf8 3 | AssemblyDefinitionImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Repository/Detail/Example.Repository.Detail.asmdef.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8b8925f3624bc6745b45e2e4da688484 3 | AssemblyDefinitionImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Presenter/ICounterView.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine.UI; 2 | using CleanArchtecture; 3 | 4 | namespace Example.Presenter { 5 | public interface ICounterView : IView { 6 | Button Button { get; } 7 | Text Text { get; } 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /CleanArchitectureExample/ProjectSettings/TimeManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!5 &1 4 | TimeManager: 5 | m_ObjectHideFlags: 0 6 | Fixed Timestep: 0.02 7 | Maximum Allowed Timestep: 0.33333334 8 | m_TimeScale: 1 9 | Maximum Particle Timestep: 0.03 10 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Zenject-TestFramework-local/Zenject-TestFramework-local.asmdef.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f1ca40e284f659b4db11c4d1c8b7bf7e 3 | timeCreated: 1531969421 4 | licenseType: Free 5 | AssemblyDefinitionImporter: 6 | externalObjects: {} 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Domain/Repository/ICountRepository.cs: -------------------------------------------------------------------------------- 1 | using UniRx.Async; 2 | using CleanArchtecture; 3 | 4 | namespace Example.Domain.Repository { 5 | public interface ICountRepository : IRepository { 6 | UniTask SetCountAsync(int count); 7 | UniTask GetCountAsync(); 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/CleanArchtecture/IView.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1d49f06e51a1b4946a021e4cda9e6aee 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/ValueObject/CountVo.cs: -------------------------------------------------------------------------------- 1 | namespace Example { 2 | public class CountVo { 3 | public int Count { private set; get; } 4 | public CountVo(int count) { 5 | Count = count; 6 | } 7 | public void Add() { 8 | Count++; 9 | } 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/CleanArchtecture/IDataStore.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 21ed0324296ba4141828f28441bd240b 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/CleanArchtecture/IPresenter.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3e391d39e69c4c543847fbcf3c3bdf9f 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/CleanArchtecture/IRepository.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1f3681ed602690549930931e918562bd 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/CleanArchtecture/IUseCase.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 39ebe0aa33de95c46a5555bd30c1eb30 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Main/IMain.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c8b6841240ace9f4aabf970554077ac0 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Core/Constants.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f47503743f9698748af268551cec3f33 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Main/ExampleMain.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fc2af049523b986469ec70e12a35b9ca 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Domain/Presenter/ICountPresenter.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using UniRx; 3 | using CleanArchtecture; 4 | 5 | namespace Example.Domain.Presenter { 6 | public interface ICountPresenter : IPresenter { 7 | IObservable ButtonClickObservable { get; } 8 | void SetText(string text); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Installer/IInstaller.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fd5f4a1520a209a468d3068634c5ea51 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Presenter/ICounterView.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c32d90064e150e343a2489d34908fab4 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/ValueObject/CountVo.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7c013ea0f8456ed49840c4a03775f6ee 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Domain/UseCase/CountUseCase.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4d1fa1e12dbda744685fc6ab61021e4e 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Installer/ExampleInstaller.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a5e46c7f9a9b53c479770b6f746c278e 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Presenter/CountPresenter.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7ceae3f33d55a664891fd47f0108caee 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Presenter/Detail/CounterView.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 469563f6bcb135145b56054af3b8e4d0 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Repository/CountRepository.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5efdfc787db6cd34c9b6c9328b8f2135 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Repository/ICountDataStore.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6dff558f36d8fe44c8d10e30ff2819f2 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Zenject-TestFramework-local/SceneTestFixtureSceneReference.cs: -------------------------------------------------------------------------------- 1 | #if UNITY_EDITOR 2 | 3 | using System; 4 | using UnityEditor; 5 | using UnityEngine; 6 | 7 | namespace Zenject 8 | { 9 | public class SceneTestFixtureSceneReference : ScriptableObject 10 | { 11 | public SceneAsset Scene; 12 | } 13 | } 14 | 15 | #endif 16 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Domain/BusinessRule/CountUpBr.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 22adc1f7b7e64e940a7973e1d393eb51 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Domain/Presenter/ICountPresenter.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d4cc5f58b8e15a14f8fe7906f7f08b7b 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Tests/EditMode/Editor/CountVoTest.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2c5e7b8866136e84fb3489a5f0aa319e 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Tests/PlayMode/CountUpSceneTest.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e262329cd3e3c0647871da130ff56c70 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Domain/Repository/ICountRepository.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 006e7173850bfac47beee77850388e68 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Tests/EditMode/Editor/CountUpBrTest.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fec7124355c146e41bf41669977eb711 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Tests/EditMode/Editor/CountViewMock.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ade1cbcf6708a734e903c2e1e7785ad0 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Zenject-TestFramework-local/Zenject-TestFramework-local.asmdef: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Zenject-TestFramework-local", 3 | "references": [ 4 | "Zenject" 5 | ], 6 | "optionalUnityReferences": [ 7 | "TestAssemblies" 8 | ], 9 | "includePlatforms": [ 10 | "Editor" 11 | ], 12 | "excludePlatforms": [], 13 | "allowUnsafeCode": false 14 | } -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Repository/Detail/PlayerPrefsCountDataStore.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 208ee94fe8c1afa48a3f559e31a450b2 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Tests/EditMode/Editor/CountDataStoreMock.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7aa3db2fb45ff994590b75cd70197977 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Tests/EditMode/Editor/CountPresenterTest.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9667d10df83fef342b8048543b652c40 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Tests/EditMode/Editor/CountRepositoryTest.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 10ae2f4687fd8df4095415095e6c87f8 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Zenject-TestFramework-local/ValidateOnlyAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9bf02ddab89960445946dcf563204dcf 3 | timeCreated: 1506450521 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Zenject-TestFramework-local/ZenjectIntegrationTestFixture.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2cafec1741dbd4144b178595bf3dd279 3 | timeCreated: 1506429461 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Repository/ICountDataStore.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | using CleanArchtecture; 5 | using UniRx.Async; 6 | 7 | namespace Example.Repository { 8 | public interface ICountDataStore : IDataStore { 9 | UniTask LoadCount(); 10 | UniTask SaveCount(int count); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /CleanArchitectureExample/ProjectSettings/VFXManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!937362698 &1 4 | VFXManager: 5 | m_ObjectHideFlags: 0 6 | m_IndirectShader: {fileID: 0} 7 | m_CopyBufferShader: {fileID: 0} 8 | m_SortShader: {fileID: 0} 9 | m_StripUpdateShader: {fileID: 0} 10 | m_RenderPipeSettingsPath: 11 | m_FixedTimeStep: 0.016666668 12 | m_MaxDeltaTime: 0.05 13 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Zenject-TestFramework-local/SceneTestFixture.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1d56e995006992143a4980e5048b5421 3 | timeCreated: 1527233974 4 | licenseType: Free 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Zenject-TestFramework-local/ZenjectTestUtil.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8d2cce47deac72642ab5be0501161fde 3 | timeCreated: 1527644566 4 | licenseType: Free 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Zenject-TestFramework-local/ZenjectUnitTestFixture.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c393ddf2c7c2f4f4394623f4e6428f9a 3 | timeCreated: 1536808207 4 | licenseType: Free 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Zenject-TestFramework-local/SceneTestFixtureSceneReference.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7cb2b0b1deac1c74db17668dcf11a3f7 3 | timeCreated: 1527233974 4 | licenseType: Free 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Presenter/Detail/CounterView.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using UnityEngine.UI; 3 | 4 | namespace Example.Presenter.Detail { 5 | public class CounterView : MonoBehaviour, ICounterView { 6 | [SerializeField] Button button = default; 7 | [SerializeField] Text text = default; 8 | 9 | Button ICounterView.Button => button; 10 | Text ICounterView.Text => text; 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Domain/BusinessRule/CountUpBr.cs: -------------------------------------------------------------------------------- 1 | namespace Example.Domain { 2 | public class CountUpBr { 3 | readonly int max; 4 | public CountUpBr(int max) { 5 | this.max = max; 6 | } 7 | public int CountUp(CountVo count) { 8 | if (count.Count < max) { 9 | count.Add(); 10 | } 11 | return count.Count; 12 | } 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Example.asmdef: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Example", 3 | "references": [ 4 | "GUID:5490f9cc2b331a945904ce198a9bfd24" 5 | ], 6 | "includePlatforms": [], 7 | "excludePlatforms": [], 8 | "allowUnsafeCode": false, 9 | "overrideReferences": false, 10 | "precompiledReferences": [], 11 | "autoReferenced": true, 12 | "defineConstraints": [], 13 | "versionDefines": [], 14 | "noEngineReferences": false 15 | } -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Tests/EditMode/Editor/CountVoTest.cs: -------------------------------------------------------------------------------- 1 | using NUnit.Framework; 2 | 3 | namespace Example.Tests.EditMode { 4 | public class CountVoTest { 5 | CountVo count; 6 | 7 | [Test] 8 | public void CountTest() { 9 | count = new CountVo(100); 10 | Assert.AreEqual(100, count.Count); 11 | count.Add(); 12 | Assert.AreEqual(101, count.Count); 13 | } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Domain/Example.Domain.asmdef: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Example.Domain", 3 | "references": [ 4 | "GUID:9083b1b07ab69dc4e9bb87b12a763e5b" 5 | ], 6 | "includePlatforms": [], 7 | "excludePlatforms": [], 8 | "allowUnsafeCode": false, 9 | "overrideReferences": false, 10 | "precompiledReferences": [], 11 | "autoReferenced": true, 12 | "defineConstraints": [], 13 | "versionDefines": [], 14 | "noEngineReferences": false 15 | } -------------------------------------------------------------------------------- /CleanArchitectureExample/ProjectSettings/AudioManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!11 &1 4 | AudioManager: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | m_Volume: 1 8 | Rolloff Scale: 1 9 | Doppler Factor: 1 10 | Default Speaker Mode: 2 11 | m_SampleRate: 0 12 | m_DSPBufferSize: 1024 13 | m_VirtualVoiceCount: 512 14 | m_RealVoiceCount: 32 15 | m_SpatializerPlugin: 16 | m_AmbisonicDecoderPlugin: 17 | m_DisableAudio: 0 18 | m_VirtualizeEffects: 1 19 | m_RequestedDSPBufferSize: 1024 20 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Tests/EditMode/Editor/CountDataStoreMock.cs: -------------------------------------------------------------------------------- 1 | using Example.Repository; 2 | using UniRx.Async; 3 | 4 | namespace Example.Tests.EditMode { 5 | public class CountDataStoreMock : ICountDataStore { 6 | int count = 0; 7 | 8 | public UniTask LoadCount() { 9 | return UniTask.FromResult(count); 10 | } 11 | 12 | public UniTask SaveCount(int count) { 13 | this.count = count; 14 | return UniTask.CompletedTask; 15 | } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /CleanArchitectureExample/Assets/Example/Scripts/Tests/EditMode/Editor/CountViewMock.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using UnityEngine.UI; 3 | using Example.Presenter; 4 | 5 | namespace Example.Tests.EditMode { 6 | public class CountViewMock : ICounterView { 7 | readonly GameObject gameObject = new GameObject(); 8 | public Button Button => 9 | gameObject.GetComponent