├── .gitattributes ├── .gitignore ├── 9781484260616.jpg ├── Ch-01 ├── SingletonPatternQA │ ├── Program.cs │ ├── SingletonPatternQA.csproj │ ├── bin │ │ └── Debug │ │ │ ├── netcoreapp3.0 │ │ │ ├── SingletonPatternQA.deps.json │ │ │ ├── SingletonPatternQA.dll │ │ │ ├── SingletonPatternQA.exe │ │ │ ├── SingletonPatternQA.pdb │ │ │ ├── SingletonPatternQA.runtimeconfig.dev.json │ │ │ └── SingletonPatternQA.runtimeconfig.json │ │ │ └── netcoreapp3.1 │ │ │ ├── SingletonPatternQA.deps.json │ │ │ ├── SingletonPatternQA.dll │ │ │ ├── SingletonPatternQA.exe │ │ │ ├── SingletonPatternQA.pdb │ │ │ ├── SingletonPatternQA.runtimeconfig.dev.json │ │ │ └── SingletonPatternQA.runtimeconfig.json │ └── obj │ │ ├── Debug │ │ ├── netcoreapp3.0 │ │ │ ├── SingletonPatternQA.AssemblyInfo.cs │ │ │ ├── SingletonPatternQA.AssemblyInfoInputs.cache │ │ │ ├── SingletonPatternQA.assets.cache │ │ │ ├── SingletonPatternQA.csproj.FileListAbsolute.txt │ │ │ ├── SingletonPatternQA.csprojAssemblyReference.cache │ │ │ ├── SingletonPatternQA.dll │ │ │ ├── SingletonPatternQA.exe │ │ │ └── SingletonPatternQA.pdb │ │ └── netcoreapp3.1 │ │ │ ├── SingletonPatternQA.AssemblyInfo.cs │ │ │ ├── SingletonPatternQA.AssemblyInfoInputs.cache │ │ │ ├── SingletonPatternQA.assets.cache │ │ │ ├── SingletonPatternQA.csproj.FileListAbsolute.txt │ │ │ ├── SingletonPatternQA.dll │ │ │ ├── SingletonPatternQA.exe │ │ │ └── SingletonPatternQA.pdb │ │ ├── SingletonPatternQA.csproj.nuget.cache │ │ ├── SingletonPatternQA.csproj.nuget.dgspec.json │ │ ├── SingletonPatternQA.csproj.nuget.g.props │ │ ├── SingletonPatternQA.csproj.nuget.g.targets │ │ └── project.assets.json ├── SingletonPatternUsingStaticConstructor │ ├── Program.cs │ ├── SingletonPatternUsingStaticConstructor.csproj │ ├── SingletonPatternUsingStaticConstructorClassDiagram.cd │ ├── bin │ │ └── Debug │ │ │ ├── netcoreapp3.0 │ │ │ ├── SingletonPatternUsingStaticConstructor.deps.json │ │ │ ├── SingletonPatternUsingStaticConstructor.dll │ │ │ ├── SingletonPatternUsingStaticConstructor.exe │ │ │ ├── SingletonPatternUsingStaticConstructor.pdb │ │ │ ├── SingletonPatternUsingStaticConstructor.runtimeconfig.dev.json │ │ │ └── SingletonPatternUsingStaticConstructor.runtimeconfig.json │ │ │ └── netcoreapp3.1 │ │ │ ├── SingletonPatternUsingStaticConstructor.deps.json │ │ │ ├── SingletonPatternUsingStaticConstructor.dll │ │ │ ├── SingletonPatternUsingStaticConstructor.exe │ │ │ ├── SingletonPatternUsingStaticConstructor.pdb │ │ │ ├── SingletonPatternUsingStaticConstructor.runtimeconfig.dev.json │ │ │ └── SingletonPatternUsingStaticConstructor.runtimeconfig.json │ └── obj │ │ ├── Debug │ │ ├── netcoreapp3.0 │ │ │ ├── SingletonPatternUsingStaticConstructor.AssemblyInfo.cs │ │ │ ├── SingletonPatternUsingStaticConstructor.AssemblyInfoInputs.cache │ │ │ ├── SingletonPatternUsingStaticConstructor.assets.cache │ │ │ ├── SingletonPatternUsingStaticConstructor.csproj.FileListAbsolute.txt │ │ │ ├── SingletonPatternUsingStaticConstructor.csprojAssemblyReference.cache │ │ │ ├── SingletonPatternUsingStaticConstructor.dll │ │ │ ├── SingletonPatternUsingStaticConstructor.exe │ │ │ └── SingletonPatternUsingStaticConstructor.pdb │ │ └── netcoreapp3.1 │ │ │ ├── SingletonPatternUsingStaticConstructor.AssemblyInfo.cs │ │ │ ├── SingletonPatternUsingStaticConstructor.AssemblyInfoInputs.cache │ │ │ ├── SingletonPatternUsingStaticConstructor.assets.cache │ │ │ ├── SingletonPatternUsingStaticConstructor.csproj.FileListAbsolute.txt │ │ │ ├── SingletonPatternUsingStaticConstructor.csprojAssemblyReference.cache │ │ │ ├── SingletonPatternUsingStaticConstructor.dll │ │ │ ├── SingletonPatternUsingStaticConstructor.exe │ │ │ └── SingletonPatternUsingStaticConstructor.pdb │ │ ├── SingletonPatternUsingStaticConstructor.csproj.nuget.cache │ │ ├── SingletonPatternUsingStaticConstructor.csproj.nuget.dgspec.json │ │ ├── SingletonPatternUsingStaticConstructor.csproj.nuget.g.props │ │ ├── SingletonPatternUsingStaticConstructor.csproj.nuget.g.targets │ │ └── project.assets.json ├── SingletonPatternUsingStaticInitialization │ ├── Program.cs │ ├── SingletonPatternUsingStaticInitialization.csproj │ ├── bin │ │ └── Debug │ │ │ └── netcoreapp3.1 │ │ │ ├── SingletonPatternUsingStaticInitialization.deps.json │ │ │ ├── SingletonPatternUsingStaticInitialization.dll │ │ │ ├── SingletonPatternUsingStaticInitialization.exe │ │ │ ├── SingletonPatternUsingStaticInitialization.pdb │ │ │ ├── SingletonPatternUsingStaticInitialization.runtimeconfig.dev.json │ │ │ └── SingletonPatternUsingStaticInitialization.runtimeconfig.json │ └── obj │ │ ├── Debug │ │ ├── netcoreapp3.0 │ │ │ ├── SingletonPatternUsingStaticInitialization.AssemblyInfo.cs │ │ │ ├── SingletonPatternUsingStaticInitialization.AssemblyInfoInputs.cache │ │ │ ├── SingletonPatternUsingStaticInitialization.assets.cache │ │ │ └── SingletonPatternUsingStaticInitialization.csprojAssemblyReference.cache │ │ └── netcoreapp3.1 │ │ │ ├── SingletonPatternUsingStaticInitialization.AssemblyInfo.cs │ │ │ ├── SingletonPatternUsingStaticInitialization.AssemblyInfoInputs.cache │ │ │ ├── SingletonPatternUsingStaticInitialization.assets.cache │ │ │ ├── SingletonPatternUsingStaticInitialization.csproj.FileListAbsolute.txt │ │ │ ├── SingletonPatternUsingStaticInitialization.dll │ │ │ ├── SingletonPatternUsingStaticInitialization.exe │ │ │ └── SingletonPatternUsingStaticInitialization.pdb │ │ ├── SingletonPatternUsingStaticInitialization.csproj.nuget.cache │ │ ├── SingletonPatternUsingStaticInitialization.csproj.nuget.dgspec.json │ │ ├── SingletonPatternUsingStaticInitialization.csproj.nuget.g.props │ │ ├── SingletonPatternUsingStaticInitialization.csproj.nuget.g.targets │ │ └── project.assets.json ├── UsingDoubleCheckedLocking │ ├── Program.cs │ ├── UsingDoubleCheckedLocking.csproj │ ├── bin │ │ └── Debug │ │ │ ├── netcoreapp3.0 │ │ │ ├── UsingDoubleCheckedLocking.deps.json │ │ │ ├── UsingDoubleCheckedLocking.dll │ │ │ ├── UsingDoubleCheckedLocking.exe │ │ │ ├── UsingDoubleCheckedLocking.pdb │ │ │ ├── UsingDoubleCheckedLocking.runtimeconfig.dev.json │ │ │ └── UsingDoubleCheckedLocking.runtimeconfig.json │ │ │ └── netcoreapp3.1 │ │ │ ├── UsingDoubleCheckedLocking.deps.json │ │ │ ├── UsingDoubleCheckedLocking.dll │ │ │ ├── UsingDoubleCheckedLocking.exe │ │ │ ├── UsingDoubleCheckedLocking.pdb │ │ │ ├── UsingDoubleCheckedLocking.runtimeconfig.dev.json │ │ │ └── UsingDoubleCheckedLocking.runtimeconfig.json │ └── obj │ │ ├── Debug │ │ ├── netcoreapp3.0 │ │ │ ├── UsingDoubleCheckedLocking.AssemblyInfo.cs │ │ │ ├── UsingDoubleCheckedLocking.AssemblyInfoInputs.cache │ │ │ ├── UsingDoubleCheckedLocking.assets.cache │ │ │ ├── UsingDoubleCheckedLocking.csproj.FileListAbsolute.txt │ │ │ ├── UsingDoubleCheckedLocking.csprojAssemblyReference.cache │ │ │ ├── UsingDoubleCheckedLocking.dll │ │ │ ├── UsingDoubleCheckedLocking.exe │ │ │ └── UsingDoubleCheckedLocking.pdb │ │ └── netcoreapp3.1 │ │ │ ├── UsingDoubleCheckedLocking.AssemblyInfo.cs │ │ │ ├── UsingDoubleCheckedLocking.AssemblyInfoInputs.cache │ │ │ ├── UsingDoubleCheckedLocking.assets.cache │ │ │ ├── UsingDoubleCheckedLocking.csproj.FileListAbsolute.txt │ │ │ ├── UsingDoubleCheckedLocking.dll │ │ │ ├── UsingDoubleCheckedLocking.exe │ │ │ └── UsingDoubleCheckedLocking.pdb │ │ ├── UsingDoubleCheckedLocking.csproj.nuget.cache │ │ ├── UsingDoubleCheckedLocking.csproj.nuget.dgspec.json │ │ ├── UsingDoubleCheckedLocking.csproj.nuget.g.props │ │ ├── UsingDoubleCheckedLocking.csproj.nuget.g.targets │ │ └── project.assets.json ├── UsingGenericLazyClassFromDotNet4 │ ├── Program.cs │ ├── UsingGenericLazyClassFromDotNet4.csproj │ ├── bin │ │ └── Debug │ │ │ ├── netcoreapp3.0 │ │ │ ├── UsingGenericLazyClassFromDotNet4.deps.json │ │ │ ├── UsingGenericLazyClassFromDotNet4.dll │ │ │ ├── UsingGenericLazyClassFromDotNet4.exe │ │ │ ├── UsingGenericLazyClassFromDotNet4.pdb │ │ │ ├── UsingGenericLazyClassFromDotNet4.runtimeconfig.dev.json │ │ │ └── UsingGenericLazyClassFromDotNet4.runtimeconfig.json │ │ │ └── netcoreapp3.1 │ │ │ ├── UsingGenericLazyClassFromDotNet4.deps.json │ │ │ ├── UsingGenericLazyClassFromDotNet4.dll │ │ │ ├── UsingGenericLazyClassFromDotNet4.exe │ │ │ ├── UsingGenericLazyClassFromDotNet4.pdb │ │ │ ├── UsingGenericLazyClassFromDotNet4.runtimeconfig.dev.json │ │ │ └── UsingGenericLazyClassFromDotNet4.runtimeconfig.json │ └── obj │ │ ├── Debug │ │ ├── netcoreapp3.0 │ │ │ ├── UsingGenericLazyClassFromDotNet4.AssemblyInfo.cs │ │ │ ├── UsingGenericLazyClassFromDotNet4.AssemblyInfoInputs.cache │ │ │ ├── UsingGenericLazyClassFromDotNet4.assets.cache │ │ │ ├── UsingGenericLazyClassFromDotNet4.csproj.FileListAbsolute.txt │ │ │ ├── UsingGenericLazyClassFromDotNet4.csprojAssemblyReference.cache │ │ │ ├── UsingGenericLazyClassFromDotNet4.dll │ │ │ ├── UsingGenericLazyClassFromDotNet4.exe │ │ │ └── UsingGenericLazyClassFromDotNet4.pdb │ │ └── netcoreapp3.1 │ │ │ ├── UsingGenericLazyClassFromDotNet4.AssemblyInfo.cs │ │ │ ├── UsingGenericLazyClassFromDotNet4.AssemblyInfoInputs.cache │ │ │ ├── UsingGenericLazyClassFromDotNet4.assets.cache │ │ │ ├── UsingGenericLazyClassFromDotNet4.csproj.FileListAbsolute.txt │ │ │ ├── UsingGenericLazyClassFromDotNet4.csprojAssemblyReference.cache │ │ │ ├── UsingGenericLazyClassFromDotNet4.dll │ │ │ ├── UsingGenericLazyClassFromDotNet4.exe │ │ │ └── UsingGenericLazyClassFromDotNet4.pdb │ │ ├── UsingGenericLazyClassFromDotNet4.csproj.nuget.cache │ │ ├── UsingGenericLazyClassFromDotNet4.csproj.nuget.dgspec.json │ │ ├── UsingGenericLazyClassFromDotNet4.csproj.nuget.g.props │ │ ├── UsingGenericLazyClassFromDotNet4.csproj.nuget.g.targets │ │ └── project.assets.json └── UsingSingleLockForSingletonPattern │ ├── Program.cs │ ├── UsingSingleLockForSingletonPattern.csproj │ ├── bin │ └── Debug │ │ ├── netcoreapp3.0 │ │ ├── UsingSingleLockForSingletonPattern.deps.json │ │ ├── UsingSingleLockForSingletonPattern.dll │ │ ├── UsingSingleLockForSingletonPattern.exe │ │ ├── UsingSingleLockForSingletonPattern.pdb │ │ ├── UsingSingleLockForSingletonPattern.runtimeconfig.dev.json │ │ └── UsingSingleLockForSingletonPattern.runtimeconfig.json │ │ └── netcoreapp3.1 │ │ ├── UsingSingleLockForSingletonPattern.deps.json │ │ ├── UsingSingleLockForSingletonPattern.dll │ │ ├── UsingSingleLockForSingletonPattern.exe │ │ ├── UsingSingleLockForSingletonPattern.pdb │ │ ├── UsingSingleLockForSingletonPattern.runtimeconfig.dev.json │ │ └── UsingSingleLockForSingletonPattern.runtimeconfig.json │ └── obj │ ├── Debug │ ├── netcoreapp3.0 │ │ ├── UsingSingleLockForSingletonPattern.AssemblyInfo.cs │ │ ├── UsingSingleLockForSingletonPattern.AssemblyInfoInputs.cache │ │ ├── UsingSingleLockForSingletonPattern.assets.cache │ │ ├── UsingSingleLockForSingletonPattern.csproj.FileListAbsolute.txt │ │ ├── UsingSingleLockForSingletonPattern.csprojAssemblyReference.cache │ │ ├── UsingSingleLockForSingletonPattern.dll │ │ ├── UsingSingleLockForSingletonPattern.exe │ │ └── UsingSingleLockForSingletonPattern.pdb │ └── netcoreapp3.1 │ │ ├── UsingSingleLockForSingletonPattern.AssemblyInfo.cs │ │ ├── UsingSingleLockForSingletonPattern.AssemblyInfoInputs.cache │ │ ├── UsingSingleLockForSingletonPattern.assets.cache │ │ ├── UsingSingleLockForSingletonPattern.csproj.FileListAbsolute.txt │ │ ├── UsingSingleLockForSingletonPattern.dll │ │ ├── UsingSingleLockForSingletonPattern.exe │ │ └── UsingSingleLockForSingletonPattern.pdb │ ├── UsingSingleLockForSingletonPattern.csproj.nuget.cache │ ├── UsingSingleLockForSingletonPattern.csproj.nuget.dgspec.json │ ├── UsingSingleLockForSingletonPattern.csproj.nuget.g.props │ ├── UsingSingleLockForSingletonPattern.csproj.nuget.g.targets │ └── project.assets.json ├── Ch-02 ├── PrototypePattern │ ├── BasicCar.cs │ ├── Ford.cs │ ├── Nano.cs │ ├── Program.cs │ ├── PrototypePattern.csproj │ ├── PrototypePatternClassDiagram.cd │ ├── bin │ │ └── Debug │ │ │ └── netcoreapp3.1 │ │ │ ├── PrototypePattern.deps.json │ │ │ ├── PrototypePattern.dll │ │ │ ├── PrototypePattern.exe │ │ │ ├── PrototypePattern.pdb │ │ │ ├── PrototypePattern.runtimeconfig.dev.json │ │ │ └── PrototypePattern.runtimeconfig.json │ └── obj │ │ ├── Debug │ │ └── netcoreapp3.1 │ │ │ ├── PrototypePattern.AssemblyInfo.cs │ │ │ ├── PrototypePattern.AssemblyInfoInputs.cache │ │ │ ├── PrototypePattern.assets.cache │ │ │ ├── PrototypePattern.csproj.FileListAbsolute.txt │ │ │ ├── PrototypePattern.csprojAssemblyReference.cache │ │ │ ├── PrototypePattern.dll │ │ │ ├── PrototypePattern.exe │ │ │ └── PrototypePattern.pdb │ │ ├── PrototypePattern.csproj.nuget.cache │ │ ├── PrototypePattern.csproj.nuget.dgspec.json │ │ ├── PrototypePattern.csproj.nuget.g.props │ │ ├── PrototypePattern.csproj.nuget.g.targets │ │ └── project.assets.json ├── PrototypePatternDemo2 │ ├── Program.cs │ ├── PrototypePatternDemo2.csproj │ ├── PrototypePatternDemo2ClassDiagram.cd │ ├── bin │ │ └── Debug │ │ │ └── netcoreapp3.1 │ │ │ ├── PrototypePatternDemo2.deps.json │ │ │ ├── PrototypePatternDemo2.dll │ │ │ ├── PrototypePatternDemo2.exe │ │ │ ├── PrototypePatternDemo2.pdb │ │ │ ├── PrototypePatternDemo2.runtimeconfig.dev.json │ │ │ └── PrototypePatternDemo2.runtimeconfig.json │ └── obj │ │ ├── Debug │ │ └── netcoreapp3.1 │ │ │ ├── PrototypePatternDemo2.AssemblyInfo.cs │ │ │ ├── PrototypePatternDemo2.AssemblyInfoInputs.cache │ │ │ ├── PrototypePatternDemo2.assets.cache │ │ │ ├── PrototypePatternDemo2.csproj.FileListAbsolute.txt │ │ │ ├── PrototypePatternDemo2.csprojAssemblyReference.cache │ │ │ ├── PrototypePatternDemo2.dll │ │ │ ├── PrototypePatternDemo2.exe │ │ │ └── PrototypePatternDemo2.pdb │ │ ├── PrototypePatternDemo2.csproj.nuget.cache │ │ ├── PrototypePatternDemo2.csproj.nuget.dgspec.json │ │ ├── PrototypePatternDemo2.csproj.nuget.g.props │ │ ├── PrototypePatternDemo2.csproj.nuget.g.targets │ │ └── project.assets.json ├── ShallowVsDeepCopy │ ├── Program.cs │ ├── ShallowVsDeepCopy.csproj │ ├── bin │ │ └── Debug │ │ │ └── netcoreapp3.1 │ │ │ ├── ShallowVsDeepCopy.deps.json │ │ │ ├── ShallowVsDeepCopy.dll │ │ │ ├── ShallowVsDeepCopy.exe │ │ │ ├── ShallowVsDeepCopy.pdb │ │ │ ├── ShallowVsDeepCopy.runtimeconfig.dev.json │ │ │ └── ShallowVsDeepCopy.runtimeconfig.json │ └── obj │ │ ├── Debug │ │ └── netcoreapp3.1 │ │ │ ├── ShallowVsDeepCopy.AssemblyInfo.cs │ │ │ ├── ShallowVsDeepCopy.AssemblyInfoInputs.cache │ │ │ ├── ShallowVsDeepCopy.assets.cache │ │ │ ├── ShallowVsDeepCopy.csproj.FileListAbsolute.txt │ │ │ ├── ShallowVsDeepCopy.csprojAssemblyReference.cache │ │ │ ├── ShallowVsDeepCopy.dll │ │ │ ├── ShallowVsDeepCopy.exe │ │ │ └── ShallowVsDeepCopy.pdb │ │ ├── ShallowVsDeepCopy.csproj.nuget.cache │ │ ├── ShallowVsDeepCopy.csproj.nuget.dgspec.json │ │ ├── ShallowVsDeepCopy.csproj.nuget.g.props │ │ ├── ShallowVsDeepCopy.csproj.nuget.g.targets │ │ └── project.assets.json └── UserdefinedCopyConstructorDemo │ ├── Program.cs │ ├── UserdefinedCopyConstructorDemo.csproj │ ├── bin │ └── Debug │ │ └── netcoreapp3.1 │ │ ├── UserdefinedCopyConstructorDemo.deps.json │ │ ├── UserdefinedCopyConstructorDemo.dll │ │ ├── UserdefinedCopyConstructorDemo.exe │ │ ├── UserdefinedCopyConstructorDemo.pdb │ │ ├── UserdefinedCopyConstructorDemo.runtimeconfig.dev.json │ │ └── UserdefinedCopyConstructorDemo.runtimeconfig.json │ └── obj │ ├── Debug │ └── netcoreapp3.1 │ │ ├── UserdefinedCopyConstructorDemo.AssemblyInfo.cs │ │ ├── UserdefinedCopyConstructorDemo.AssemblyInfoInputs.cache │ │ ├── UserdefinedCopyConstructorDemo.assets.cache │ │ ├── UserdefinedCopyConstructorDemo.csproj.FileListAbsolute.txt │ │ ├── UserdefinedCopyConstructorDemo.csprojAssemblyReference.cache │ │ ├── UserdefinedCopyConstructorDemo.dll │ │ ├── UserdefinedCopyConstructorDemo.exe │ │ └── UserdefinedCopyConstructorDemo.pdb │ ├── UserdefinedCopyConstructorDemo.csproj.nuget.cache │ ├── UserdefinedCopyConstructorDemo.csproj.nuget.dgspec.json │ ├── UserdefinedCopyConstructorDemo.csproj.nuget.g.props │ ├── UserdefinedCopyConstructorDemo.csproj.nuget.g.targets │ └── project.assets.json ├── Ch-03 ├── BuilderPatternSecondDemonstration │ ├── BuilderPatternSecondDemonstration.csproj │ ├── Car.cs │ ├── ClassDiagramForSecondImplementation1.cd │ ├── IBuilder.cs │ ├── Product.cs │ ├── Program.cs │ ├── bin │ │ └── Debug │ │ │ └── netcoreapp3.1 │ │ │ ├── BuilderPatternSecondDemonstration.deps.json │ │ │ ├── BuilderPatternSecondDemonstration.dll │ │ │ ├── BuilderPatternSecondDemonstration.exe │ │ │ ├── BuilderPatternSecondDemonstration.pdb │ │ │ ├── BuilderPatternSecondDemonstration.runtimeconfig.dev.json │ │ │ └── BuilderPatternSecondDemonstration.runtimeconfig.json │ └── obj │ │ ├── BuilderPatternSecondDemonstration.csproj.nuget.cache │ │ ├── BuilderPatternSecondDemonstration.csproj.nuget.dgspec.json │ │ ├── BuilderPatternSecondDemonstration.csproj.nuget.g.props │ │ ├── BuilderPatternSecondDemonstration.csproj.nuget.g.targets │ │ ├── Debug │ │ └── netcoreapp3.1 │ │ │ ├── BuilderPatternSecondDemonstration.AssemblyInfo.cs │ │ │ ├── BuilderPatternSecondDemonstration.AssemblyInfoInputs.cache │ │ │ ├── BuilderPatternSecondDemonstration.assets.cache │ │ │ ├── BuilderPatternSecondDemonstration.csproj.FileListAbsolute.txt │ │ │ ├── BuilderPatternSecondDemonstration.csprojAssemblyReference.cache │ │ │ ├── BuilderPatternSecondDemonstration.dll │ │ │ ├── BuilderPatternSecondDemonstration.exe │ │ │ └── BuilderPatternSecondDemonstration.pdb │ │ └── project.assets.json └── BuilderPatternSimpleExample │ ├── BuilderPatternSimpleExample.csproj │ ├── BuilderPatternSimpleExampleClassDiagram.cd │ ├── Car.cs │ ├── Director.cs │ ├── IBuilder.cs │ ├── Motorcycle.cs │ ├── Product.cs │ ├── Program.cs │ ├── bin │ └── Debug │ │ └── netcoreapp3.1 │ │ ├── BuilderPatternSimpleExample.deps.json │ │ ├── BuilderPatternSimpleExample.dll │ │ ├── BuilderPatternSimpleExample.exe │ │ ├── BuilderPatternSimpleExample.pdb │ │ ├── BuilderPatternSimpleExample.runtimeconfig.dev.json │ │ └── BuilderPatternSimpleExample.runtimeconfig.json │ └── obj │ ├── BuilderPatternSimpleExample.csproj.nuget.cache │ ├── BuilderPatternSimpleExample.csproj.nuget.dgspec.json │ ├── BuilderPatternSimpleExample.csproj.nuget.g.props │ ├── BuilderPatternSimpleExample.csproj.nuget.g.targets │ ├── Debug │ └── netcoreapp3.1 │ │ ├── BuilderPatternSimpleExample.AssemblyInfo.cs │ │ ├── BuilderPatternSimpleExample.AssemblyInfoInputs.cache │ │ ├── BuilderPatternSimpleExample.assets.cache │ │ ├── BuilderPatternSimpleExample.csproj.FileListAbsolute.txt │ │ ├── BuilderPatternSimpleExample.csprojAssemblyReference.cache │ │ ├── BuilderPatternSimpleExample.dll │ │ ├── BuilderPatternSimpleExample.exe │ │ └── BuilderPatternSimpleExample.pdb │ └── project.assets.json ├── Ch-04 ├── FactoryMethodPattern │ ├── FactoryMethodPattern.csproj │ ├── FactoryMethodPatternClassDiagram.cd │ ├── Program.cs │ ├── bin │ │ └── Debug │ │ │ └── netcoreapp3.1 │ │ │ ├── FactoryMethodPattern.deps.json │ │ │ ├── FactoryMethodPattern.dll │ │ │ ├── FactoryMethodPattern.exe │ │ │ ├── FactoryMethodPattern.pdb │ │ │ ├── FactoryMethodPattern.runtimeconfig.dev.json │ │ │ └── FactoryMethodPattern.runtimeconfig.json │ └── obj │ │ ├── Debug │ │ └── netcoreapp3.1 │ │ │ ├── FactoryMethodPattern.AssemblyInfo.cs │ │ │ ├── FactoryMethodPattern.AssemblyInfoInputs.cache │ │ │ ├── FactoryMethodPattern.assets.cache │ │ │ ├── FactoryMethodPattern.csproj.FileListAbsolute.txt │ │ │ ├── FactoryMethodPattern.csprojAssemblyReference.cache │ │ │ ├── FactoryMethodPattern.dll │ │ │ ├── FactoryMethodPattern.exe │ │ │ └── FactoryMethodPattern.pdb │ │ ├── FactoryMethodPattern.csproj.nuget.cache │ │ ├── FactoryMethodPattern.csproj.nuget.dgspec.json │ │ ├── FactoryMethodPattern.csproj.nuget.g.props │ │ ├── FactoryMethodPattern.csproj.nuget.g.targets │ │ └── project.assets.json ├── FactoryMethodPatternModifiedExample │ ├── FactoryMethodPatternModifiedExample.csproj │ ├── Program.cs │ ├── bin │ │ └── Debug │ │ │ └── netcoreapp3.1 │ │ │ ├── FactoryMethodPatternModifiedExample.deps.json │ │ │ ├── FactoryMethodPatternModifiedExample.dll │ │ │ ├── FactoryMethodPatternModifiedExample.exe │ │ │ ├── FactoryMethodPatternModifiedExample.pdb │ │ │ ├── FactoryMethodPatternModifiedExample.runtimeconfig.dev.json │ │ │ └── FactoryMethodPatternModifiedExample.runtimeconfig.json │ └── obj │ │ ├── Debug │ │ └── netcoreapp3.1 │ │ │ ├── FactoryMethodPatternModifiedExample.AssemblyInfo.cs │ │ │ ├── FactoryMethodPatternModifiedExample.AssemblyInfoInputs.cache │ │ │ ├── FactoryMethodPatternModifiedExample.assets.cache │ │ │ ├── FactoryMethodPatternModifiedExample.csproj.FileListAbsolute.txt │ │ │ ├── FactoryMethodPatternModifiedExample.csprojAssemblyReference.cache │ │ │ ├── FactoryMethodPatternModifiedExample.dll │ │ │ ├── FactoryMethodPatternModifiedExample.exe │ │ │ └── FactoryMethodPatternModifiedExample.pdb │ │ ├── FactoryMethodPatternModifiedExample.csproj.nuget.cache │ │ ├── FactoryMethodPatternModifiedExample.csproj.nuget.dgspec.json │ │ ├── FactoryMethodPatternModifiedExample.csproj.nuget.g.props │ │ ├── FactoryMethodPatternModifiedExample.csproj.nuget.g.targets │ │ └── project.assets.json └── FactoryMethodPatternWithMethodParameters │ ├── FactoryMethodPatternWithMethodParameters.csproj │ ├── Program.cs │ ├── bin │ └── Debug │ │ └── netcoreapp3.1 │ │ ├── FactoryMethodPatternWithMethodParameters.deps.json │ │ ├── FactoryMethodPatternWithMethodParameters.dll │ │ ├── FactoryMethodPatternWithMethodParameters.exe │ │ ├── FactoryMethodPatternWithMethodParameters.pdb │ │ ├── FactoryMethodPatternWithMethodParameters.runtimeconfig.dev.json │ │ └── FactoryMethodPatternWithMethodParameters.runtimeconfig.json │ └── obj │ ├── Debug │ └── netcoreapp3.1 │ │ ├── FactoryMethodPatternWithMethodParameters.AssemblyInfo.cs │ │ ├── FactoryMethodPatternWithMethodParameters.AssemblyInfoInputs.cache │ │ ├── FactoryMethodPatternWithMethodParameters.assets.cache │ │ ├── FactoryMethodPatternWithMethodParameters.csproj.FileListAbsolute.txt │ │ ├── FactoryMethodPatternWithMethodParameters.csprojAssemblyReference.cache │ │ ├── FactoryMethodPatternWithMethodParameters.dll │ │ ├── FactoryMethodPatternWithMethodParameters.exe │ │ └── FactoryMethodPatternWithMethodParameters.pdb │ ├── FactoryMethodPatternWithMethodParameters.csproj.nuget.cache │ ├── FactoryMethodPatternWithMethodParameters.csproj.nuget.dgspec.json │ ├── FactoryMethodPatternWithMethodParameters.csproj.nuget.g.props │ ├── FactoryMethodPatternWithMethodParameters.csproj.nuget.g.targets │ └── project.assets.json ├── Ch-05 └── AbstractFactoryPattern │ ├── AbstractFactoryClassDiagram.cd │ ├── AbstractFactoryPattern.csproj │ ├── Program.cs │ ├── bin │ └── Debug │ │ └── netcoreapp3.1 │ │ ├── AbstractFactoryPattern.deps.json │ │ ├── AbstractFactoryPattern.dll │ │ ├── AbstractFactoryPattern.exe │ │ ├── AbstractFactoryPattern.pdb │ │ ├── AbstractFactoryPattern.runtimeconfig.dev.json │ │ └── AbstractFactoryPattern.runtimeconfig.json │ └── obj │ ├── AbstractFactoryPattern.csproj.nuget.cache │ ├── AbstractFactoryPattern.csproj.nuget.dgspec.json │ ├── AbstractFactoryPattern.csproj.nuget.g.props │ ├── AbstractFactoryPattern.csproj.nuget.g.targets │ ├── Debug │ └── netcoreapp3.1 │ │ ├── AbstractFactoryPattern.AssemblyInfo.cs │ │ ├── AbstractFactoryPattern.AssemblyInfoInputs.cache │ │ ├── AbstractFactoryPattern.assets.cache │ │ ├── AbstractFactoryPattern.csproj.FileListAbsolute.txt │ │ ├── AbstractFactoryPattern.csprojAssemblyReference.cache │ │ ├── AbstractFactoryPattern.dll │ │ ├── AbstractFactoryPattern.exe │ │ └── AbstractFactoryPattern.pdb │ └── project.assets.json ├── Ch-06 ├── ProxyPatternDemo │ ├── Program.cs │ ├── ProxyPatternDemo.csproj │ ├── ProxyPatternDemoClassDiagram.cd │ ├── bin │ │ └── Debug │ │ │ └── netcoreapp3.1 │ │ │ ├── ProxyPatternDemo.deps.json │ │ │ ├── ProxyPatternDemo.dll │ │ │ ├── ProxyPatternDemo.exe │ │ │ ├── ProxyPatternDemo.pdb │ │ │ ├── ProxyPatternDemo.runtimeconfig.dev.json │ │ │ └── ProxyPatternDemo.runtimeconfig.json │ └── obj │ │ ├── Debug │ │ └── netcoreapp3.1 │ │ │ ├── ProxyPatternDemo.AssemblyInfo.cs │ │ │ ├── ProxyPatternDemo.AssemblyInfoInputs.cache │ │ │ ├── ProxyPatternDemo.assets.cache │ │ │ ├── ProxyPatternDemo.csproj.FileListAbsolute.txt │ │ │ ├── ProxyPatternDemo.csprojAssemblyReference.cache │ │ │ ├── ProxyPatternDemo.dll │ │ │ ├── ProxyPatternDemo.exe │ │ │ └── ProxyPatternDemo.pdb │ │ ├── ProxyPatternDemo.csproj.nuget.cache │ │ ├── ProxyPatternDemo.csproj.nuget.dgspec.json │ │ ├── ProxyPatternDemo.csproj.nuget.g.props │ │ ├── ProxyPatternDemo.csproj.nuget.g.targets │ │ └── project.assets.json └── ProxyPatternDemo2 │ ├── Program.cs │ ├── ProxyPatternDemo2.csproj │ ├── bin │ └── Debug │ │ └── netcoreapp3.1 │ │ ├── ProxyPatternDemo2.deps.json │ │ ├── ProxyPatternDemo2.dll │ │ ├── ProxyPatternDemo2.exe │ │ ├── ProxyPatternDemo2.pdb │ │ ├── ProxyPatternDemo2.runtimeconfig.dev.json │ │ └── ProxyPatternDemo2.runtimeconfig.json │ └── obj │ ├── Debug │ └── netcoreapp3.1 │ │ ├── ProxyPatternDemo2.AssemblyInfo.cs │ │ ├── ProxyPatternDemo2.AssemblyInfoInputs.cache │ │ ├── ProxyPatternDemo2.assets.cache │ │ ├── ProxyPatternDemo2.csproj.FileListAbsolute.txt │ │ ├── ProxyPatternDemo2.csprojAssemblyReference.cache │ │ ├── ProxyPatternDemo2.dll │ │ ├── ProxyPatternDemo2.exe │ │ └── ProxyPatternDemo2.pdb │ ├── ProxyPatternDemo2.csproj.nuget.cache │ ├── ProxyPatternDemo2.csproj.nuget.dgspec.json │ ├── ProxyPatternDemo2.csproj.nuget.g.props │ ├── ProxyPatternDemo2.csproj.nuget.g.targets │ └── project.assets.json ├── Ch-07 └── DecoratorPatternDemo │ ├── DecoraorPatternClassDiagram.cd │ ├── DecoratorPatternDemo.csproj │ ├── Program.cs │ ├── bin │ └── Debug │ │ └── netcoreapp3.1 │ │ ├── DecoratorPatternDemo.deps.json │ │ ├── DecoratorPatternDemo.dll │ │ ├── DecoratorPatternDemo.exe │ │ ├── DecoratorPatternDemo.pdb │ │ ├── DecoratorPatternDemo.runtimeconfig.dev.json │ │ └── DecoratorPatternDemo.runtimeconfig.json │ └── obj │ ├── Debug │ └── netcoreapp3.1 │ │ ├── DecoratorPatternDemo.AssemblyInfo.cs │ │ ├── DecoratorPatternDemo.AssemblyInfoInputs.cache │ │ ├── DecoratorPatternDemo.assets.cache │ │ ├── DecoratorPatternDemo.csproj.FileListAbsolute.txt │ │ ├── DecoratorPatternDemo.csprojAssemblyReference.cache │ │ ├── DecoratorPatternDemo.dll │ │ ├── DecoratorPatternDemo.exe │ │ └── DecoratorPatternDemo.pdb │ ├── DecoratorPatternDemo.csproj.nuget.cache │ ├── DecoratorPatternDemo.csproj.nuget.dgspec.json │ ├── DecoratorPatternDemo.csproj.nuget.g.props │ ├── DecoratorPatternDemo.csproj.nuget.g.targets │ └── project.assets.json ├── Ch-08 ├── AdapterPatternAlternativeImplementationDemo │ ├── AdapterPatternAlternativeImplementationDemo.csproj │ ├── Program.cs │ ├── bin │ │ └── Debug │ │ │ └── netcoreapp3.1 │ │ │ ├── AdapterPatternAlternativeImplementationDemo.deps.json │ │ │ ├── AdapterPatternAlternativeImplementationDemo.dll │ │ │ ├── AdapterPatternAlternativeImplementationDemo.exe │ │ │ ├── AdapterPatternAlternativeImplementationDemo.pdb │ │ │ ├── AdapterPatternAlternativeImplementationDemo.runtimeconfig.dev.json │ │ │ └── AdapterPatternAlternativeImplementationDemo.runtimeconfig.json │ └── obj │ │ ├── AdapterPatternAlternativeImplementationDemo.csproj.nuget.cache │ │ ├── AdapterPatternAlternativeImplementationDemo.csproj.nuget.dgspec.json │ │ ├── AdapterPatternAlternativeImplementationDemo.csproj.nuget.g.props │ │ ├── AdapterPatternAlternativeImplementationDemo.csproj.nuget.g.targets │ │ ├── Debug │ │ └── netcoreapp3.1 │ │ │ ├── AdapterPatternAlternativeImplementationDemo.AssemblyInfo.cs │ │ │ ├── AdapterPatternAlternativeImplementationDemo.AssemblyInfoInputs.cache │ │ │ ├── AdapterPatternAlternativeImplementationDemo.assets.cache │ │ │ ├── AdapterPatternAlternativeImplementationDemo.csproj.FileListAbsolute.txt │ │ │ ├── AdapterPatternAlternativeImplementationDemo.csprojAssemblyReference.cache │ │ │ ├── AdapterPatternAlternativeImplementationDemo.dll │ │ │ ├── AdapterPatternAlternativeImplementationDemo.exe │ │ │ └── AdapterPatternAlternativeImplementationDemo.pdb │ │ └── project.assets.json └── AdapterPatternDemonstration │ ├── AdapterPatternClassDiagram.cd │ ├── AdapterPatternDemonstration.csproj │ ├── Program.cs │ ├── bin │ └── Debug │ │ └── netcoreapp3.1 │ │ ├── AdapterPatternDemonstration.deps.json │ │ ├── AdapterPatternDemonstration.dll │ │ ├── AdapterPatternDemonstration.exe │ │ ├── AdapterPatternDemonstration.pdb │ │ ├── AdapterPatternDemonstration.runtimeconfig.dev.json │ │ └── AdapterPatternDemonstration.runtimeconfig.json │ └── obj │ ├── AdapterPatternDemonstration.csproj.nuget.cache │ ├── AdapterPatternDemonstration.csproj.nuget.dgspec.json │ ├── AdapterPatternDemonstration.csproj.nuget.g.props │ ├── AdapterPatternDemonstration.csproj.nuget.g.targets │ ├── Debug │ └── netcoreapp3.1 │ │ ├── AdapterPatternDemonstration.AssemblyInfo.cs │ │ ├── AdapterPatternDemonstration.AssemblyInfoInputs.cache │ │ ├── AdapterPatternDemonstration.assets.cache │ │ ├── AdapterPatternDemonstration.csproj.FileListAbsolute.txt │ │ ├── AdapterPatternDemonstration.csprojAssemblyReference.cache │ │ ├── AdapterPatternDemonstration.dll │ │ ├── AdapterPatternDemonstration.exe │ │ └── AdapterPatternDemonstration.pdb │ └── project.assets.json ├── Ch-09 └── FacadePattern │ ├── FacadePattern.csproj │ ├── FacedePatternClassDiagram.cd │ ├── Program.cs │ ├── RobotFacade.cs │ ├── RobotParts │ ├── RobotBody.cs │ └── RobotColor.cs │ ├── bin │ └── Debug │ │ └── netcoreapp3.1 │ │ ├── FacadePattern.deps.json │ │ ├── FacadePattern.dll │ │ ├── FacadePattern.exe │ │ ├── FacadePattern.pdb │ │ ├── FacadePattern.runtimeconfig.dev.json │ │ └── FacadePattern.runtimeconfig.json │ └── obj │ ├── Debug │ └── netcoreapp3.1 │ │ ├── FacadePattern.AssemblyInfo.cs │ │ ├── FacadePattern.AssemblyInfoInputs.cache │ │ ├── FacadePattern.assets.cache │ │ ├── FacadePattern.csproj.FileListAbsolute.txt │ │ ├── FacadePattern.csprojAssemblyReference.cache │ │ ├── FacadePattern.dll │ │ ├── FacadePattern.exe │ │ └── FacadePattern.pdb │ ├── FacadePattern.csproj.nuget.cache │ ├── FacadePattern.csproj.nuget.dgspec.json │ ├── FacadePattern.csproj.nuget.g.props │ ├── FacadePattern.csproj.nuget.g.targets │ └── project.assets.json ├── Ch-10 ├── FlyweightFactoryAsSingleton │ ├── FlyweightFactoryAsSingleton.csproj │ └── Program.cs └── FlyweightPattern │ ├── FlyweightPattern.csproj │ ├── FlyweightPatternClassDiagram.cd │ └── Program.cs ├── Ch-11 └── CompositePattern │ ├── CompositePattern.csproj │ ├── CompositePatternClassDiagram.cd │ └── Program.cs ├── Ch-12 ├── BridgePattern │ ├── BridgePattern.csproj │ ├── BridgePatternClassDiagram.cd │ └── Program.cs └── BridgePatternDemo2 │ ├── BridgePatternDemo2.csproj │ ├── BridgePatternDemo2ClassDiagram.cd │ └── Program.cs ├── Ch-13 ├── VisiotorPattern │ ├── Program.cs │ ├── VisiotorPattern.csproj │ └── VisitorPatternClassDiagram.cd ├── VisitorPatternDemo2 │ ├── Program.cs │ └── VisitorPatternDemo2.csproj └── VisitorWithCompositePattern │ ├── Program.cs │ ├── VisitorWithCompositePattern.csproj │ └── VisitorWithCompositePatternClassDiagram.cd ├── Ch-14 └── ObserverPattern │ ├── ObserverPattern.csproj │ ├── ObserverPatternClassDiagram.cd │ └── Program.cs ├── Ch-15 └── StrategyPattern │ ├── Program.cs │ ├── StrategyPattern.csproj │ └── StrategyPatternClassDiagram.cd ├── Ch-16 ├── TemplateMethodPattern │ ├── Program.cs │ ├── TemplateMethodClassDiagram.cd │ └── TemplateMethodPattern.csproj └── TemplateMethodPatternDemo2 │ ├── Program.cs │ └── TemplateMethodPatternDemo2.csproj ├── Ch-17 ├── CommandPattern │ ├── CommandPattern.csproj │ ├── CommandPatternClassDiagram.cd │ └── Program.cs └── CommandPatternDemonstration2 │ ├── CommandPatternDemonstration2.csproj │ └── Program.cs ├── Ch-18 ├── IteratorPattern │ ├── IteratorPattern.csproj │ ├── IteratorPatternClassDiagram.cd │ └── Program.cs └── SimpleIterator │ ├── Program.cs │ └── SimpleIterator.csproj ├── Ch-19 ├── MementoPattern │ ├── MementoPattern.csproj │ ├── MementoPatternClassDiagram.cd │ └── Program.cs └── MementoPatternDemo2 │ ├── MementoPatternClassDiagramForDemo2.cd │ ├── MementoPatternDemo2.csproj │ ├── Originator.cs │ └── Program.cs ├── Ch-20 └── StatePattern │ ├── Program.cs │ ├── StatePattern.csproj │ └── StatePatternClassDiagram.cd ├── Ch-21 ├── MediatorPatternModifiedDemo │ ├── MediatorPatternModifiedDemo.csproj │ └── Program.cs └── MediatorPatttern │ ├── MediatorPatternClassDiagram.cd │ ├── MediatorPatttern.csproj │ └── Program.cs ├── Ch-22 └── ChainOfResponsibilityPattern │ ├── ChainOfResponsibilityPattern.csproj │ ├── ChainofResponsibilityClassDiagram.cd │ └── Program.cs ├── Ch-23 ├── InterpreterPattern │ ├── InterpreterPattern.csproj │ ├── InterpreterPatternClassDiagramForDemo1.cd │ └── Program.cs └── InterpreterPatternDemo2 │ ├── InterpreterPatternClassDiagramForDemo2.cd │ ├── InterpreterPatternDemo2.csproj │ └── Program.cs ├── Ch-24 └── SimpleFactory │ ├── Dog.cs │ ├── IAnimal.cs │ ├── Program.cs │ ├── SimpleFactory.cs │ ├── SimpleFactory.csproj │ ├── SimpleFactoryClassDiagram.cd │ └── Tiger.cs ├── Ch-25 └── ProgramWithOnePotentialBug │ ├── Program.cs │ └── ProgramWithOnePotentialBug.csproj ├── Ch-26 └── MVCPattern │ ├── Controller │ ├── Controller.cs │ └── EmployeeController.cs │ ├── MVCPattern.csproj │ ├── MVCPatternClassDiagram.cd │ ├── Model │ ├── Employee.cs │ ├── EmployeeModel.cs │ └── Model.cs │ ├── Program.cs │ └── View │ ├── ConsoleView.cs │ ├── MobileDeviceView.cs │ └── View.cs ├── Ch-27 ├── AsyncAwaitAlternateDemonstration │ ├── AsyncAwaitAlternateDemonstration.csproj │ └── Program.cs ├── DifferentWaysToCreateTask │ ├── DifferentWaysToCreateTask.csproj │ └── Program.cs ├── PollingDemoInDotNetFramework │ ├── App.config │ ├── PollingDemoInDotNetFramework.csproj │ ├── Program.cs │ └── Properties │ │ └── AssemblyInfo.cs ├── SynchronousProgrammingExample │ ├── Program.cs │ └── SynchronousProgrammingExample.csproj ├── TAPDemonstration2 │ ├── Program.cs │ └── TAPDemonstration2.csproj ├── UsingAsyncAwait │ ├── Program.cs │ └── UsingAsyncAwait.csproj ├── UsingAsynchronousCallback │ ├── App.config │ ├── Program.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ └── UsingAsynchronousCallback.csproj ├── UsingTAP │ ├── Program.cs │ └── UsingTAP.csproj ├── UsingThreadClass │ ├── Program.cs │ └── UsingThreadClass.csproj ├── UsingThreadPool │ ├── Program.cs │ └── UsingThreadPool.csproj ├── UsingThreadPoolWithLambdaExpression │ ├── Program.cs │ └── UsingThreadPoolWithLambdaExpression.csproj ├── UsingWaitHandleInDotNetFramework │ ├── App.config │ ├── Program.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ └── UsingWaitHandleInDotNetFramework.csproj ├── UsingWebClentWithWinForm │ ├── App.config │ ├── Form1.Designer.cs │ ├── Form1.cs │ ├── Form1.resx │ ├── Program.cs │ ├── Properties │ │ ├── AssemblyInfo.cs │ │ ├── Resources.Designer.cs │ │ ├── Resources.resx │ │ ├── Settings.Designer.cs │ │ └── Settings.settings │ └── UsingWebClentWithWinForm.csproj └── UsingWebClient │ ├── Program.cs │ └── UsingWebClient.csproj ├── Contributing.md ├── DesignPatternsCsharp2e.sln ├── LICENSE.txt ├── README.md └── errata.md /.gitattributes: -------------------------------------------------------------------------------- 1 | # Auto detect text files and perform LF normalization 2 | * text=auto 3 | -------------------------------------------------------------------------------- /9781484260616.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/9781484260616.jpg -------------------------------------------------------------------------------- /Ch-01/SingletonPatternQA/SingletonPatternQA.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-01/SingletonPatternQA/bin/Debug/netcoreapp3.0/SingletonPatternQA.deps.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeTarget": { 3 | "name": ".NETCoreApp,Version=v3.0", 4 | "signature": "" 5 | }, 6 | "compilationOptions": {}, 7 | "targets": { 8 | ".NETCoreApp,Version=v3.0": { 9 | "SingletonPatternQA/1.0.0": { 10 | "runtime": { 11 | "SingletonPatternQA.dll": {} 12 | } 13 | } 14 | } 15 | }, 16 | "libraries": { 17 | "SingletonPatternQA/1.0.0": { 18 | "type": "project", 19 | "serviceable": false, 20 | "sha512": "" 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /Ch-01/SingletonPatternQA/bin/Debug/netcoreapp3.0/SingletonPatternQA.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/SingletonPatternQA/bin/Debug/netcoreapp3.0/SingletonPatternQA.dll -------------------------------------------------------------------------------- /Ch-01/SingletonPatternQA/bin/Debug/netcoreapp3.0/SingletonPatternQA.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/SingletonPatternQA/bin/Debug/netcoreapp3.0/SingletonPatternQA.exe -------------------------------------------------------------------------------- /Ch-01/SingletonPatternQA/bin/Debug/netcoreapp3.0/SingletonPatternQA.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/SingletonPatternQA/bin/Debug/netcoreapp3.0/SingletonPatternQA.pdb -------------------------------------------------------------------------------- /Ch-01/SingletonPatternQA/bin/Debug/netcoreapp3.0/SingletonPatternQA.runtimeconfig.dev.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "additionalProbingPaths": [ 4 | "C:\\Users\\Vaskaran Sarcar\\.dotnet\\store\\|arch|\\|tfm|", 5 | "C:\\Users\\Vaskaran Sarcar\\.nuget\\packages", 6 | "C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder" 7 | ] 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-01/SingletonPatternQA/bin/Debug/netcoreapp3.0/SingletonPatternQA.runtimeconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "tfm": "netcoreapp3.0", 4 | "framework": { 5 | "name": "Microsoft.NETCore.App", 6 | "version": "3.0.0" 7 | } 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-01/SingletonPatternQA/bin/Debug/netcoreapp3.1/SingletonPatternQA.deps.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeTarget": { 3 | "name": ".NETCoreApp,Version=v3.1", 4 | "signature": "" 5 | }, 6 | "compilationOptions": {}, 7 | "targets": { 8 | ".NETCoreApp,Version=v3.1": { 9 | "SingletonPatternQA/1.0.0": { 10 | "runtime": { 11 | "SingletonPatternQA.dll": {} 12 | } 13 | } 14 | } 15 | }, 16 | "libraries": { 17 | "SingletonPatternQA/1.0.0": { 18 | "type": "project", 19 | "serviceable": false, 20 | "sha512": "" 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /Ch-01/SingletonPatternQA/bin/Debug/netcoreapp3.1/SingletonPatternQA.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/SingletonPatternQA/bin/Debug/netcoreapp3.1/SingletonPatternQA.dll -------------------------------------------------------------------------------- /Ch-01/SingletonPatternQA/bin/Debug/netcoreapp3.1/SingletonPatternQA.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/SingletonPatternQA/bin/Debug/netcoreapp3.1/SingletonPatternQA.exe -------------------------------------------------------------------------------- /Ch-01/SingletonPatternQA/bin/Debug/netcoreapp3.1/SingletonPatternQA.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/SingletonPatternQA/bin/Debug/netcoreapp3.1/SingletonPatternQA.pdb -------------------------------------------------------------------------------- /Ch-01/SingletonPatternQA/bin/Debug/netcoreapp3.1/SingletonPatternQA.runtimeconfig.dev.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "additionalProbingPaths": [ 4 | "C:\\Users\\Vaskaran Sarcar\\.dotnet\\store\\|arch|\\|tfm|", 5 | "C:\\Users\\Vaskaran Sarcar\\.nuget\\packages", 6 | "C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder" 7 | ] 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-01/SingletonPatternQA/bin/Debug/netcoreapp3.1/SingletonPatternQA.runtimeconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "tfm": "netcoreapp3.1", 4 | "framework": { 5 | "name": "Microsoft.NETCore.App", 6 | "version": "3.1.0" 7 | } 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-01/SingletonPatternQA/obj/Debug/netcoreapp3.0/SingletonPatternQA.AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // This code was generated by a tool. 4 | // Runtime Version:4.0.30319.42000 5 | // 6 | // Changes to this file may cause incorrect behavior and will be lost if 7 | // the code is regenerated. 8 | // 9 | //------------------------------------------------------------------------------ 10 | 11 | using System; 12 | using System.Reflection; 13 | 14 | [assembly: System.Reflection.AssemblyCompanyAttribute("SingletonPatternQA")] 15 | [assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] 16 | [assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] 17 | [assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")] 18 | [assembly: System.Reflection.AssemblyProductAttribute("SingletonPatternQA")] 19 | [assembly: System.Reflection.AssemblyTitleAttribute("SingletonPatternQA")] 20 | [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] 21 | 22 | // Generated by the MSBuild WriteCodeFragment class. 23 | 24 | -------------------------------------------------------------------------------- /Ch-01/SingletonPatternQA/obj/Debug/netcoreapp3.0/SingletonPatternQA.AssemblyInfoInputs.cache: -------------------------------------------------------------------------------- 1 | ebadbda74912eb64ec9f77237e22a272776351a0 2 | -------------------------------------------------------------------------------- /Ch-01/SingletonPatternQA/obj/Debug/netcoreapp3.0/SingletonPatternQA.assets.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/SingletonPatternQA/obj/Debug/netcoreapp3.0/SingletonPatternQA.assets.cache -------------------------------------------------------------------------------- /Ch-01/SingletonPatternQA/obj/Debug/netcoreapp3.0/SingletonPatternQA.csprojAssemblyReference.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/SingletonPatternQA/obj/Debug/netcoreapp3.0/SingletonPatternQA.csprojAssemblyReference.cache -------------------------------------------------------------------------------- /Ch-01/SingletonPatternQA/obj/Debug/netcoreapp3.0/SingletonPatternQA.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/SingletonPatternQA/obj/Debug/netcoreapp3.0/SingletonPatternQA.dll -------------------------------------------------------------------------------- /Ch-01/SingletonPatternQA/obj/Debug/netcoreapp3.0/SingletonPatternQA.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/SingletonPatternQA/obj/Debug/netcoreapp3.0/SingletonPatternQA.exe -------------------------------------------------------------------------------- /Ch-01/SingletonPatternQA/obj/Debug/netcoreapp3.0/SingletonPatternQA.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/SingletonPatternQA/obj/Debug/netcoreapp3.0/SingletonPatternQA.pdb -------------------------------------------------------------------------------- /Ch-01/SingletonPatternQA/obj/Debug/netcoreapp3.1/SingletonPatternQA.AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // This code was generated by a tool. 4 | // Runtime Version:4.0.30319.42000 5 | // 6 | // Changes to this file may cause incorrect behavior and will be lost if 7 | // the code is regenerated. 8 | // 9 | //------------------------------------------------------------------------------ 10 | 11 | using System; 12 | using System.Reflection; 13 | 14 | [assembly: System.Reflection.AssemblyCompanyAttribute("SingletonPatternQA")] 15 | [assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] 16 | [assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] 17 | [assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")] 18 | [assembly: System.Reflection.AssemblyProductAttribute("SingletonPatternQA")] 19 | [assembly: System.Reflection.AssemblyTitleAttribute("SingletonPatternQA")] 20 | [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] 21 | 22 | // Generated by the MSBuild WriteCodeFragment class. 23 | 24 | -------------------------------------------------------------------------------- /Ch-01/SingletonPatternQA/obj/Debug/netcoreapp3.1/SingletonPatternQA.AssemblyInfoInputs.cache: -------------------------------------------------------------------------------- 1 | ebadbda74912eb64ec9f77237e22a272776351a0 2 | -------------------------------------------------------------------------------- /Ch-01/SingletonPatternQA/obj/Debug/netcoreapp3.1/SingletonPatternQA.assets.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/SingletonPatternQA/obj/Debug/netcoreapp3.1/SingletonPatternQA.assets.cache -------------------------------------------------------------------------------- /Ch-01/SingletonPatternQA/obj/Debug/netcoreapp3.1/SingletonPatternQA.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/SingletonPatternQA/obj/Debug/netcoreapp3.1/SingletonPatternQA.dll -------------------------------------------------------------------------------- /Ch-01/SingletonPatternQA/obj/Debug/netcoreapp3.1/SingletonPatternQA.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/SingletonPatternQA/obj/Debug/netcoreapp3.1/SingletonPatternQA.exe -------------------------------------------------------------------------------- /Ch-01/SingletonPatternQA/obj/Debug/netcoreapp3.1/SingletonPatternQA.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/SingletonPatternQA/obj/Debug/netcoreapp3.1/SingletonPatternQA.pdb -------------------------------------------------------------------------------- /Ch-01/SingletonPatternQA/obj/SingletonPatternQA.csproj.nuget.cache: -------------------------------------------------------------------------------- 1 | { 2 | "version": 1, 3 | "dgSpecHash": "IFv9BWRM8Hedxjk3gij1/lzsy/tLRWgJ8Gz7du6J9YxE2ygtTY9nXdPRsJ63RAOfBKSITy1aOOl204+zWhai1w==", 4 | "success": true 5 | } -------------------------------------------------------------------------------- /Ch-01/SingletonPatternQA/obj/SingletonPatternQA.csproj.nuget.g.targets: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(MSBuildAllProjects);$(MSBuildThisFileFullPath) 5 | 6 | -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticConstructor/SingletonPatternUsingStaticConstructor.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticConstructor/SingletonPatternUsingStaticConstructorClassDiagram.cd: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | AAAAAAAAAAAAAAAAAAAAAAAAAABEAAAAQAAAAAAAAAA= 7 | Program.cs 8 | 9 | 10 | 11 | 12 | 13 | AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAA= 14 | Program.cs 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticConstructor/bin/Debug/netcoreapp3.0/SingletonPatternUsingStaticConstructor.deps.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeTarget": { 3 | "name": ".NETCoreApp,Version=v3.0", 4 | "signature": "" 5 | }, 6 | "compilationOptions": {}, 7 | "targets": { 8 | ".NETCoreApp,Version=v3.0": { 9 | "SingletonPatternUsingStaticConstructor/1.0.0": { 10 | "runtime": { 11 | "SingletonPatternUsingStaticConstructor.dll": {} 12 | } 13 | } 14 | } 15 | }, 16 | "libraries": { 17 | "SingletonPatternUsingStaticConstructor/1.0.0": { 18 | "type": "project", 19 | "serviceable": false, 20 | "sha512": "" 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticConstructor/bin/Debug/netcoreapp3.0/SingletonPatternUsingStaticConstructor.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/SingletonPatternUsingStaticConstructor/bin/Debug/netcoreapp3.0/SingletonPatternUsingStaticConstructor.dll -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticConstructor/bin/Debug/netcoreapp3.0/SingletonPatternUsingStaticConstructor.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/SingletonPatternUsingStaticConstructor/bin/Debug/netcoreapp3.0/SingletonPatternUsingStaticConstructor.exe -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticConstructor/bin/Debug/netcoreapp3.0/SingletonPatternUsingStaticConstructor.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/SingletonPatternUsingStaticConstructor/bin/Debug/netcoreapp3.0/SingletonPatternUsingStaticConstructor.pdb -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticConstructor/bin/Debug/netcoreapp3.0/SingletonPatternUsingStaticConstructor.runtimeconfig.dev.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "additionalProbingPaths": [ 4 | "C:\\Users\\Vaskaran Sarcar\\.dotnet\\store\\|arch|\\|tfm|", 5 | "C:\\Users\\Vaskaran Sarcar\\.nuget\\packages", 6 | "C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder" 7 | ] 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticConstructor/bin/Debug/netcoreapp3.0/SingletonPatternUsingStaticConstructor.runtimeconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "tfm": "netcoreapp3.0", 4 | "framework": { 5 | "name": "Microsoft.NETCore.App", 6 | "version": "3.0.0" 7 | } 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticConstructor/bin/Debug/netcoreapp3.1/SingletonPatternUsingStaticConstructor.deps.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeTarget": { 3 | "name": ".NETCoreApp,Version=v3.1", 4 | "signature": "" 5 | }, 6 | "compilationOptions": {}, 7 | "targets": { 8 | ".NETCoreApp,Version=v3.1": { 9 | "SingletonPatternUsingStaticConstructor/1.0.0": { 10 | "runtime": { 11 | "SingletonPatternUsingStaticConstructor.dll": {} 12 | } 13 | } 14 | } 15 | }, 16 | "libraries": { 17 | "SingletonPatternUsingStaticConstructor/1.0.0": { 18 | "type": "project", 19 | "serviceable": false, 20 | "sha512": "" 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticConstructor/bin/Debug/netcoreapp3.1/SingletonPatternUsingStaticConstructor.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/SingletonPatternUsingStaticConstructor/bin/Debug/netcoreapp3.1/SingletonPatternUsingStaticConstructor.dll -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticConstructor/bin/Debug/netcoreapp3.1/SingletonPatternUsingStaticConstructor.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/SingletonPatternUsingStaticConstructor/bin/Debug/netcoreapp3.1/SingletonPatternUsingStaticConstructor.exe -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticConstructor/bin/Debug/netcoreapp3.1/SingletonPatternUsingStaticConstructor.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/SingletonPatternUsingStaticConstructor/bin/Debug/netcoreapp3.1/SingletonPatternUsingStaticConstructor.pdb -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticConstructor/bin/Debug/netcoreapp3.1/SingletonPatternUsingStaticConstructor.runtimeconfig.dev.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "additionalProbingPaths": [ 4 | "C:\\Users\\Vaskaran Sarcar\\.dotnet\\store\\|arch|\\|tfm|", 5 | "C:\\Users\\Vaskaran Sarcar\\.nuget\\packages", 6 | "C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder" 7 | ] 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticConstructor/bin/Debug/netcoreapp3.1/SingletonPatternUsingStaticConstructor.runtimeconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "tfm": "netcoreapp3.1", 4 | "framework": { 5 | "name": "Microsoft.NETCore.App", 6 | "version": "3.1.0" 7 | } 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticConstructor/obj/Debug/netcoreapp3.0/SingletonPatternUsingStaticConstructor.AssemblyInfoInputs.cache: -------------------------------------------------------------------------------- 1 | a910321623f97c5cb41357f8450bc8881b22c2bb 2 | -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticConstructor/obj/Debug/netcoreapp3.0/SingletonPatternUsingStaticConstructor.assets.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/SingletonPatternUsingStaticConstructor/obj/Debug/netcoreapp3.0/SingletonPatternUsingStaticConstructor.assets.cache -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticConstructor/obj/Debug/netcoreapp3.0/SingletonPatternUsingStaticConstructor.csprojAssemblyReference.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/SingletonPatternUsingStaticConstructor/obj/Debug/netcoreapp3.0/SingletonPatternUsingStaticConstructor.csprojAssemblyReference.cache -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticConstructor/obj/Debug/netcoreapp3.0/SingletonPatternUsingStaticConstructor.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/SingletonPatternUsingStaticConstructor/obj/Debug/netcoreapp3.0/SingletonPatternUsingStaticConstructor.dll -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticConstructor/obj/Debug/netcoreapp3.0/SingletonPatternUsingStaticConstructor.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/SingletonPatternUsingStaticConstructor/obj/Debug/netcoreapp3.0/SingletonPatternUsingStaticConstructor.exe -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticConstructor/obj/Debug/netcoreapp3.0/SingletonPatternUsingStaticConstructor.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/SingletonPatternUsingStaticConstructor/obj/Debug/netcoreapp3.0/SingletonPatternUsingStaticConstructor.pdb -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticConstructor/obj/Debug/netcoreapp3.1/SingletonPatternUsingStaticConstructor.AssemblyInfoInputs.cache: -------------------------------------------------------------------------------- 1 | a910321623f97c5cb41357f8450bc8881b22c2bb 2 | -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticConstructor/obj/Debug/netcoreapp3.1/SingletonPatternUsingStaticConstructor.assets.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/SingletonPatternUsingStaticConstructor/obj/Debug/netcoreapp3.1/SingletonPatternUsingStaticConstructor.assets.cache -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticConstructor/obj/Debug/netcoreapp3.1/SingletonPatternUsingStaticConstructor.csprojAssemblyReference.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/SingletonPatternUsingStaticConstructor/obj/Debug/netcoreapp3.1/SingletonPatternUsingStaticConstructor.csprojAssemblyReference.cache -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticConstructor/obj/Debug/netcoreapp3.1/SingletonPatternUsingStaticConstructor.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/SingletonPatternUsingStaticConstructor/obj/Debug/netcoreapp3.1/SingletonPatternUsingStaticConstructor.dll -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticConstructor/obj/Debug/netcoreapp3.1/SingletonPatternUsingStaticConstructor.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/SingletonPatternUsingStaticConstructor/obj/Debug/netcoreapp3.1/SingletonPatternUsingStaticConstructor.exe -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticConstructor/obj/Debug/netcoreapp3.1/SingletonPatternUsingStaticConstructor.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/SingletonPatternUsingStaticConstructor/obj/Debug/netcoreapp3.1/SingletonPatternUsingStaticConstructor.pdb -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticConstructor/obj/SingletonPatternUsingStaticConstructor.csproj.nuget.cache: -------------------------------------------------------------------------------- 1 | { 2 | "version": 1, 3 | "dgSpecHash": "FQZy5m8mS7ripFFChSiS4HqG1FG3xKupSyDd+wUhMSUl/w68uz1BPbVmG60ns9vBpPo3GttukoTI13r8eN02SA==", 4 | "success": true 5 | } -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticConstructor/obj/SingletonPatternUsingStaticConstructor.csproj.nuget.g.targets: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(MSBuildAllProjects);$(MSBuildThisFileFullPath) 5 | 6 | -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticInitialization/SingletonPatternUsingStaticInitialization.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticInitialization/bin/Debug/netcoreapp3.1/SingletonPatternUsingStaticInitialization.deps.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeTarget": { 3 | "name": ".NETCoreApp,Version=v3.1", 4 | "signature": "" 5 | }, 6 | "compilationOptions": {}, 7 | "targets": { 8 | ".NETCoreApp,Version=v3.1": { 9 | "SingletonPatternUsingStaticInitialization/1.0.0": { 10 | "runtime": { 11 | "SingletonPatternUsingStaticInitialization.dll": {} 12 | } 13 | } 14 | } 15 | }, 16 | "libraries": { 17 | "SingletonPatternUsingStaticInitialization/1.0.0": { 18 | "type": "project", 19 | "serviceable": false, 20 | "sha512": "" 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticInitialization/bin/Debug/netcoreapp3.1/SingletonPatternUsingStaticInitialization.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/SingletonPatternUsingStaticInitialization/bin/Debug/netcoreapp3.1/SingletonPatternUsingStaticInitialization.dll -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticInitialization/bin/Debug/netcoreapp3.1/SingletonPatternUsingStaticInitialization.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/SingletonPatternUsingStaticInitialization/bin/Debug/netcoreapp3.1/SingletonPatternUsingStaticInitialization.exe -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticInitialization/bin/Debug/netcoreapp3.1/SingletonPatternUsingStaticInitialization.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/SingletonPatternUsingStaticInitialization/bin/Debug/netcoreapp3.1/SingletonPatternUsingStaticInitialization.pdb -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticInitialization/bin/Debug/netcoreapp3.1/SingletonPatternUsingStaticInitialization.runtimeconfig.dev.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "additionalProbingPaths": [ 4 | "C:\\Users\\Vaskaran Sarcar\\.dotnet\\store\\|arch|\\|tfm|", 5 | "C:\\Users\\Vaskaran Sarcar\\.nuget\\packages", 6 | "C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder" 7 | ] 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticInitialization/bin/Debug/netcoreapp3.1/SingletonPatternUsingStaticInitialization.runtimeconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "tfm": "netcoreapp3.1", 4 | "framework": { 5 | "name": "Microsoft.NETCore.App", 6 | "version": "3.1.0" 7 | } 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticInitialization/obj/Debug/netcoreapp3.0/SingletonPatternUsingStaticInitialization.AssemblyInfoInputs.cache: -------------------------------------------------------------------------------- 1 | 7a37c51387eedc4e6fb5c49adc7e03acc57b5395 2 | -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticInitialization/obj/Debug/netcoreapp3.0/SingletonPatternUsingStaticInitialization.assets.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/SingletonPatternUsingStaticInitialization/obj/Debug/netcoreapp3.0/SingletonPatternUsingStaticInitialization.assets.cache -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticInitialization/obj/Debug/netcoreapp3.0/SingletonPatternUsingStaticInitialization.csprojAssemblyReference.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/SingletonPatternUsingStaticInitialization/obj/Debug/netcoreapp3.0/SingletonPatternUsingStaticInitialization.csprojAssemblyReference.cache -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticInitialization/obj/Debug/netcoreapp3.1/SingletonPatternUsingStaticInitialization.AssemblyInfoInputs.cache: -------------------------------------------------------------------------------- 1 | 7a37c51387eedc4e6fb5c49adc7e03acc57b5395 2 | -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticInitialization/obj/Debug/netcoreapp3.1/SingletonPatternUsingStaticInitialization.assets.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/SingletonPatternUsingStaticInitialization/obj/Debug/netcoreapp3.1/SingletonPatternUsingStaticInitialization.assets.cache -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticInitialization/obj/Debug/netcoreapp3.1/SingletonPatternUsingStaticInitialization.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/SingletonPatternUsingStaticInitialization/obj/Debug/netcoreapp3.1/SingletonPatternUsingStaticInitialization.dll -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticInitialization/obj/Debug/netcoreapp3.1/SingletonPatternUsingStaticInitialization.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/SingletonPatternUsingStaticInitialization/obj/Debug/netcoreapp3.1/SingletonPatternUsingStaticInitialization.exe -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticInitialization/obj/Debug/netcoreapp3.1/SingletonPatternUsingStaticInitialization.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/SingletonPatternUsingStaticInitialization/obj/Debug/netcoreapp3.1/SingletonPatternUsingStaticInitialization.pdb -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticInitialization/obj/SingletonPatternUsingStaticInitialization.csproj.nuget.cache: -------------------------------------------------------------------------------- 1 | { 2 | "version": 1, 3 | "dgSpecHash": "ntbBcQNxT+G1o+XYqxKAuWQPV6BwjCzE7u7kijcFQtrFhl/0VrAKNc5HThEbVps0aBcE78PPzvqyrpjWIYeiCw==", 4 | "success": true 5 | } -------------------------------------------------------------------------------- /Ch-01/SingletonPatternUsingStaticInitialization/obj/SingletonPatternUsingStaticInitialization.csproj.nuget.g.targets: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(MSBuildAllProjects);$(MSBuildThisFileFullPath) 5 | 6 | -------------------------------------------------------------------------------- /Ch-01/UsingDoubleCheckedLocking/UsingDoubleCheckedLocking.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-01/UsingDoubleCheckedLocking/bin/Debug/netcoreapp3.0/UsingDoubleCheckedLocking.deps.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeTarget": { 3 | "name": ".NETCoreApp,Version=v3.0", 4 | "signature": "" 5 | }, 6 | "compilationOptions": {}, 7 | "targets": { 8 | ".NETCoreApp,Version=v3.0": { 9 | "UsingDoubleCheckedLocking/1.0.0": { 10 | "runtime": { 11 | "UsingDoubleCheckedLocking.dll": {} 12 | } 13 | } 14 | } 15 | }, 16 | "libraries": { 17 | "UsingDoubleCheckedLocking/1.0.0": { 18 | "type": "project", 19 | "serviceable": false, 20 | "sha512": "" 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /Ch-01/UsingDoubleCheckedLocking/bin/Debug/netcoreapp3.0/UsingDoubleCheckedLocking.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingDoubleCheckedLocking/bin/Debug/netcoreapp3.0/UsingDoubleCheckedLocking.dll -------------------------------------------------------------------------------- /Ch-01/UsingDoubleCheckedLocking/bin/Debug/netcoreapp3.0/UsingDoubleCheckedLocking.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingDoubleCheckedLocking/bin/Debug/netcoreapp3.0/UsingDoubleCheckedLocking.exe -------------------------------------------------------------------------------- /Ch-01/UsingDoubleCheckedLocking/bin/Debug/netcoreapp3.0/UsingDoubleCheckedLocking.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingDoubleCheckedLocking/bin/Debug/netcoreapp3.0/UsingDoubleCheckedLocking.pdb -------------------------------------------------------------------------------- /Ch-01/UsingDoubleCheckedLocking/bin/Debug/netcoreapp3.0/UsingDoubleCheckedLocking.runtimeconfig.dev.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "additionalProbingPaths": [ 4 | "C:\\Users\\Vaskaran Sarcar\\.dotnet\\store\\|arch|\\|tfm|", 5 | "C:\\Users\\Vaskaran Sarcar\\.nuget\\packages", 6 | "C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder" 7 | ] 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-01/UsingDoubleCheckedLocking/bin/Debug/netcoreapp3.0/UsingDoubleCheckedLocking.runtimeconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "tfm": "netcoreapp3.0", 4 | "framework": { 5 | "name": "Microsoft.NETCore.App", 6 | "version": "3.0.0" 7 | } 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-01/UsingDoubleCheckedLocking/bin/Debug/netcoreapp3.1/UsingDoubleCheckedLocking.deps.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeTarget": { 3 | "name": ".NETCoreApp,Version=v3.1", 4 | "signature": "" 5 | }, 6 | "compilationOptions": {}, 7 | "targets": { 8 | ".NETCoreApp,Version=v3.1": { 9 | "UsingDoubleCheckedLocking/1.0.0": { 10 | "runtime": { 11 | "UsingDoubleCheckedLocking.dll": {} 12 | } 13 | } 14 | } 15 | }, 16 | "libraries": { 17 | "UsingDoubleCheckedLocking/1.0.0": { 18 | "type": "project", 19 | "serviceable": false, 20 | "sha512": "" 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /Ch-01/UsingDoubleCheckedLocking/bin/Debug/netcoreapp3.1/UsingDoubleCheckedLocking.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingDoubleCheckedLocking/bin/Debug/netcoreapp3.1/UsingDoubleCheckedLocking.dll -------------------------------------------------------------------------------- /Ch-01/UsingDoubleCheckedLocking/bin/Debug/netcoreapp3.1/UsingDoubleCheckedLocking.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingDoubleCheckedLocking/bin/Debug/netcoreapp3.1/UsingDoubleCheckedLocking.exe -------------------------------------------------------------------------------- /Ch-01/UsingDoubleCheckedLocking/bin/Debug/netcoreapp3.1/UsingDoubleCheckedLocking.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingDoubleCheckedLocking/bin/Debug/netcoreapp3.1/UsingDoubleCheckedLocking.pdb -------------------------------------------------------------------------------- /Ch-01/UsingDoubleCheckedLocking/bin/Debug/netcoreapp3.1/UsingDoubleCheckedLocking.runtimeconfig.dev.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "additionalProbingPaths": [ 4 | "C:\\Users\\Vaskaran Sarcar\\.dotnet\\store\\|arch|\\|tfm|", 5 | "C:\\Users\\Vaskaran Sarcar\\.nuget\\packages", 6 | "C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder" 7 | ] 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-01/UsingDoubleCheckedLocking/bin/Debug/netcoreapp3.1/UsingDoubleCheckedLocking.runtimeconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "tfm": "netcoreapp3.1", 4 | "framework": { 5 | "name": "Microsoft.NETCore.App", 6 | "version": "3.1.0" 7 | } 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-01/UsingDoubleCheckedLocking/obj/Debug/netcoreapp3.0/UsingDoubleCheckedLocking.AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // This code was generated by a tool. 4 | // Runtime Version:4.0.30319.42000 5 | // 6 | // Changes to this file may cause incorrect behavior and will be lost if 7 | // the code is regenerated. 8 | // 9 | //------------------------------------------------------------------------------ 10 | 11 | using System; 12 | using System.Reflection; 13 | 14 | [assembly: System.Reflection.AssemblyCompanyAttribute("UsingDoubleCheckedLocking")] 15 | [assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] 16 | [assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] 17 | [assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")] 18 | [assembly: System.Reflection.AssemblyProductAttribute("UsingDoubleCheckedLocking")] 19 | [assembly: System.Reflection.AssemblyTitleAttribute("UsingDoubleCheckedLocking")] 20 | [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] 21 | 22 | // Generated by the MSBuild WriteCodeFragment class. 23 | 24 | -------------------------------------------------------------------------------- /Ch-01/UsingDoubleCheckedLocking/obj/Debug/netcoreapp3.0/UsingDoubleCheckedLocking.AssemblyInfoInputs.cache: -------------------------------------------------------------------------------- 1 | de9ff8dd2b84774f1b1fee100dc3a6f6df825b23 2 | -------------------------------------------------------------------------------- /Ch-01/UsingDoubleCheckedLocking/obj/Debug/netcoreapp3.0/UsingDoubleCheckedLocking.assets.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingDoubleCheckedLocking/obj/Debug/netcoreapp3.0/UsingDoubleCheckedLocking.assets.cache -------------------------------------------------------------------------------- /Ch-01/UsingDoubleCheckedLocking/obj/Debug/netcoreapp3.0/UsingDoubleCheckedLocking.csprojAssemblyReference.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingDoubleCheckedLocking/obj/Debug/netcoreapp3.0/UsingDoubleCheckedLocking.csprojAssemblyReference.cache -------------------------------------------------------------------------------- /Ch-01/UsingDoubleCheckedLocking/obj/Debug/netcoreapp3.0/UsingDoubleCheckedLocking.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingDoubleCheckedLocking/obj/Debug/netcoreapp3.0/UsingDoubleCheckedLocking.dll -------------------------------------------------------------------------------- /Ch-01/UsingDoubleCheckedLocking/obj/Debug/netcoreapp3.0/UsingDoubleCheckedLocking.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingDoubleCheckedLocking/obj/Debug/netcoreapp3.0/UsingDoubleCheckedLocking.exe -------------------------------------------------------------------------------- /Ch-01/UsingDoubleCheckedLocking/obj/Debug/netcoreapp3.0/UsingDoubleCheckedLocking.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingDoubleCheckedLocking/obj/Debug/netcoreapp3.0/UsingDoubleCheckedLocking.pdb -------------------------------------------------------------------------------- /Ch-01/UsingDoubleCheckedLocking/obj/Debug/netcoreapp3.1/UsingDoubleCheckedLocking.AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // This code was generated by a tool. 4 | // Runtime Version:4.0.30319.42000 5 | // 6 | // Changes to this file may cause incorrect behavior and will be lost if 7 | // the code is regenerated. 8 | // 9 | //------------------------------------------------------------------------------ 10 | 11 | using System; 12 | using System.Reflection; 13 | 14 | [assembly: System.Reflection.AssemblyCompanyAttribute("UsingDoubleCheckedLocking")] 15 | [assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] 16 | [assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] 17 | [assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")] 18 | [assembly: System.Reflection.AssemblyProductAttribute("UsingDoubleCheckedLocking")] 19 | [assembly: System.Reflection.AssemblyTitleAttribute("UsingDoubleCheckedLocking")] 20 | [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] 21 | 22 | // Generated by the MSBuild WriteCodeFragment class. 23 | 24 | -------------------------------------------------------------------------------- /Ch-01/UsingDoubleCheckedLocking/obj/Debug/netcoreapp3.1/UsingDoubleCheckedLocking.AssemblyInfoInputs.cache: -------------------------------------------------------------------------------- 1 | de9ff8dd2b84774f1b1fee100dc3a6f6df825b23 2 | -------------------------------------------------------------------------------- /Ch-01/UsingDoubleCheckedLocking/obj/Debug/netcoreapp3.1/UsingDoubleCheckedLocking.assets.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingDoubleCheckedLocking/obj/Debug/netcoreapp3.1/UsingDoubleCheckedLocking.assets.cache -------------------------------------------------------------------------------- /Ch-01/UsingDoubleCheckedLocking/obj/Debug/netcoreapp3.1/UsingDoubleCheckedLocking.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingDoubleCheckedLocking/obj/Debug/netcoreapp3.1/UsingDoubleCheckedLocking.dll -------------------------------------------------------------------------------- /Ch-01/UsingDoubleCheckedLocking/obj/Debug/netcoreapp3.1/UsingDoubleCheckedLocking.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingDoubleCheckedLocking/obj/Debug/netcoreapp3.1/UsingDoubleCheckedLocking.exe -------------------------------------------------------------------------------- /Ch-01/UsingDoubleCheckedLocking/obj/Debug/netcoreapp3.1/UsingDoubleCheckedLocking.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingDoubleCheckedLocking/obj/Debug/netcoreapp3.1/UsingDoubleCheckedLocking.pdb -------------------------------------------------------------------------------- /Ch-01/UsingDoubleCheckedLocking/obj/UsingDoubleCheckedLocking.csproj.nuget.cache: -------------------------------------------------------------------------------- 1 | { 2 | "version": 1, 3 | "dgSpecHash": "WoR5UMv2qM+5XO4ZjL7zrWMkAtFhUG1nzV7GJSJANM7GVZpeb0Cyx9IqFUsds7CW7thW26DqYVYdMqjqdoNaRQ==", 4 | "success": true 5 | } -------------------------------------------------------------------------------- /Ch-01/UsingDoubleCheckedLocking/obj/UsingDoubleCheckedLocking.csproj.nuget.g.targets: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(MSBuildAllProjects);$(MSBuildThisFileFullPath) 5 | 6 | -------------------------------------------------------------------------------- /Ch-01/UsingGenericLazyClassFromDotNet4/UsingGenericLazyClassFromDotNet4.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-01/UsingGenericLazyClassFromDotNet4/bin/Debug/netcoreapp3.0/UsingGenericLazyClassFromDotNet4.deps.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeTarget": { 3 | "name": ".NETCoreApp,Version=v3.0", 4 | "signature": "" 5 | }, 6 | "compilationOptions": {}, 7 | "targets": { 8 | ".NETCoreApp,Version=v3.0": { 9 | "UsingGenericLazyClassFromDotNet4/1.0.0": { 10 | "runtime": { 11 | "UsingGenericLazyClassFromDotNet4.dll": {} 12 | } 13 | } 14 | } 15 | }, 16 | "libraries": { 17 | "UsingGenericLazyClassFromDotNet4/1.0.0": { 18 | "type": "project", 19 | "serviceable": false, 20 | "sha512": "" 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /Ch-01/UsingGenericLazyClassFromDotNet4/bin/Debug/netcoreapp3.0/UsingGenericLazyClassFromDotNet4.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingGenericLazyClassFromDotNet4/bin/Debug/netcoreapp3.0/UsingGenericLazyClassFromDotNet4.dll -------------------------------------------------------------------------------- /Ch-01/UsingGenericLazyClassFromDotNet4/bin/Debug/netcoreapp3.0/UsingGenericLazyClassFromDotNet4.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingGenericLazyClassFromDotNet4/bin/Debug/netcoreapp3.0/UsingGenericLazyClassFromDotNet4.exe -------------------------------------------------------------------------------- /Ch-01/UsingGenericLazyClassFromDotNet4/bin/Debug/netcoreapp3.0/UsingGenericLazyClassFromDotNet4.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingGenericLazyClassFromDotNet4/bin/Debug/netcoreapp3.0/UsingGenericLazyClassFromDotNet4.pdb -------------------------------------------------------------------------------- /Ch-01/UsingGenericLazyClassFromDotNet4/bin/Debug/netcoreapp3.0/UsingGenericLazyClassFromDotNet4.runtimeconfig.dev.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "additionalProbingPaths": [ 4 | "C:\\Users\\Vaskaran Sarcar\\.dotnet\\store\\|arch|\\|tfm|", 5 | "C:\\Users\\Vaskaran Sarcar\\.nuget\\packages", 6 | "C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder" 7 | ] 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-01/UsingGenericLazyClassFromDotNet4/bin/Debug/netcoreapp3.0/UsingGenericLazyClassFromDotNet4.runtimeconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "tfm": "netcoreapp3.0", 4 | "framework": { 5 | "name": "Microsoft.NETCore.App", 6 | "version": "3.0.0" 7 | } 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-01/UsingGenericLazyClassFromDotNet4/bin/Debug/netcoreapp3.1/UsingGenericLazyClassFromDotNet4.deps.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeTarget": { 3 | "name": ".NETCoreApp,Version=v3.1", 4 | "signature": "" 5 | }, 6 | "compilationOptions": {}, 7 | "targets": { 8 | ".NETCoreApp,Version=v3.1": { 9 | "UsingGenericLazyClassFromDotNet4/1.0.0": { 10 | "runtime": { 11 | "UsingGenericLazyClassFromDotNet4.dll": {} 12 | } 13 | } 14 | } 15 | }, 16 | "libraries": { 17 | "UsingGenericLazyClassFromDotNet4/1.0.0": { 18 | "type": "project", 19 | "serviceable": false, 20 | "sha512": "" 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /Ch-01/UsingGenericLazyClassFromDotNet4/bin/Debug/netcoreapp3.1/UsingGenericLazyClassFromDotNet4.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingGenericLazyClassFromDotNet4/bin/Debug/netcoreapp3.1/UsingGenericLazyClassFromDotNet4.dll -------------------------------------------------------------------------------- /Ch-01/UsingGenericLazyClassFromDotNet4/bin/Debug/netcoreapp3.1/UsingGenericLazyClassFromDotNet4.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingGenericLazyClassFromDotNet4/bin/Debug/netcoreapp3.1/UsingGenericLazyClassFromDotNet4.exe -------------------------------------------------------------------------------- /Ch-01/UsingGenericLazyClassFromDotNet4/bin/Debug/netcoreapp3.1/UsingGenericLazyClassFromDotNet4.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingGenericLazyClassFromDotNet4/bin/Debug/netcoreapp3.1/UsingGenericLazyClassFromDotNet4.pdb -------------------------------------------------------------------------------- /Ch-01/UsingGenericLazyClassFromDotNet4/bin/Debug/netcoreapp3.1/UsingGenericLazyClassFromDotNet4.runtimeconfig.dev.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "additionalProbingPaths": [ 4 | "C:\\Users\\Vaskaran Sarcar\\.dotnet\\store\\|arch|\\|tfm|", 5 | "C:\\Users\\Vaskaran Sarcar\\.nuget\\packages", 6 | "C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder" 7 | ] 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-01/UsingGenericLazyClassFromDotNet4/bin/Debug/netcoreapp3.1/UsingGenericLazyClassFromDotNet4.runtimeconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "tfm": "netcoreapp3.1", 4 | "framework": { 5 | "name": "Microsoft.NETCore.App", 6 | "version": "3.1.0" 7 | } 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-01/UsingGenericLazyClassFromDotNet4/obj/Debug/netcoreapp3.0/UsingGenericLazyClassFromDotNet4.AssemblyInfoInputs.cache: -------------------------------------------------------------------------------- 1 | 352f93f05605f353d9886c986b8afeb304b28303 2 | -------------------------------------------------------------------------------- /Ch-01/UsingGenericLazyClassFromDotNet4/obj/Debug/netcoreapp3.0/UsingGenericLazyClassFromDotNet4.assets.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingGenericLazyClassFromDotNet4/obj/Debug/netcoreapp3.0/UsingGenericLazyClassFromDotNet4.assets.cache -------------------------------------------------------------------------------- /Ch-01/UsingGenericLazyClassFromDotNet4/obj/Debug/netcoreapp3.0/UsingGenericLazyClassFromDotNet4.csprojAssemblyReference.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingGenericLazyClassFromDotNet4/obj/Debug/netcoreapp3.0/UsingGenericLazyClassFromDotNet4.csprojAssemblyReference.cache -------------------------------------------------------------------------------- /Ch-01/UsingGenericLazyClassFromDotNet4/obj/Debug/netcoreapp3.0/UsingGenericLazyClassFromDotNet4.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingGenericLazyClassFromDotNet4/obj/Debug/netcoreapp3.0/UsingGenericLazyClassFromDotNet4.dll -------------------------------------------------------------------------------- /Ch-01/UsingGenericLazyClassFromDotNet4/obj/Debug/netcoreapp3.0/UsingGenericLazyClassFromDotNet4.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingGenericLazyClassFromDotNet4/obj/Debug/netcoreapp3.0/UsingGenericLazyClassFromDotNet4.exe -------------------------------------------------------------------------------- /Ch-01/UsingGenericLazyClassFromDotNet4/obj/Debug/netcoreapp3.0/UsingGenericLazyClassFromDotNet4.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingGenericLazyClassFromDotNet4/obj/Debug/netcoreapp3.0/UsingGenericLazyClassFromDotNet4.pdb -------------------------------------------------------------------------------- /Ch-01/UsingGenericLazyClassFromDotNet4/obj/Debug/netcoreapp3.1/UsingGenericLazyClassFromDotNet4.AssemblyInfoInputs.cache: -------------------------------------------------------------------------------- 1 | 352f93f05605f353d9886c986b8afeb304b28303 2 | -------------------------------------------------------------------------------- /Ch-01/UsingGenericLazyClassFromDotNet4/obj/Debug/netcoreapp3.1/UsingGenericLazyClassFromDotNet4.assets.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingGenericLazyClassFromDotNet4/obj/Debug/netcoreapp3.1/UsingGenericLazyClassFromDotNet4.assets.cache -------------------------------------------------------------------------------- /Ch-01/UsingGenericLazyClassFromDotNet4/obj/Debug/netcoreapp3.1/UsingGenericLazyClassFromDotNet4.csprojAssemblyReference.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingGenericLazyClassFromDotNet4/obj/Debug/netcoreapp3.1/UsingGenericLazyClassFromDotNet4.csprojAssemblyReference.cache -------------------------------------------------------------------------------- /Ch-01/UsingGenericLazyClassFromDotNet4/obj/Debug/netcoreapp3.1/UsingGenericLazyClassFromDotNet4.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingGenericLazyClassFromDotNet4/obj/Debug/netcoreapp3.1/UsingGenericLazyClassFromDotNet4.dll -------------------------------------------------------------------------------- /Ch-01/UsingGenericLazyClassFromDotNet4/obj/Debug/netcoreapp3.1/UsingGenericLazyClassFromDotNet4.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingGenericLazyClassFromDotNet4/obj/Debug/netcoreapp3.1/UsingGenericLazyClassFromDotNet4.exe -------------------------------------------------------------------------------- /Ch-01/UsingGenericLazyClassFromDotNet4/obj/Debug/netcoreapp3.1/UsingGenericLazyClassFromDotNet4.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingGenericLazyClassFromDotNet4/obj/Debug/netcoreapp3.1/UsingGenericLazyClassFromDotNet4.pdb -------------------------------------------------------------------------------- /Ch-01/UsingGenericLazyClassFromDotNet4/obj/UsingGenericLazyClassFromDotNet4.csproj.nuget.cache: -------------------------------------------------------------------------------- 1 | { 2 | "version": 1, 3 | "dgSpecHash": "nflcUWC4xqGYWIzjRoxXoMN+YqWTs3/ZHfXQRbCykWO+r4owP/+jlGBcG7uZ+cWi0pQwJIiduk8Tnk7KT0M/Mg==", 4 | "success": true 5 | } -------------------------------------------------------------------------------- /Ch-01/UsingGenericLazyClassFromDotNet4/obj/UsingGenericLazyClassFromDotNet4.csproj.nuget.g.targets: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(MSBuildAllProjects);$(MSBuildThisFileFullPath) 5 | 6 | -------------------------------------------------------------------------------- /Ch-01/UsingSingleLockForSingletonPattern/UsingSingleLockForSingletonPattern.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-01/UsingSingleLockForSingletonPattern/bin/Debug/netcoreapp3.0/UsingSingleLockForSingletonPattern.deps.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeTarget": { 3 | "name": ".NETCoreApp,Version=v3.0", 4 | "signature": "" 5 | }, 6 | "compilationOptions": {}, 7 | "targets": { 8 | ".NETCoreApp,Version=v3.0": { 9 | "UsingSingleLockForSingletonPattern/1.0.0": { 10 | "runtime": { 11 | "UsingSingleLockForSingletonPattern.dll": {} 12 | } 13 | } 14 | } 15 | }, 16 | "libraries": { 17 | "UsingSingleLockForSingletonPattern/1.0.0": { 18 | "type": "project", 19 | "serviceable": false, 20 | "sha512": "" 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /Ch-01/UsingSingleLockForSingletonPattern/bin/Debug/netcoreapp3.0/UsingSingleLockForSingletonPattern.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingSingleLockForSingletonPattern/bin/Debug/netcoreapp3.0/UsingSingleLockForSingletonPattern.dll -------------------------------------------------------------------------------- /Ch-01/UsingSingleLockForSingletonPattern/bin/Debug/netcoreapp3.0/UsingSingleLockForSingletonPattern.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingSingleLockForSingletonPattern/bin/Debug/netcoreapp3.0/UsingSingleLockForSingletonPattern.exe -------------------------------------------------------------------------------- /Ch-01/UsingSingleLockForSingletonPattern/bin/Debug/netcoreapp3.0/UsingSingleLockForSingletonPattern.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingSingleLockForSingletonPattern/bin/Debug/netcoreapp3.0/UsingSingleLockForSingletonPattern.pdb -------------------------------------------------------------------------------- /Ch-01/UsingSingleLockForSingletonPattern/bin/Debug/netcoreapp3.0/UsingSingleLockForSingletonPattern.runtimeconfig.dev.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "additionalProbingPaths": [ 4 | "C:\\Users\\Vaskaran Sarcar\\.dotnet\\store\\|arch|\\|tfm|", 5 | "C:\\Users\\Vaskaran Sarcar\\.nuget\\packages", 6 | "C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder" 7 | ] 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-01/UsingSingleLockForSingletonPattern/bin/Debug/netcoreapp3.0/UsingSingleLockForSingletonPattern.runtimeconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "tfm": "netcoreapp3.0", 4 | "framework": { 5 | "name": "Microsoft.NETCore.App", 6 | "version": "3.0.0" 7 | } 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-01/UsingSingleLockForSingletonPattern/bin/Debug/netcoreapp3.1/UsingSingleLockForSingletonPattern.deps.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeTarget": { 3 | "name": ".NETCoreApp,Version=v3.1", 4 | "signature": "" 5 | }, 6 | "compilationOptions": {}, 7 | "targets": { 8 | ".NETCoreApp,Version=v3.1": { 9 | "UsingSingleLockForSingletonPattern/1.0.0": { 10 | "runtime": { 11 | "UsingSingleLockForSingletonPattern.dll": {} 12 | } 13 | } 14 | } 15 | }, 16 | "libraries": { 17 | "UsingSingleLockForSingletonPattern/1.0.0": { 18 | "type": "project", 19 | "serviceable": false, 20 | "sha512": "" 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /Ch-01/UsingSingleLockForSingletonPattern/bin/Debug/netcoreapp3.1/UsingSingleLockForSingletonPattern.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingSingleLockForSingletonPattern/bin/Debug/netcoreapp3.1/UsingSingleLockForSingletonPattern.dll -------------------------------------------------------------------------------- /Ch-01/UsingSingleLockForSingletonPattern/bin/Debug/netcoreapp3.1/UsingSingleLockForSingletonPattern.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingSingleLockForSingletonPattern/bin/Debug/netcoreapp3.1/UsingSingleLockForSingletonPattern.exe -------------------------------------------------------------------------------- /Ch-01/UsingSingleLockForSingletonPattern/bin/Debug/netcoreapp3.1/UsingSingleLockForSingletonPattern.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingSingleLockForSingletonPattern/bin/Debug/netcoreapp3.1/UsingSingleLockForSingletonPattern.pdb -------------------------------------------------------------------------------- /Ch-01/UsingSingleLockForSingletonPattern/bin/Debug/netcoreapp3.1/UsingSingleLockForSingletonPattern.runtimeconfig.dev.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "additionalProbingPaths": [ 4 | "C:\\Users\\Vaskaran Sarcar\\.dotnet\\store\\|arch|\\|tfm|", 5 | "C:\\Users\\Vaskaran Sarcar\\.nuget\\packages", 6 | "C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder" 7 | ] 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-01/UsingSingleLockForSingletonPattern/bin/Debug/netcoreapp3.1/UsingSingleLockForSingletonPattern.runtimeconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "tfm": "netcoreapp3.1", 4 | "framework": { 5 | "name": "Microsoft.NETCore.App", 6 | "version": "3.1.0" 7 | } 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-01/UsingSingleLockForSingletonPattern/obj/Debug/netcoreapp3.0/UsingSingleLockForSingletonPattern.AssemblyInfoInputs.cache: -------------------------------------------------------------------------------- 1 | 9e74c24e8e1f4ff45cc767b37a607173ed466242 2 | -------------------------------------------------------------------------------- /Ch-01/UsingSingleLockForSingletonPattern/obj/Debug/netcoreapp3.0/UsingSingleLockForSingletonPattern.assets.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingSingleLockForSingletonPattern/obj/Debug/netcoreapp3.0/UsingSingleLockForSingletonPattern.assets.cache -------------------------------------------------------------------------------- /Ch-01/UsingSingleLockForSingletonPattern/obj/Debug/netcoreapp3.0/UsingSingleLockForSingletonPattern.csprojAssemblyReference.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingSingleLockForSingletonPattern/obj/Debug/netcoreapp3.0/UsingSingleLockForSingletonPattern.csprojAssemblyReference.cache -------------------------------------------------------------------------------- /Ch-01/UsingSingleLockForSingletonPattern/obj/Debug/netcoreapp3.0/UsingSingleLockForSingletonPattern.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingSingleLockForSingletonPattern/obj/Debug/netcoreapp3.0/UsingSingleLockForSingletonPattern.dll -------------------------------------------------------------------------------- /Ch-01/UsingSingleLockForSingletonPattern/obj/Debug/netcoreapp3.0/UsingSingleLockForSingletonPattern.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingSingleLockForSingletonPattern/obj/Debug/netcoreapp3.0/UsingSingleLockForSingletonPattern.exe -------------------------------------------------------------------------------- /Ch-01/UsingSingleLockForSingletonPattern/obj/Debug/netcoreapp3.0/UsingSingleLockForSingletonPattern.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingSingleLockForSingletonPattern/obj/Debug/netcoreapp3.0/UsingSingleLockForSingletonPattern.pdb -------------------------------------------------------------------------------- /Ch-01/UsingSingleLockForSingletonPattern/obj/Debug/netcoreapp3.1/UsingSingleLockForSingletonPattern.AssemblyInfoInputs.cache: -------------------------------------------------------------------------------- 1 | 9e74c24e8e1f4ff45cc767b37a607173ed466242 2 | -------------------------------------------------------------------------------- /Ch-01/UsingSingleLockForSingletonPattern/obj/Debug/netcoreapp3.1/UsingSingleLockForSingletonPattern.assets.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingSingleLockForSingletonPattern/obj/Debug/netcoreapp3.1/UsingSingleLockForSingletonPattern.assets.cache -------------------------------------------------------------------------------- /Ch-01/UsingSingleLockForSingletonPattern/obj/Debug/netcoreapp3.1/UsingSingleLockForSingletonPattern.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingSingleLockForSingletonPattern/obj/Debug/netcoreapp3.1/UsingSingleLockForSingletonPattern.dll -------------------------------------------------------------------------------- /Ch-01/UsingSingleLockForSingletonPattern/obj/Debug/netcoreapp3.1/UsingSingleLockForSingletonPattern.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingSingleLockForSingletonPattern/obj/Debug/netcoreapp3.1/UsingSingleLockForSingletonPattern.exe -------------------------------------------------------------------------------- /Ch-01/UsingSingleLockForSingletonPattern/obj/Debug/netcoreapp3.1/UsingSingleLockForSingletonPattern.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-01/UsingSingleLockForSingletonPattern/obj/Debug/netcoreapp3.1/UsingSingleLockForSingletonPattern.pdb -------------------------------------------------------------------------------- /Ch-01/UsingSingleLockForSingletonPattern/obj/UsingSingleLockForSingletonPattern.csproj.nuget.cache: -------------------------------------------------------------------------------- 1 | { 2 | "version": 1, 3 | "dgSpecHash": "U+Rp4t9tiszGfFHGKIRqBgZwvoQUE/tsyOR2rJpYLQBFcjNcSzp5q7pED0U29XFmkPddNd5bC9YNOyTKLIW3IQ==", 4 | "success": true 5 | } -------------------------------------------------------------------------------- /Ch-01/UsingSingleLockForSingletonPattern/obj/UsingSingleLockForSingletonPattern.csproj.nuget.g.targets: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(MSBuildAllProjects);$(MSBuildThisFileFullPath) 5 | 6 | -------------------------------------------------------------------------------- /Ch-02/PrototypePattern/BasicCar.cs: -------------------------------------------------------------------------------- 1 |  2 | // BasicCar.cs 3 | 4 | using System; 5 | 6 | namespace PrototypePattern 7 | { 8 | public abstract class BasicCar 9 | { 10 | public int basePrice = 0, onRoadPrice = 0; 11 | public string ModelName { get; set; } 12 | 13 | /* 14 | We'll add this price before the final calculation 15 | of onRoadPrice. 16 | */ 17 | 18 | public static int SetAdditionalPrice() 19 | { 20 | Random random = new Random(); 21 | int additionalPrice = random.Next(200000, 500000); 22 | return additionalPrice; 23 | } 24 | public abstract BasicCar Clone(); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /Ch-02/PrototypePattern/Ford.cs: -------------------------------------------------------------------------------- 1 | // Ford.cs 2 | 3 | namespace PrototypePattern 4 | { 5 | public class Ford : BasicCar 6 | { 7 | public Ford(string m) 8 | { 9 | ModelName = m; 10 | // Setting a basic price for Ford. 11 | basePrice = 500000; 12 | } 13 | 14 | public override BasicCar Clone() 15 | { 16 | // Creating a shallow copy and returning it. 17 | return this.MemberwiseClone() as Ford; 18 | } 19 | } 20 | } 21 | 22 | -------------------------------------------------------------------------------- /Ch-02/PrototypePattern/Nano.cs: -------------------------------------------------------------------------------- 1 | //Nano.cs 2 | //using System; 3 | 4 | namespace PrototypePattern 5 | { 6 | public class Nano : BasicCar 7 | { 8 | public Nano(string m) 9 | { 10 | ModelName = m; 11 | // Setting a base price for Nano. 12 | basePrice = 100000; 13 | } 14 | public override BasicCar Clone() 15 | { 16 | // Creating a shallow copy and returning it. 17 | return this.MemberwiseClone() as Nano; 18 | } 19 | } 20 | } 21 | 22 | -------------------------------------------------------------------------------- /Ch-02/PrototypePattern/PrototypePattern.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-02/PrototypePattern/bin/Debug/netcoreapp3.1/PrototypePattern.deps.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeTarget": { 3 | "name": ".NETCoreApp,Version=v3.1", 4 | "signature": "" 5 | }, 6 | "compilationOptions": {}, 7 | "targets": { 8 | ".NETCoreApp,Version=v3.1": { 9 | "PrototypePattern/1.0.0": { 10 | "runtime": { 11 | "PrototypePattern.dll": {} 12 | } 13 | } 14 | } 15 | }, 16 | "libraries": { 17 | "PrototypePattern/1.0.0": { 18 | "type": "project", 19 | "serviceable": false, 20 | "sha512": "" 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /Ch-02/PrototypePattern/bin/Debug/netcoreapp3.1/PrototypePattern.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-02/PrototypePattern/bin/Debug/netcoreapp3.1/PrototypePattern.dll -------------------------------------------------------------------------------- /Ch-02/PrototypePattern/bin/Debug/netcoreapp3.1/PrototypePattern.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-02/PrototypePattern/bin/Debug/netcoreapp3.1/PrototypePattern.exe -------------------------------------------------------------------------------- /Ch-02/PrototypePattern/bin/Debug/netcoreapp3.1/PrototypePattern.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-02/PrototypePattern/bin/Debug/netcoreapp3.1/PrototypePattern.pdb -------------------------------------------------------------------------------- /Ch-02/PrototypePattern/bin/Debug/netcoreapp3.1/PrototypePattern.runtimeconfig.dev.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "additionalProbingPaths": [ 4 | "C:\\Users\\Vaskaran Sarcar\\.dotnet\\store\\|arch|\\|tfm|", 5 | "C:\\Users\\Vaskaran Sarcar\\.nuget\\packages", 6 | "C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder" 7 | ] 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-02/PrototypePattern/bin/Debug/netcoreapp3.1/PrototypePattern.runtimeconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "tfm": "netcoreapp3.1", 4 | "framework": { 5 | "name": "Microsoft.NETCore.App", 6 | "version": "3.1.0" 7 | } 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-02/PrototypePattern/obj/Debug/netcoreapp3.1/PrototypePattern.AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // This code was generated by a tool. 4 | // Runtime Version:4.0.30319.42000 5 | // 6 | // Changes to this file may cause incorrect behavior and will be lost if 7 | // the code is regenerated. 8 | // 9 | //------------------------------------------------------------------------------ 10 | 11 | using System; 12 | using System.Reflection; 13 | 14 | [assembly: System.Reflection.AssemblyCompanyAttribute("PrototypePattern")] 15 | [assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] 16 | [assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] 17 | [assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")] 18 | [assembly: System.Reflection.AssemblyProductAttribute("PrototypePattern")] 19 | [assembly: System.Reflection.AssemblyTitleAttribute("PrototypePattern")] 20 | [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] 21 | 22 | // Generated by the MSBuild WriteCodeFragment class. 23 | 24 | -------------------------------------------------------------------------------- /Ch-02/PrototypePattern/obj/Debug/netcoreapp3.1/PrototypePattern.AssemblyInfoInputs.cache: -------------------------------------------------------------------------------- 1 | 245c00b2f7ef4fbf3421668cb4eaf48ebad8a728 2 | -------------------------------------------------------------------------------- /Ch-02/PrototypePattern/obj/Debug/netcoreapp3.1/PrototypePattern.assets.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-02/PrototypePattern/obj/Debug/netcoreapp3.1/PrototypePattern.assets.cache -------------------------------------------------------------------------------- /Ch-02/PrototypePattern/obj/Debug/netcoreapp3.1/PrototypePattern.csprojAssemblyReference.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-02/PrototypePattern/obj/Debug/netcoreapp3.1/PrototypePattern.csprojAssemblyReference.cache -------------------------------------------------------------------------------- /Ch-02/PrototypePattern/obj/Debug/netcoreapp3.1/PrototypePattern.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-02/PrototypePattern/obj/Debug/netcoreapp3.1/PrototypePattern.dll -------------------------------------------------------------------------------- /Ch-02/PrototypePattern/obj/Debug/netcoreapp3.1/PrototypePattern.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-02/PrototypePattern/obj/Debug/netcoreapp3.1/PrototypePattern.exe -------------------------------------------------------------------------------- /Ch-02/PrototypePattern/obj/Debug/netcoreapp3.1/PrototypePattern.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-02/PrototypePattern/obj/Debug/netcoreapp3.1/PrototypePattern.pdb -------------------------------------------------------------------------------- /Ch-02/PrototypePattern/obj/PrototypePattern.csproj.nuget.cache: -------------------------------------------------------------------------------- 1 | { 2 | "version": 1, 3 | "dgSpecHash": "qoComKLJ0gHKV+RqHvWlkTRRhoJTPuo/URA9EBNyb0YRZi+zNRLjH0ISZD5DPQcMRkWH5j23+IfFM3Pl7+gjsQ==", 4 | "success": true 5 | } -------------------------------------------------------------------------------- /Ch-02/PrototypePattern/obj/PrototypePattern.csproj.nuget.g.targets: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(MSBuildAllProjects);$(MSBuildThisFileFullPath) 5 | 6 | -------------------------------------------------------------------------------- /Ch-02/PrototypePatternDemo2/PrototypePatternDemo2.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-02/PrototypePatternDemo2/bin/Debug/netcoreapp3.1/PrototypePatternDemo2.deps.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeTarget": { 3 | "name": ".NETCoreApp,Version=v3.1", 4 | "signature": "" 5 | }, 6 | "compilationOptions": {}, 7 | "targets": { 8 | ".NETCoreApp,Version=v3.1": { 9 | "PrototypePatternDemo2/1.0.0": { 10 | "runtime": { 11 | "PrototypePatternDemo2.dll": {} 12 | } 13 | } 14 | } 15 | }, 16 | "libraries": { 17 | "PrototypePatternDemo2/1.0.0": { 18 | "type": "project", 19 | "serviceable": false, 20 | "sha512": "" 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /Ch-02/PrototypePatternDemo2/bin/Debug/netcoreapp3.1/PrototypePatternDemo2.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-02/PrototypePatternDemo2/bin/Debug/netcoreapp3.1/PrototypePatternDemo2.dll -------------------------------------------------------------------------------- /Ch-02/PrototypePatternDemo2/bin/Debug/netcoreapp3.1/PrototypePatternDemo2.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-02/PrototypePatternDemo2/bin/Debug/netcoreapp3.1/PrototypePatternDemo2.exe -------------------------------------------------------------------------------- /Ch-02/PrototypePatternDemo2/bin/Debug/netcoreapp3.1/PrototypePatternDemo2.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-02/PrototypePatternDemo2/bin/Debug/netcoreapp3.1/PrototypePatternDemo2.pdb -------------------------------------------------------------------------------- /Ch-02/PrototypePatternDemo2/bin/Debug/netcoreapp3.1/PrototypePatternDemo2.runtimeconfig.dev.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "additionalProbingPaths": [ 4 | "C:\\Users\\Vaskaran Sarcar\\.dotnet\\store\\|arch|\\|tfm|", 5 | "C:\\Users\\Vaskaran Sarcar\\.nuget\\packages", 6 | "C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder" 7 | ] 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-02/PrototypePatternDemo2/bin/Debug/netcoreapp3.1/PrototypePatternDemo2.runtimeconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "tfm": "netcoreapp3.1", 4 | "framework": { 5 | "name": "Microsoft.NETCore.App", 6 | "version": "3.1.0" 7 | } 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-02/PrototypePatternDemo2/obj/Debug/netcoreapp3.1/PrototypePatternDemo2.AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // This code was generated by a tool. 4 | // Runtime Version:4.0.30319.42000 5 | // 6 | // Changes to this file may cause incorrect behavior and will be lost if 7 | // the code is regenerated. 8 | // 9 | //------------------------------------------------------------------------------ 10 | 11 | using System; 12 | using System.Reflection; 13 | 14 | [assembly: System.Reflection.AssemblyCompanyAttribute("PrototypePatternDemo2")] 15 | [assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] 16 | [assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] 17 | [assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")] 18 | [assembly: System.Reflection.AssemblyProductAttribute("PrototypePatternDemo2")] 19 | [assembly: System.Reflection.AssemblyTitleAttribute("PrototypePatternDemo2")] 20 | [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] 21 | 22 | // Generated by the MSBuild WriteCodeFragment class. 23 | 24 | -------------------------------------------------------------------------------- /Ch-02/PrototypePatternDemo2/obj/Debug/netcoreapp3.1/PrototypePatternDemo2.AssemblyInfoInputs.cache: -------------------------------------------------------------------------------- 1 | 217979a852d8591aea6afddbe167b9d2ff236883 2 | -------------------------------------------------------------------------------- /Ch-02/PrototypePatternDemo2/obj/Debug/netcoreapp3.1/PrototypePatternDemo2.assets.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-02/PrototypePatternDemo2/obj/Debug/netcoreapp3.1/PrototypePatternDemo2.assets.cache -------------------------------------------------------------------------------- /Ch-02/PrototypePatternDemo2/obj/Debug/netcoreapp3.1/PrototypePatternDemo2.csprojAssemblyReference.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-02/PrototypePatternDemo2/obj/Debug/netcoreapp3.1/PrototypePatternDemo2.csprojAssemblyReference.cache -------------------------------------------------------------------------------- /Ch-02/PrototypePatternDemo2/obj/Debug/netcoreapp3.1/PrototypePatternDemo2.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-02/PrototypePatternDemo2/obj/Debug/netcoreapp3.1/PrototypePatternDemo2.dll -------------------------------------------------------------------------------- /Ch-02/PrototypePatternDemo2/obj/Debug/netcoreapp3.1/PrototypePatternDemo2.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-02/PrototypePatternDemo2/obj/Debug/netcoreapp3.1/PrototypePatternDemo2.exe -------------------------------------------------------------------------------- /Ch-02/PrototypePatternDemo2/obj/Debug/netcoreapp3.1/PrototypePatternDemo2.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-02/PrototypePatternDemo2/obj/Debug/netcoreapp3.1/PrototypePatternDemo2.pdb -------------------------------------------------------------------------------- /Ch-02/PrototypePatternDemo2/obj/PrototypePatternDemo2.csproj.nuget.cache: -------------------------------------------------------------------------------- 1 | { 2 | "version": 1, 3 | "dgSpecHash": "uc33RY9T4ecZoZFdmQ+fOCazVUhnxQZu5GQIUfowK1vnprzGkg+UpBA2BkczXbqasnJk365Se0371X9Fwa3uyg==", 4 | "success": true 5 | } -------------------------------------------------------------------------------- /Ch-02/PrototypePatternDemo2/obj/PrototypePatternDemo2.csproj.nuget.g.targets: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(MSBuildAllProjects);$(MSBuildThisFileFullPath) 5 | 6 | -------------------------------------------------------------------------------- /Ch-02/ShallowVsDeepCopy/ShallowVsDeepCopy.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-02/ShallowVsDeepCopy/bin/Debug/netcoreapp3.1/ShallowVsDeepCopy.deps.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeTarget": { 3 | "name": ".NETCoreApp,Version=v3.1", 4 | "signature": "" 5 | }, 6 | "compilationOptions": {}, 7 | "targets": { 8 | ".NETCoreApp,Version=v3.1": { 9 | "ShallowVsDeepCopy/1.0.0": { 10 | "runtime": { 11 | "ShallowVsDeepCopy.dll": {} 12 | } 13 | } 14 | } 15 | }, 16 | "libraries": { 17 | "ShallowVsDeepCopy/1.0.0": { 18 | "type": "project", 19 | "serviceable": false, 20 | "sha512": "" 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /Ch-02/ShallowVsDeepCopy/bin/Debug/netcoreapp3.1/ShallowVsDeepCopy.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-02/ShallowVsDeepCopy/bin/Debug/netcoreapp3.1/ShallowVsDeepCopy.dll -------------------------------------------------------------------------------- /Ch-02/ShallowVsDeepCopy/bin/Debug/netcoreapp3.1/ShallowVsDeepCopy.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-02/ShallowVsDeepCopy/bin/Debug/netcoreapp3.1/ShallowVsDeepCopy.exe -------------------------------------------------------------------------------- /Ch-02/ShallowVsDeepCopy/bin/Debug/netcoreapp3.1/ShallowVsDeepCopy.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-02/ShallowVsDeepCopy/bin/Debug/netcoreapp3.1/ShallowVsDeepCopy.pdb -------------------------------------------------------------------------------- /Ch-02/ShallowVsDeepCopy/bin/Debug/netcoreapp3.1/ShallowVsDeepCopy.runtimeconfig.dev.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "additionalProbingPaths": [ 4 | "C:\\Users\\Vaskaran Sarcar\\.dotnet\\store\\|arch|\\|tfm|", 5 | "C:\\Users\\Vaskaran Sarcar\\.nuget\\packages", 6 | "C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder" 7 | ] 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-02/ShallowVsDeepCopy/bin/Debug/netcoreapp3.1/ShallowVsDeepCopy.runtimeconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "tfm": "netcoreapp3.1", 4 | "framework": { 5 | "name": "Microsoft.NETCore.App", 6 | "version": "3.1.0" 7 | } 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-02/ShallowVsDeepCopy/obj/Debug/netcoreapp3.1/ShallowVsDeepCopy.AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // This code was generated by a tool. 4 | // Runtime Version:4.0.30319.42000 5 | // 6 | // Changes to this file may cause incorrect behavior and will be lost if 7 | // the code is regenerated. 8 | // 9 | //------------------------------------------------------------------------------ 10 | 11 | using System; 12 | using System.Reflection; 13 | 14 | [assembly: System.Reflection.AssemblyCompanyAttribute("ShallowVsDeepCopy")] 15 | [assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] 16 | [assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] 17 | [assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")] 18 | [assembly: System.Reflection.AssemblyProductAttribute("ShallowVsDeepCopy")] 19 | [assembly: System.Reflection.AssemblyTitleAttribute("ShallowVsDeepCopy")] 20 | [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] 21 | 22 | // Generated by the MSBuild WriteCodeFragment class. 23 | 24 | -------------------------------------------------------------------------------- /Ch-02/ShallowVsDeepCopy/obj/Debug/netcoreapp3.1/ShallowVsDeepCopy.AssemblyInfoInputs.cache: -------------------------------------------------------------------------------- 1 | 2c93f343f8787f19f1f0fd788958d064a3419421 2 | -------------------------------------------------------------------------------- /Ch-02/ShallowVsDeepCopy/obj/Debug/netcoreapp3.1/ShallowVsDeepCopy.assets.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-02/ShallowVsDeepCopy/obj/Debug/netcoreapp3.1/ShallowVsDeepCopy.assets.cache -------------------------------------------------------------------------------- /Ch-02/ShallowVsDeepCopy/obj/Debug/netcoreapp3.1/ShallowVsDeepCopy.csprojAssemblyReference.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-02/ShallowVsDeepCopy/obj/Debug/netcoreapp3.1/ShallowVsDeepCopy.csprojAssemblyReference.cache -------------------------------------------------------------------------------- /Ch-02/ShallowVsDeepCopy/obj/Debug/netcoreapp3.1/ShallowVsDeepCopy.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-02/ShallowVsDeepCopy/obj/Debug/netcoreapp3.1/ShallowVsDeepCopy.dll -------------------------------------------------------------------------------- /Ch-02/ShallowVsDeepCopy/obj/Debug/netcoreapp3.1/ShallowVsDeepCopy.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-02/ShallowVsDeepCopy/obj/Debug/netcoreapp3.1/ShallowVsDeepCopy.exe -------------------------------------------------------------------------------- /Ch-02/ShallowVsDeepCopy/obj/Debug/netcoreapp3.1/ShallowVsDeepCopy.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-02/ShallowVsDeepCopy/obj/Debug/netcoreapp3.1/ShallowVsDeepCopy.pdb -------------------------------------------------------------------------------- /Ch-02/ShallowVsDeepCopy/obj/ShallowVsDeepCopy.csproj.nuget.cache: -------------------------------------------------------------------------------- 1 | { 2 | "version": 1, 3 | "dgSpecHash": "lv7WsWHz3DPtqVrzK9EQOgziqtCjGqvhk9hAAkiQ76w2PtQ0fl4WhTuuucLWCLtYwt+xoRaMkOsVTgtNTu5Mng==", 4 | "success": true 5 | } -------------------------------------------------------------------------------- /Ch-02/ShallowVsDeepCopy/obj/ShallowVsDeepCopy.csproj.nuget.g.targets: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(MSBuildAllProjects);$(MSBuildThisFileFullPath) 5 | 6 | -------------------------------------------------------------------------------- /Ch-02/UserdefinedCopyConstructorDemo/UserdefinedCopyConstructorDemo.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-02/UserdefinedCopyConstructorDemo/bin/Debug/netcoreapp3.1/UserdefinedCopyConstructorDemo.deps.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeTarget": { 3 | "name": ".NETCoreApp,Version=v3.1", 4 | "signature": "" 5 | }, 6 | "compilationOptions": {}, 7 | "targets": { 8 | ".NETCoreApp,Version=v3.1": { 9 | "UserdefinedCopyConstructorDemo/1.0.0": { 10 | "runtime": { 11 | "UserdefinedCopyConstructorDemo.dll": {} 12 | } 13 | } 14 | } 15 | }, 16 | "libraries": { 17 | "UserdefinedCopyConstructorDemo/1.0.0": { 18 | "type": "project", 19 | "serviceable": false, 20 | "sha512": "" 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /Ch-02/UserdefinedCopyConstructorDemo/bin/Debug/netcoreapp3.1/UserdefinedCopyConstructorDemo.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-02/UserdefinedCopyConstructorDemo/bin/Debug/netcoreapp3.1/UserdefinedCopyConstructorDemo.dll -------------------------------------------------------------------------------- /Ch-02/UserdefinedCopyConstructorDemo/bin/Debug/netcoreapp3.1/UserdefinedCopyConstructorDemo.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-02/UserdefinedCopyConstructorDemo/bin/Debug/netcoreapp3.1/UserdefinedCopyConstructorDemo.exe -------------------------------------------------------------------------------- /Ch-02/UserdefinedCopyConstructorDemo/bin/Debug/netcoreapp3.1/UserdefinedCopyConstructorDemo.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-02/UserdefinedCopyConstructorDemo/bin/Debug/netcoreapp3.1/UserdefinedCopyConstructorDemo.pdb -------------------------------------------------------------------------------- /Ch-02/UserdefinedCopyConstructorDemo/bin/Debug/netcoreapp3.1/UserdefinedCopyConstructorDemo.runtimeconfig.dev.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "additionalProbingPaths": [ 4 | "C:\\Users\\Vaskaran Sarcar\\.dotnet\\store\\|arch|\\|tfm|", 5 | "C:\\Users\\Vaskaran Sarcar\\.nuget\\packages", 6 | "C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder" 7 | ] 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-02/UserdefinedCopyConstructorDemo/bin/Debug/netcoreapp3.1/UserdefinedCopyConstructorDemo.runtimeconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "tfm": "netcoreapp3.1", 4 | "framework": { 5 | "name": "Microsoft.NETCore.App", 6 | "version": "3.1.0" 7 | } 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-02/UserdefinedCopyConstructorDemo/obj/Debug/netcoreapp3.1/UserdefinedCopyConstructorDemo.AssemblyInfoInputs.cache: -------------------------------------------------------------------------------- 1 | 730c42b658bd65d11c670782c2aed0aa53fdb53a 2 | -------------------------------------------------------------------------------- /Ch-02/UserdefinedCopyConstructorDemo/obj/Debug/netcoreapp3.1/UserdefinedCopyConstructorDemo.assets.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-02/UserdefinedCopyConstructorDemo/obj/Debug/netcoreapp3.1/UserdefinedCopyConstructorDemo.assets.cache -------------------------------------------------------------------------------- /Ch-02/UserdefinedCopyConstructorDemo/obj/Debug/netcoreapp3.1/UserdefinedCopyConstructorDemo.csprojAssemblyReference.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-02/UserdefinedCopyConstructorDemo/obj/Debug/netcoreapp3.1/UserdefinedCopyConstructorDemo.csprojAssemblyReference.cache -------------------------------------------------------------------------------- /Ch-02/UserdefinedCopyConstructorDemo/obj/Debug/netcoreapp3.1/UserdefinedCopyConstructorDemo.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-02/UserdefinedCopyConstructorDemo/obj/Debug/netcoreapp3.1/UserdefinedCopyConstructorDemo.dll -------------------------------------------------------------------------------- /Ch-02/UserdefinedCopyConstructorDemo/obj/Debug/netcoreapp3.1/UserdefinedCopyConstructorDemo.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-02/UserdefinedCopyConstructorDemo/obj/Debug/netcoreapp3.1/UserdefinedCopyConstructorDemo.exe -------------------------------------------------------------------------------- /Ch-02/UserdefinedCopyConstructorDemo/obj/Debug/netcoreapp3.1/UserdefinedCopyConstructorDemo.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-02/UserdefinedCopyConstructorDemo/obj/Debug/netcoreapp3.1/UserdefinedCopyConstructorDemo.pdb -------------------------------------------------------------------------------- /Ch-02/UserdefinedCopyConstructorDemo/obj/UserdefinedCopyConstructorDemo.csproj.nuget.cache: -------------------------------------------------------------------------------- 1 | { 2 | "version": 1, 3 | "dgSpecHash": "orfrB5T8Dgi93C7UqQXqP8HwUp5WrCapRbi4Rn2sXhhIFq0tTOuILyqjTNuJ2ElZzN1IG2JxJiOYJiy03AQD3g==", 4 | "success": true 5 | } -------------------------------------------------------------------------------- /Ch-02/UserdefinedCopyConstructorDemo/obj/UserdefinedCopyConstructorDemo.csproj.nuget.g.targets: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(MSBuildAllProjects);$(MSBuildThisFileFullPath) 5 | 6 | -------------------------------------------------------------------------------- /Ch-03/BuilderPatternSecondDemonstration/BuilderPatternSecondDemonstration.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-03/BuilderPatternSecondDemonstration/IBuilder.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Text; 4 | 5 | namespace BuilderPatternSecondDemonstration 6 | { 7 | interface IBuilder 8 | { 9 | /* 10 | * All these methods return types are IBuilder. 11 | * This will help us to apply method chaining. 12 | * I'm also providing values for default arguments. 13 | */ 14 | IBuilder StartUpOperations(string optionalStartUpMessage = "Making a car for you."); 15 | IBuilder BuildBody(string optionalBodyType = "Steel"); 16 | IBuilder InsertWheels(int optionalNoOfWheels = 4); 17 | IBuilder AddHeadlights(int optionalNoOfHeadLights = 2); 18 | IBuilder EndOperations(string optionalEndMessage = "Car construction is completed."); 19 | //Combine the parts and make the final product. 20 | Product ConstructCar(); 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Ch-03/BuilderPatternSecondDemonstration/Product.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | 4 | 5 | namespace BuilderPatternSecondDemonstration 6 | { // Product class 7 | /* 8 | * Making the class sealed.The attributes are also private and 9 | * there is no setter methods.These are used to promote immutability. 10 | */ 11 | 12 | sealed class Product 13 | { 14 | /* 15 | You can use any data structure that you prefer 16 | e.g.List etc. 17 | */ 18 | private LinkedList parts; 19 | public Product() 20 | { 21 | parts = new LinkedList(); 22 | } 23 | 24 | public void Add(string part) 25 | { 26 | //Adding parts 27 | parts.AddLast(part); 28 | } 29 | 30 | public void Show() 31 | { 32 | Console.WriteLine("\nProduct completed as below :"); 33 | foreach (string part in parts) 34 | Console.WriteLine(part); 35 | 36 | } 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /Ch-03/BuilderPatternSecondDemonstration/bin/Debug/netcoreapp3.1/BuilderPatternSecondDemonstration.deps.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeTarget": { 3 | "name": ".NETCoreApp,Version=v3.1", 4 | "signature": "" 5 | }, 6 | "compilationOptions": {}, 7 | "targets": { 8 | ".NETCoreApp,Version=v3.1": { 9 | "BuilderPatternSecondDemonstration/1.0.0": { 10 | "runtime": { 11 | "BuilderPatternSecondDemonstration.dll": {} 12 | } 13 | } 14 | } 15 | }, 16 | "libraries": { 17 | "BuilderPatternSecondDemonstration/1.0.0": { 18 | "type": "project", 19 | "serviceable": false, 20 | "sha512": "" 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /Ch-03/BuilderPatternSecondDemonstration/bin/Debug/netcoreapp3.1/BuilderPatternSecondDemonstration.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-03/BuilderPatternSecondDemonstration/bin/Debug/netcoreapp3.1/BuilderPatternSecondDemonstration.dll -------------------------------------------------------------------------------- /Ch-03/BuilderPatternSecondDemonstration/bin/Debug/netcoreapp3.1/BuilderPatternSecondDemonstration.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-03/BuilderPatternSecondDemonstration/bin/Debug/netcoreapp3.1/BuilderPatternSecondDemonstration.exe -------------------------------------------------------------------------------- /Ch-03/BuilderPatternSecondDemonstration/bin/Debug/netcoreapp3.1/BuilderPatternSecondDemonstration.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-03/BuilderPatternSecondDemonstration/bin/Debug/netcoreapp3.1/BuilderPatternSecondDemonstration.pdb -------------------------------------------------------------------------------- /Ch-03/BuilderPatternSecondDemonstration/bin/Debug/netcoreapp3.1/BuilderPatternSecondDemonstration.runtimeconfig.dev.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "additionalProbingPaths": [ 4 | "C:\\Users\\Vaskaran Sarcar\\.dotnet\\store\\|arch|\\|tfm|", 5 | "C:\\Users\\Vaskaran Sarcar\\.nuget\\packages", 6 | "C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder" 7 | ] 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-03/BuilderPatternSecondDemonstration/bin/Debug/netcoreapp3.1/BuilderPatternSecondDemonstration.runtimeconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "tfm": "netcoreapp3.1", 4 | "framework": { 5 | "name": "Microsoft.NETCore.App", 6 | "version": "3.1.0" 7 | } 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-03/BuilderPatternSecondDemonstration/obj/BuilderPatternSecondDemonstration.csproj.nuget.cache: -------------------------------------------------------------------------------- 1 | { 2 | "version": 1, 3 | "dgSpecHash": "ankuPEcTwArv2Z/5V8Iiq4N7v01C9z4g+YRk2CQsIXldse4HcfNXbt/+DlA8Uw5QObH6pscWbN44jrtujlVqUw==", 4 | "success": true 5 | } -------------------------------------------------------------------------------- /Ch-03/BuilderPatternSecondDemonstration/obj/BuilderPatternSecondDemonstration.csproj.nuget.g.targets: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(MSBuildAllProjects);$(MSBuildThisFileFullPath) 5 | 6 | -------------------------------------------------------------------------------- /Ch-03/BuilderPatternSecondDemonstration/obj/Debug/netcoreapp3.1/BuilderPatternSecondDemonstration.AssemblyInfoInputs.cache: -------------------------------------------------------------------------------- 1 | 615e3468834f22547dc129f7d432108dc0b03250 2 | -------------------------------------------------------------------------------- /Ch-03/BuilderPatternSecondDemonstration/obj/Debug/netcoreapp3.1/BuilderPatternSecondDemonstration.assets.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-03/BuilderPatternSecondDemonstration/obj/Debug/netcoreapp3.1/BuilderPatternSecondDemonstration.assets.cache -------------------------------------------------------------------------------- /Ch-03/BuilderPatternSecondDemonstration/obj/Debug/netcoreapp3.1/BuilderPatternSecondDemonstration.csprojAssemblyReference.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-03/BuilderPatternSecondDemonstration/obj/Debug/netcoreapp3.1/BuilderPatternSecondDemonstration.csprojAssemblyReference.cache -------------------------------------------------------------------------------- /Ch-03/BuilderPatternSecondDemonstration/obj/Debug/netcoreapp3.1/BuilderPatternSecondDemonstration.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-03/BuilderPatternSecondDemonstration/obj/Debug/netcoreapp3.1/BuilderPatternSecondDemonstration.dll -------------------------------------------------------------------------------- /Ch-03/BuilderPatternSecondDemonstration/obj/Debug/netcoreapp3.1/BuilderPatternSecondDemonstration.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-03/BuilderPatternSecondDemonstration/obj/Debug/netcoreapp3.1/BuilderPatternSecondDemonstration.exe -------------------------------------------------------------------------------- /Ch-03/BuilderPatternSecondDemonstration/obj/Debug/netcoreapp3.1/BuilderPatternSecondDemonstration.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-03/BuilderPatternSecondDemonstration/obj/Debug/netcoreapp3.1/BuilderPatternSecondDemonstration.pdb -------------------------------------------------------------------------------- /Ch-03/BuilderPatternSimpleExample/BuilderPatternSimpleExample.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-03/BuilderPatternSimpleExample/Car.cs: -------------------------------------------------------------------------------- 1 | namespace BuilderPatternSimpleExample 2 | { 3 | // Car is a ConcreteBuilder 4 | class Car : IBuilder 5 | { 6 | private string brandName; 7 | private Product product; 8 | public Car(string brand) 9 | { 10 | product = new Product(); 11 | this.brandName = brand; 12 | } 13 | public void StartUpOperations() 14 | { //Starting with brandname 15 | product.Add("-----------"); 16 | product.Add($"Car model name :{this.brandName}"); 17 | } 18 | public void BuildBody() 19 | { 20 | product.Add("This is a body of a Car"); 21 | } 22 | public void InsertWheels() 23 | { 24 | product.Add("4 wheels are added"); 25 | } 26 | 27 | public void AddHeadlights() 28 | { 29 | product.Add("2 Headlights are added"); 30 | } 31 | public void EndOperations() 32 | { 33 | product.Add("-----------"); 34 | } 35 | public Product GetVehicle() 36 | { 37 | return product; 38 | } 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /Ch-03/BuilderPatternSimpleExample/Director.cs: -------------------------------------------------------------------------------- 1 | namespace BuilderPatternSimpleExample 2 | { 3 | // "Director" 4 | class Director 5 | { 6 | private IBuilder builder; 7 | /* 8 | * A series of steps.In real life, these steps 9 | * can be much more complex. 10 | */ 11 | public void Construct(IBuilder builder) 12 | { 13 | this.builder = builder; 14 | builder.StartUpOperations(); 15 | builder.BuildBody(); 16 | builder.InsertWheels(); 17 | builder.AddHeadlights(); 18 | builder.EndOperations(); 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /Ch-03/BuilderPatternSimpleExample/IBuilder.cs: -------------------------------------------------------------------------------- 1 | namespace BuilderPatternSimpleExample 2 | { 3 | // The common interface 4 | interface IBuilder 5 | { 6 | void StartUpOperations(); 7 | void BuildBody(); 8 | void InsertWheels(); 9 | void AddHeadlights(); 10 | void EndOperations(); 11 | Product GetVehicle(); 12 | //An interface cannot contain instance field 13 | //Product product;//error 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /Ch-03/BuilderPatternSimpleExample/Product.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic;//For LinkedList 3 | 4 | namespace BuilderPatternSimpleExample 5 | { 6 | // "Product" 7 | class Product 8 | { 9 | // You can use any data structure that you prefer e.g.List etc. 10 | private LinkedList parts; 11 | public Product() 12 | { 13 | parts = new LinkedList(); 14 | } 15 | 16 | public void Add(string part) 17 | { 18 | //Adding parts 19 | parts.AddLast(part); 20 | } 21 | 22 | public void Show() 23 | { 24 | Console.WriteLine("\nProduct completed as below :"); 25 | foreach (string part in parts) 26 | Console.WriteLine(part); 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /Ch-03/BuilderPatternSimpleExample/Program.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | namespace BuilderPatternSimpleExample 3 | { 4 | class Program 5 | { 6 | static void Main(string[] args) 7 | { 8 | Console.WriteLine("***Builder Pattern Demo.***"); 9 | Director director = new Director(); 10 | 11 | IBuilder b1 = new Car("Ford"); 12 | IBuilder b2 = new Motorcycle("Honda"); 13 | // Making Car 14 | director.Construct(b1); 15 | Product p1 = b1.GetVehicle(); 16 | p1.Show(); 17 | 18 | //Making Motorcycle 19 | director.Construct(b2); 20 | Product p2 = b2.GetVehicle(); 21 | p2.Show(); 22 | 23 | Console.ReadLine(); 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /Ch-03/BuilderPatternSimpleExample/bin/Debug/netcoreapp3.1/BuilderPatternSimpleExample.deps.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeTarget": { 3 | "name": ".NETCoreApp,Version=v3.1", 4 | "signature": "" 5 | }, 6 | "compilationOptions": {}, 7 | "targets": { 8 | ".NETCoreApp,Version=v3.1": { 9 | "BuilderPatternSimpleExample/1.0.0": { 10 | "runtime": { 11 | "BuilderPatternSimpleExample.dll": {} 12 | } 13 | } 14 | } 15 | }, 16 | "libraries": { 17 | "BuilderPatternSimpleExample/1.0.0": { 18 | "type": "project", 19 | "serviceable": false, 20 | "sha512": "" 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /Ch-03/BuilderPatternSimpleExample/bin/Debug/netcoreapp3.1/BuilderPatternSimpleExample.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-03/BuilderPatternSimpleExample/bin/Debug/netcoreapp3.1/BuilderPatternSimpleExample.dll -------------------------------------------------------------------------------- /Ch-03/BuilderPatternSimpleExample/bin/Debug/netcoreapp3.1/BuilderPatternSimpleExample.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-03/BuilderPatternSimpleExample/bin/Debug/netcoreapp3.1/BuilderPatternSimpleExample.exe -------------------------------------------------------------------------------- /Ch-03/BuilderPatternSimpleExample/bin/Debug/netcoreapp3.1/BuilderPatternSimpleExample.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-03/BuilderPatternSimpleExample/bin/Debug/netcoreapp3.1/BuilderPatternSimpleExample.pdb -------------------------------------------------------------------------------- /Ch-03/BuilderPatternSimpleExample/bin/Debug/netcoreapp3.1/BuilderPatternSimpleExample.runtimeconfig.dev.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "additionalProbingPaths": [ 4 | "C:\\Users\\Vaskaran Sarcar\\.dotnet\\store\\|arch|\\|tfm|", 5 | "C:\\Users\\Vaskaran Sarcar\\.nuget\\packages", 6 | "C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder" 7 | ] 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-03/BuilderPatternSimpleExample/bin/Debug/netcoreapp3.1/BuilderPatternSimpleExample.runtimeconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "tfm": "netcoreapp3.1", 4 | "framework": { 5 | "name": "Microsoft.NETCore.App", 6 | "version": "3.1.0" 7 | } 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-03/BuilderPatternSimpleExample/obj/BuilderPatternSimpleExample.csproj.nuget.cache: -------------------------------------------------------------------------------- 1 | { 2 | "version": 1, 3 | "dgSpecHash": "DilRf1bpkp6V0e82hk5GkQz4DxaKQpbwxyn27hj/jPOw1DTmn4njY9FK+fNqn2np9O9psSDmi0kIsSwopFsjFw==", 4 | "success": true 5 | } -------------------------------------------------------------------------------- /Ch-03/BuilderPatternSimpleExample/obj/BuilderPatternSimpleExample.csproj.nuget.g.targets: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(MSBuildAllProjects);$(MSBuildThisFileFullPath) 5 | 6 | -------------------------------------------------------------------------------- /Ch-03/BuilderPatternSimpleExample/obj/Debug/netcoreapp3.1/BuilderPatternSimpleExample.AssemblyInfoInputs.cache: -------------------------------------------------------------------------------- 1 | ac608251d52a463c9a8421cd5ad59390aeb77f9e 2 | -------------------------------------------------------------------------------- /Ch-03/BuilderPatternSimpleExample/obj/Debug/netcoreapp3.1/BuilderPatternSimpleExample.assets.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-03/BuilderPatternSimpleExample/obj/Debug/netcoreapp3.1/BuilderPatternSimpleExample.assets.cache -------------------------------------------------------------------------------- /Ch-03/BuilderPatternSimpleExample/obj/Debug/netcoreapp3.1/BuilderPatternSimpleExample.csprojAssemblyReference.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-03/BuilderPatternSimpleExample/obj/Debug/netcoreapp3.1/BuilderPatternSimpleExample.csprojAssemblyReference.cache -------------------------------------------------------------------------------- /Ch-03/BuilderPatternSimpleExample/obj/Debug/netcoreapp3.1/BuilderPatternSimpleExample.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-03/BuilderPatternSimpleExample/obj/Debug/netcoreapp3.1/BuilderPatternSimpleExample.dll -------------------------------------------------------------------------------- /Ch-03/BuilderPatternSimpleExample/obj/Debug/netcoreapp3.1/BuilderPatternSimpleExample.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-03/BuilderPatternSimpleExample/obj/Debug/netcoreapp3.1/BuilderPatternSimpleExample.exe -------------------------------------------------------------------------------- /Ch-03/BuilderPatternSimpleExample/obj/Debug/netcoreapp3.1/BuilderPatternSimpleExample.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-03/BuilderPatternSimpleExample/obj/Debug/netcoreapp3.1/BuilderPatternSimpleExample.pdb -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPattern/FactoryMethodPattern.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPattern/bin/Debug/netcoreapp3.1/FactoryMethodPattern.deps.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeTarget": { 3 | "name": ".NETCoreApp,Version=v3.1", 4 | "signature": "" 5 | }, 6 | "compilationOptions": {}, 7 | "targets": { 8 | ".NETCoreApp,Version=v3.1": { 9 | "FactoryMethodPattern/1.0.0": { 10 | "runtime": { 11 | "FactoryMethodPattern.dll": {} 12 | } 13 | } 14 | } 15 | }, 16 | "libraries": { 17 | "FactoryMethodPattern/1.0.0": { 18 | "type": "project", 19 | "serviceable": false, 20 | "sha512": "" 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPattern/bin/Debug/netcoreapp3.1/FactoryMethodPattern.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-04/FactoryMethodPattern/bin/Debug/netcoreapp3.1/FactoryMethodPattern.dll -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPattern/bin/Debug/netcoreapp3.1/FactoryMethodPattern.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-04/FactoryMethodPattern/bin/Debug/netcoreapp3.1/FactoryMethodPattern.exe -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPattern/bin/Debug/netcoreapp3.1/FactoryMethodPattern.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-04/FactoryMethodPattern/bin/Debug/netcoreapp3.1/FactoryMethodPattern.pdb -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPattern/bin/Debug/netcoreapp3.1/FactoryMethodPattern.runtimeconfig.dev.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "additionalProbingPaths": [ 4 | "C:\\Users\\Vaskaran Sarcar\\.dotnet\\store\\|arch|\\|tfm|", 5 | "C:\\Users\\Vaskaran Sarcar\\.nuget\\packages", 6 | "C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder" 7 | ] 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPattern/bin/Debug/netcoreapp3.1/FactoryMethodPattern.runtimeconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "tfm": "netcoreapp3.1", 4 | "framework": { 5 | "name": "Microsoft.NETCore.App", 6 | "version": "3.1.0" 7 | } 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPattern/obj/Debug/netcoreapp3.1/FactoryMethodPattern.AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // This code was generated by a tool. 4 | // Runtime Version:4.0.30319.42000 5 | // 6 | // Changes to this file may cause incorrect behavior and will be lost if 7 | // the code is regenerated. 8 | // 9 | //------------------------------------------------------------------------------ 10 | 11 | using System; 12 | using System.Reflection; 13 | 14 | [assembly: System.Reflection.AssemblyCompanyAttribute("FactoryMethodPattern")] 15 | [assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] 16 | [assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] 17 | [assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")] 18 | [assembly: System.Reflection.AssemblyProductAttribute("FactoryMethodPattern")] 19 | [assembly: System.Reflection.AssemblyTitleAttribute("FactoryMethodPattern")] 20 | [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] 21 | 22 | // Generated by the MSBuild WriteCodeFragment class. 23 | 24 | -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPattern/obj/Debug/netcoreapp3.1/FactoryMethodPattern.AssemblyInfoInputs.cache: -------------------------------------------------------------------------------- 1 | 79d336277d65ad5c10fc21bd13eef4b27e2bba4a 2 | -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPattern/obj/Debug/netcoreapp3.1/FactoryMethodPattern.assets.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-04/FactoryMethodPattern/obj/Debug/netcoreapp3.1/FactoryMethodPattern.assets.cache -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPattern/obj/Debug/netcoreapp3.1/FactoryMethodPattern.csprojAssemblyReference.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-04/FactoryMethodPattern/obj/Debug/netcoreapp3.1/FactoryMethodPattern.csprojAssemblyReference.cache -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPattern/obj/Debug/netcoreapp3.1/FactoryMethodPattern.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-04/FactoryMethodPattern/obj/Debug/netcoreapp3.1/FactoryMethodPattern.dll -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPattern/obj/Debug/netcoreapp3.1/FactoryMethodPattern.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-04/FactoryMethodPattern/obj/Debug/netcoreapp3.1/FactoryMethodPattern.exe -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPattern/obj/Debug/netcoreapp3.1/FactoryMethodPattern.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-04/FactoryMethodPattern/obj/Debug/netcoreapp3.1/FactoryMethodPattern.pdb -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPattern/obj/FactoryMethodPattern.csproj.nuget.cache: -------------------------------------------------------------------------------- 1 | { 2 | "version": 1, 3 | "dgSpecHash": "Ui8IsTdJ/kWRB7auNgu2yKjcw0zzV8fyxh2SVpyEOuqNdBnx7332GKhdiZEisippdb3m6SEk+wlE1WqnHLQfnw==", 4 | "success": true 5 | } -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPattern/obj/FactoryMethodPattern.csproj.nuget.g.targets: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(MSBuildAllProjects);$(MSBuildThisFileFullPath) 5 | 6 | -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPatternModifiedExample/FactoryMethodPatternModifiedExample.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPatternModifiedExample/bin/Debug/netcoreapp3.1/FactoryMethodPatternModifiedExample.deps.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeTarget": { 3 | "name": ".NETCoreApp,Version=v3.1", 4 | "signature": "" 5 | }, 6 | "compilationOptions": {}, 7 | "targets": { 8 | ".NETCoreApp,Version=v3.1": { 9 | "FactoryMethodPatternModifiedExample/1.0.0": { 10 | "runtime": { 11 | "FactoryMethodPatternModifiedExample.dll": {} 12 | } 13 | } 14 | } 15 | }, 16 | "libraries": { 17 | "FactoryMethodPatternModifiedExample/1.0.0": { 18 | "type": "project", 19 | "serviceable": false, 20 | "sha512": "" 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPatternModifiedExample/bin/Debug/netcoreapp3.1/FactoryMethodPatternModifiedExample.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-04/FactoryMethodPatternModifiedExample/bin/Debug/netcoreapp3.1/FactoryMethodPatternModifiedExample.dll -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPatternModifiedExample/bin/Debug/netcoreapp3.1/FactoryMethodPatternModifiedExample.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-04/FactoryMethodPatternModifiedExample/bin/Debug/netcoreapp3.1/FactoryMethodPatternModifiedExample.exe -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPatternModifiedExample/bin/Debug/netcoreapp3.1/FactoryMethodPatternModifiedExample.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-04/FactoryMethodPatternModifiedExample/bin/Debug/netcoreapp3.1/FactoryMethodPatternModifiedExample.pdb -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPatternModifiedExample/bin/Debug/netcoreapp3.1/FactoryMethodPatternModifiedExample.runtimeconfig.dev.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "additionalProbingPaths": [ 4 | "C:\\Users\\Vaskaran Sarcar\\.dotnet\\store\\|arch|\\|tfm|", 5 | "C:\\Users\\Vaskaran Sarcar\\.nuget\\packages", 6 | "C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder" 7 | ] 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPatternModifiedExample/bin/Debug/netcoreapp3.1/FactoryMethodPatternModifiedExample.runtimeconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "tfm": "netcoreapp3.1", 4 | "framework": { 5 | "name": "Microsoft.NETCore.App", 6 | "version": "3.1.0" 7 | } 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPatternModifiedExample/obj/Debug/netcoreapp3.1/FactoryMethodPatternModifiedExample.AssemblyInfoInputs.cache: -------------------------------------------------------------------------------- 1 | 8ff5dc36d16278d7a49ca4bc9c65be761da78196 2 | -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPatternModifiedExample/obj/Debug/netcoreapp3.1/FactoryMethodPatternModifiedExample.assets.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-04/FactoryMethodPatternModifiedExample/obj/Debug/netcoreapp3.1/FactoryMethodPatternModifiedExample.assets.cache -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPatternModifiedExample/obj/Debug/netcoreapp3.1/FactoryMethodPatternModifiedExample.csprojAssemblyReference.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-04/FactoryMethodPatternModifiedExample/obj/Debug/netcoreapp3.1/FactoryMethodPatternModifiedExample.csprojAssemblyReference.cache -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPatternModifiedExample/obj/Debug/netcoreapp3.1/FactoryMethodPatternModifiedExample.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-04/FactoryMethodPatternModifiedExample/obj/Debug/netcoreapp3.1/FactoryMethodPatternModifiedExample.dll -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPatternModifiedExample/obj/Debug/netcoreapp3.1/FactoryMethodPatternModifiedExample.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-04/FactoryMethodPatternModifiedExample/obj/Debug/netcoreapp3.1/FactoryMethodPatternModifiedExample.exe -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPatternModifiedExample/obj/Debug/netcoreapp3.1/FactoryMethodPatternModifiedExample.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-04/FactoryMethodPatternModifiedExample/obj/Debug/netcoreapp3.1/FactoryMethodPatternModifiedExample.pdb -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPatternModifiedExample/obj/FactoryMethodPatternModifiedExample.csproj.nuget.cache: -------------------------------------------------------------------------------- 1 | { 2 | "version": 1, 3 | "dgSpecHash": "xM5QaInJfa0OWj5iQHF+uNtrWyzqMR8aS3qGbH5EVMDFtUvzT4a4z/Pa8MT5cSy4IbfGpSpmCcOzi6WxrOo0Zw==", 4 | "success": true 5 | } -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPatternModifiedExample/obj/FactoryMethodPatternModifiedExample.csproj.nuget.g.targets: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(MSBuildAllProjects);$(MSBuildThisFileFullPath) 5 | 6 | -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPatternWithMethodParameters/FactoryMethodPatternWithMethodParameters.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPatternWithMethodParameters/bin/Debug/netcoreapp3.1/FactoryMethodPatternWithMethodParameters.deps.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeTarget": { 3 | "name": ".NETCoreApp,Version=v3.1", 4 | "signature": "" 5 | }, 6 | "compilationOptions": {}, 7 | "targets": { 8 | ".NETCoreApp,Version=v3.1": { 9 | "FactoryMethodPatternWithMethodParameters/1.0.0": { 10 | "runtime": { 11 | "FactoryMethodPatternWithMethodParameters.dll": {} 12 | } 13 | } 14 | } 15 | }, 16 | "libraries": { 17 | "FactoryMethodPatternWithMethodParameters/1.0.0": { 18 | "type": "project", 19 | "serviceable": false, 20 | "sha512": "" 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPatternWithMethodParameters/bin/Debug/netcoreapp3.1/FactoryMethodPatternWithMethodParameters.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-04/FactoryMethodPatternWithMethodParameters/bin/Debug/netcoreapp3.1/FactoryMethodPatternWithMethodParameters.dll -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPatternWithMethodParameters/bin/Debug/netcoreapp3.1/FactoryMethodPatternWithMethodParameters.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-04/FactoryMethodPatternWithMethodParameters/bin/Debug/netcoreapp3.1/FactoryMethodPatternWithMethodParameters.exe -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPatternWithMethodParameters/bin/Debug/netcoreapp3.1/FactoryMethodPatternWithMethodParameters.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-04/FactoryMethodPatternWithMethodParameters/bin/Debug/netcoreapp3.1/FactoryMethodPatternWithMethodParameters.pdb -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPatternWithMethodParameters/bin/Debug/netcoreapp3.1/FactoryMethodPatternWithMethodParameters.runtimeconfig.dev.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "additionalProbingPaths": [ 4 | "C:\\Users\\Vaskaran Sarcar\\.dotnet\\store\\|arch|\\|tfm|", 5 | "C:\\Users\\Vaskaran Sarcar\\.nuget\\packages", 6 | "C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder" 7 | ] 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPatternWithMethodParameters/bin/Debug/netcoreapp3.1/FactoryMethodPatternWithMethodParameters.runtimeconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "tfm": "netcoreapp3.1", 4 | "framework": { 5 | "name": "Microsoft.NETCore.App", 6 | "version": "3.1.0" 7 | } 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPatternWithMethodParameters/obj/Debug/netcoreapp3.1/FactoryMethodPatternWithMethodParameters.AssemblyInfoInputs.cache: -------------------------------------------------------------------------------- 1 | 002b060767dcbe8a77e7b067afbc32adfd93f7d1 2 | -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPatternWithMethodParameters/obj/Debug/netcoreapp3.1/FactoryMethodPatternWithMethodParameters.assets.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-04/FactoryMethodPatternWithMethodParameters/obj/Debug/netcoreapp3.1/FactoryMethodPatternWithMethodParameters.assets.cache -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPatternWithMethodParameters/obj/Debug/netcoreapp3.1/FactoryMethodPatternWithMethodParameters.csprojAssemblyReference.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-04/FactoryMethodPatternWithMethodParameters/obj/Debug/netcoreapp3.1/FactoryMethodPatternWithMethodParameters.csprojAssemblyReference.cache -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPatternWithMethodParameters/obj/Debug/netcoreapp3.1/FactoryMethodPatternWithMethodParameters.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-04/FactoryMethodPatternWithMethodParameters/obj/Debug/netcoreapp3.1/FactoryMethodPatternWithMethodParameters.dll -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPatternWithMethodParameters/obj/Debug/netcoreapp3.1/FactoryMethodPatternWithMethodParameters.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-04/FactoryMethodPatternWithMethodParameters/obj/Debug/netcoreapp3.1/FactoryMethodPatternWithMethodParameters.exe -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPatternWithMethodParameters/obj/Debug/netcoreapp3.1/FactoryMethodPatternWithMethodParameters.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-04/FactoryMethodPatternWithMethodParameters/obj/Debug/netcoreapp3.1/FactoryMethodPatternWithMethodParameters.pdb -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPatternWithMethodParameters/obj/FactoryMethodPatternWithMethodParameters.csproj.nuget.cache: -------------------------------------------------------------------------------- 1 | { 2 | "version": 1, 3 | "dgSpecHash": "yujfLZ4JSm6P2HPffiwPQ4mtst7EXQgOz1654wbE7w6e1MmvnTvwSqFBuFfK6poJM08t+Dqc8Kayqnit/WmRHw==", 4 | "success": true 5 | } -------------------------------------------------------------------------------- /Ch-04/FactoryMethodPatternWithMethodParameters/obj/FactoryMethodPatternWithMethodParameters.csproj.nuget.g.targets: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(MSBuildAllProjects);$(MSBuildThisFileFullPath) 5 | 6 | -------------------------------------------------------------------------------- /Ch-05/AbstractFactoryPattern/AbstractFactoryPattern.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-05/AbstractFactoryPattern/bin/Debug/netcoreapp3.1/AbstractFactoryPattern.deps.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeTarget": { 3 | "name": ".NETCoreApp,Version=v3.1", 4 | "signature": "" 5 | }, 6 | "compilationOptions": {}, 7 | "targets": { 8 | ".NETCoreApp,Version=v3.1": { 9 | "AbstractFactoryPattern/1.0.0": { 10 | "runtime": { 11 | "AbstractFactoryPattern.dll": {} 12 | } 13 | } 14 | } 15 | }, 16 | "libraries": { 17 | "AbstractFactoryPattern/1.0.0": { 18 | "type": "project", 19 | "serviceable": false, 20 | "sha512": "" 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /Ch-05/AbstractFactoryPattern/bin/Debug/netcoreapp3.1/AbstractFactoryPattern.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-05/AbstractFactoryPattern/bin/Debug/netcoreapp3.1/AbstractFactoryPattern.dll -------------------------------------------------------------------------------- /Ch-05/AbstractFactoryPattern/bin/Debug/netcoreapp3.1/AbstractFactoryPattern.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-05/AbstractFactoryPattern/bin/Debug/netcoreapp3.1/AbstractFactoryPattern.exe -------------------------------------------------------------------------------- /Ch-05/AbstractFactoryPattern/bin/Debug/netcoreapp3.1/AbstractFactoryPattern.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-05/AbstractFactoryPattern/bin/Debug/netcoreapp3.1/AbstractFactoryPattern.pdb -------------------------------------------------------------------------------- /Ch-05/AbstractFactoryPattern/bin/Debug/netcoreapp3.1/AbstractFactoryPattern.runtimeconfig.dev.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "additionalProbingPaths": [ 4 | "C:\\Users\\Vaskaran Sarcar\\.dotnet\\store\\|arch|\\|tfm|", 5 | "C:\\Users\\Vaskaran Sarcar\\.nuget\\packages", 6 | "C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder" 7 | ] 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-05/AbstractFactoryPattern/bin/Debug/netcoreapp3.1/AbstractFactoryPattern.runtimeconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "tfm": "netcoreapp3.1", 4 | "framework": { 5 | "name": "Microsoft.NETCore.App", 6 | "version": "3.1.0" 7 | } 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-05/AbstractFactoryPattern/obj/AbstractFactoryPattern.csproj.nuget.cache: -------------------------------------------------------------------------------- 1 | { 2 | "version": 1, 3 | "dgSpecHash": "hTsKzgADjg8FiM34WTWTzGbGJBUEIrC2s/fYFJJhSoVAfWh+BO3yey/oaPGrA4T809lefnd6/Q8VfiXfXcg+Ew==", 4 | "success": true 5 | } -------------------------------------------------------------------------------- /Ch-05/AbstractFactoryPattern/obj/AbstractFactoryPattern.csproj.nuget.g.targets: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(MSBuildAllProjects);$(MSBuildThisFileFullPath) 5 | 6 | -------------------------------------------------------------------------------- /Ch-05/AbstractFactoryPattern/obj/Debug/netcoreapp3.1/AbstractFactoryPattern.AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // This code was generated by a tool. 4 | // Runtime Version:4.0.30319.42000 5 | // 6 | // Changes to this file may cause incorrect behavior and will be lost if 7 | // the code is regenerated. 8 | // 9 | //------------------------------------------------------------------------------ 10 | 11 | using System; 12 | using System.Reflection; 13 | 14 | [assembly: System.Reflection.AssemblyCompanyAttribute("AbstractFactoryPattern")] 15 | [assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] 16 | [assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] 17 | [assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")] 18 | [assembly: System.Reflection.AssemblyProductAttribute("AbstractFactoryPattern")] 19 | [assembly: System.Reflection.AssemblyTitleAttribute("AbstractFactoryPattern")] 20 | [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] 21 | 22 | // Generated by the MSBuild WriteCodeFragment class. 23 | 24 | -------------------------------------------------------------------------------- /Ch-05/AbstractFactoryPattern/obj/Debug/netcoreapp3.1/AbstractFactoryPattern.AssemblyInfoInputs.cache: -------------------------------------------------------------------------------- 1 | 4e246dcbf6971e6d65a19a14ac3fcb1e47ba7a8d 2 | -------------------------------------------------------------------------------- /Ch-05/AbstractFactoryPattern/obj/Debug/netcoreapp3.1/AbstractFactoryPattern.assets.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-05/AbstractFactoryPattern/obj/Debug/netcoreapp3.1/AbstractFactoryPattern.assets.cache -------------------------------------------------------------------------------- /Ch-05/AbstractFactoryPattern/obj/Debug/netcoreapp3.1/AbstractFactoryPattern.csprojAssemblyReference.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-05/AbstractFactoryPattern/obj/Debug/netcoreapp3.1/AbstractFactoryPattern.csprojAssemblyReference.cache -------------------------------------------------------------------------------- /Ch-05/AbstractFactoryPattern/obj/Debug/netcoreapp3.1/AbstractFactoryPattern.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-05/AbstractFactoryPattern/obj/Debug/netcoreapp3.1/AbstractFactoryPattern.dll -------------------------------------------------------------------------------- /Ch-05/AbstractFactoryPattern/obj/Debug/netcoreapp3.1/AbstractFactoryPattern.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-05/AbstractFactoryPattern/obj/Debug/netcoreapp3.1/AbstractFactoryPattern.exe -------------------------------------------------------------------------------- /Ch-05/AbstractFactoryPattern/obj/Debug/netcoreapp3.1/AbstractFactoryPattern.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-05/AbstractFactoryPattern/obj/Debug/netcoreapp3.1/AbstractFactoryPattern.pdb -------------------------------------------------------------------------------- /Ch-06/ProxyPatternDemo/ProxyPatternDemo.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-06/ProxyPatternDemo/bin/Debug/netcoreapp3.1/ProxyPatternDemo.deps.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeTarget": { 3 | "name": ".NETCoreApp,Version=v3.1", 4 | "signature": "" 5 | }, 6 | "compilationOptions": {}, 7 | "targets": { 8 | ".NETCoreApp,Version=v3.1": { 9 | "ProxyPatternDemo/1.0.0": { 10 | "runtime": { 11 | "ProxyPatternDemo.dll": {} 12 | } 13 | } 14 | } 15 | }, 16 | "libraries": { 17 | "ProxyPatternDemo/1.0.0": { 18 | "type": "project", 19 | "serviceable": false, 20 | "sha512": "" 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /Ch-06/ProxyPatternDemo/bin/Debug/netcoreapp3.1/ProxyPatternDemo.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-06/ProxyPatternDemo/bin/Debug/netcoreapp3.1/ProxyPatternDemo.dll -------------------------------------------------------------------------------- /Ch-06/ProxyPatternDemo/bin/Debug/netcoreapp3.1/ProxyPatternDemo.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-06/ProxyPatternDemo/bin/Debug/netcoreapp3.1/ProxyPatternDemo.exe -------------------------------------------------------------------------------- /Ch-06/ProxyPatternDemo/bin/Debug/netcoreapp3.1/ProxyPatternDemo.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-06/ProxyPatternDemo/bin/Debug/netcoreapp3.1/ProxyPatternDemo.pdb -------------------------------------------------------------------------------- /Ch-06/ProxyPatternDemo/bin/Debug/netcoreapp3.1/ProxyPatternDemo.runtimeconfig.dev.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "additionalProbingPaths": [ 4 | "C:\\Users\\Vaskaran Sarcar\\.dotnet\\store\\|arch|\\|tfm|", 5 | "C:\\Users\\Vaskaran Sarcar\\.nuget\\packages", 6 | "C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder" 7 | ] 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-06/ProxyPatternDemo/bin/Debug/netcoreapp3.1/ProxyPatternDemo.runtimeconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "tfm": "netcoreapp3.1", 4 | "framework": { 5 | "name": "Microsoft.NETCore.App", 6 | "version": "3.1.0" 7 | } 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-06/ProxyPatternDemo/obj/Debug/netcoreapp3.1/ProxyPatternDemo.AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // This code was generated by a tool. 4 | // Runtime Version:4.0.30319.42000 5 | // 6 | // Changes to this file may cause incorrect behavior and will be lost if 7 | // the code is regenerated. 8 | // 9 | //------------------------------------------------------------------------------ 10 | 11 | using System; 12 | using System.Reflection; 13 | 14 | [assembly: System.Reflection.AssemblyCompanyAttribute("ProxyPatternDemo")] 15 | [assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] 16 | [assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] 17 | [assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")] 18 | [assembly: System.Reflection.AssemblyProductAttribute("ProxyPatternDemo")] 19 | [assembly: System.Reflection.AssemblyTitleAttribute("ProxyPatternDemo")] 20 | [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] 21 | 22 | // Generated by the MSBuild WriteCodeFragment class. 23 | 24 | -------------------------------------------------------------------------------- /Ch-06/ProxyPatternDemo/obj/Debug/netcoreapp3.1/ProxyPatternDemo.AssemblyInfoInputs.cache: -------------------------------------------------------------------------------- 1 | 693ee0eec38e61beeba5f2a150d724298fbbf10d 2 | -------------------------------------------------------------------------------- /Ch-06/ProxyPatternDemo/obj/Debug/netcoreapp3.1/ProxyPatternDemo.assets.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-06/ProxyPatternDemo/obj/Debug/netcoreapp3.1/ProxyPatternDemo.assets.cache -------------------------------------------------------------------------------- /Ch-06/ProxyPatternDemo/obj/Debug/netcoreapp3.1/ProxyPatternDemo.csprojAssemblyReference.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-06/ProxyPatternDemo/obj/Debug/netcoreapp3.1/ProxyPatternDemo.csprojAssemblyReference.cache -------------------------------------------------------------------------------- /Ch-06/ProxyPatternDemo/obj/Debug/netcoreapp3.1/ProxyPatternDemo.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-06/ProxyPatternDemo/obj/Debug/netcoreapp3.1/ProxyPatternDemo.dll -------------------------------------------------------------------------------- /Ch-06/ProxyPatternDemo/obj/Debug/netcoreapp3.1/ProxyPatternDemo.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-06/ProxyPatternDemo/obj/Debug/netcoreapp3.1/ProxyPatternDemo.exe -------------------------------------------------------------------------------- /Ch-06/ProxyPatternDemo/obj/Debug/netcoreapp3.1/ProxyPatternDemo.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-06/ProxyPatternDemo/obj/Debug/netcoreapp3.1/ProxyPatternDemo.pdb -------------------------------------------------------------------------------- /Ch-06/ProxyPatternDemo/obj/ProxyPatternDemo.csproj.nuget.cache: -------------------------------------------------------------------------------- 1 | { 2 | "version": 1, 3 | "dgSpecHash": "CwdhdOY7n+W1PE4eWIQmMfb4rtBPQPJLm2lIL67+cI4VFlBjVvAdZeLS/LVhvclHEPbmRvThMrvGbN4LGEptcw==", 4 | "success": true 5 | } -------------------------------------------------------------------------------- /Ch-06/ProxyPatternDemo/obj/ProxyPatternDemo.csproj.nuget.g.targets: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(MSBuildAllProjects);$(MSBuildThisFileFullPath) 5 | 6 | -------------------------------------------------------------------------------- /Ch-06/ProxyPatternDemo2/ProxyPatternDemo2.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-06/ProxyPatternDemo2/bin/Debug/netcoreapp3.1/ProxyPatternDemo2.deps.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeTarget": { 3 | "name": ".NETCoreApp,Version=v3.1", 4 | "signature": "" 5 | }, 6 | "compilationOptions": {}, 7 | "targets": { 8 | ".NETCoreApp,Version=v3.1": { 9 | "ProxyPatternDemo2/1.0.0": { 10 | "runtime": { 11 | "ProxyPatternDemo2.dll": {} 12 | } 13 | } 14 | } 15 | }, 16 | "libraries": { 17 | "ProxyPatternDemo2/1.0.0": { 18 | "type": "project", 19 | "serviceable": false, 20 | "sha512": "" 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /Ch-06/ProxyPatternDemo2/bin/Debug/netcoreapp3.1/ProxyPatternDemo2.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-06/ProxyPatternDemo2/bin/Debug/netcoreapp3.1/ProxyPatternDemo2.dll -------------------------------------------------------------------------------- /Ch-06/ProxyPatternDemo2/bin/Debug/netcoreapp3.1/ProxyPatternDemo2.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-06/ProxyPatternDemo2/bin/Debug/netcoreapp3.1/ProxyPatternDemo2.exe -------------------------------------------------------------------------------- /Ch-06/ProxyPatternDemo2/bin/Debug/netcoreapp3.1/ProxyPatternDemo2.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-06/ProxyPatternDemo2/bin/Debug/netcoreapp3.1/ProxyPatternDemo2.pdb -------------------------------------------------------------------------------- /Ch-06/ProxyPatternDemo2/bin/Debug/netcoreapp3.1/ProxyPatternDemo2.runtimeconfig.dev.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "additionalProbingPaths": [ 4 | "C:\\Users\\Vaskaran Sarcar\\.dotnet\\store\\|arch|\\|tfm|", 5 | "C:\\Users\\Vaskaran Sarcar\\.nuget\\packages", 6 | "C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder" 7 | ] 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-06/ProxyPatternDemo2/bin/Debug/netcoreapp3.1/ProxyPatternDemo2.runtimeconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "tfm": "netcoreapp3.1", 4 | "framework": { 5 | "name": "Microsoft.NETCore.App", 6 | "version": "3.1.0" 7 | } 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-06/ProxyPatternDemo2/obj/Debug/netcoreapp3.1/ProxyPatternDemo2.AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // This code was generated by a tool. 4 | // Runtime Version:4.0.30319.42000 5 | // 6 | // Changes to this file may cause incorrect behavior and will be lost if 7 | // the code is regenerated. 8 | // 9 | //------------------------------------------------------------------------------ 10 | 11 | using System; 12 | using System.Reflection; 13 | 14 | [assembly: System.Reflection.AssemblyCompanyAttribute("ProxyPatternDemo2")] 15 | [assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] 16 | [assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] 17 | [assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")] 18 | [assembly: System.Reflection.AssemblyProductAttribute("ProxyPatternDemo2")] 19 | [assembly: System.Reflection.AssemblyTitleAttribute("ProxyPatternDemo2")] 20 | [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] 21 | 22 | // Generated by the MSBuild WriteCodeFragment class. 23 | 24 | -------------------------------------------------------------------------------- /Ch-06/ProxyPatternDemo2/obj/Debug/netcoreapp3.1/ProxyPatternDemo2.AssemblyInfoInputs.cache: -------------------------------------------------------------------------------- 1 | 1c3dc0a1b726d59c44a6674593ee05294130b61d 2 | -------------------------------------------------------------------------------- /Ch-06/ProxyPatternDemo2/obj/Debug/netcoreapp3.1/ProxyPatternDemo2.assets.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-06/ProxyPatternDemo2/obj/Debug/netcoreapp3.1/ProxyPatternDemo2.assets.cache -------------------------------------------------------------------------------- /Ch-06/ProxyPatternDemo2/obj/Debug/netcoreapp3.1/ProxyPatternDemo2.csprojAssemblyReference.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-06/ProxyPatternDemo2/obj/Debug/netcoreapp3.1/ProxyPatternDemo2.csprojAssemblyReference.cache -------------------------------------------------------------------------------- /Ch-06/ProxyPatternDemo2/obj/Debug/netcoreapp3.1/ProxyPatternDemo2.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-06/ProxyPatternDemo2/obj/Debug/netcoreapp3.1/ProxyPatternDemo2.dll -------------------------------------------------------------------------------- /Ch-06/ProxyPatternDemo2/obj/Debug/netcoreapp3.1/ProxyPatternDemo2.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-06/ProxyPatternDemo2/obj/Debug/netcoreapp3.1/ProxyPatternDemo2.exe -------------------------------------------------------------------------------- /Ch-06/ProxyPatternDemo2/obj/Debug/netcoreapp3.1/ProxyPatternDemo2.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-06/ProxyPatternDemo2/obj/Debug/netcoreapp3.1/ProxyPatternDemo2.pdb -------------------------------------------------------------------------------- /Ch-06/ProxyPatternDemo2/obj/ProxyPatternDemo2.csproj.nuget.cache: -------------------------------------------------------------------------------- 1 | { 2 | "version": 1, 3 | "dgSpecHash": "bScdBXcltu9KblrMLvTtu8nJOi30PARVLIX89R6Ip4rX51AtnQrPL7tbqD1KrLSY4HjvOdy8Z5XnMop493jQRg==", 4 | "success": true 5 | } -------------------------------------------------------------------------------- /Ch-06/ProxyPatternDemo2/obj/ProxyPatternDemo2.csproj.nuget.g.targets: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(MSBuildAllProjects);$(MSBuildThisFileFullPath) 5 | 6 | -------------------------------------------------------------------------------- /Ch-07/DecoratorPatternDemo/DecoratorPatternDemo.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-07/DecoratorPatternDemo/bin/Debug/netcoreapp3.1/DecoratorPatternDemo.deps.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeTarget": { 3 | "name": ".NETCoreApp,Version=v3.1", 4 | "signature": "" 5 | }, 6 | "compilationOptions": {}, 7 | "targets": { 8 | ".NETCoreApp,Version=v3.1": { 9 | "DecoratorPatternDemo/1.0.0": { 10 | "runtime": { 11 | "DecoratorPatternDemo.dll": {} 12 | } 13 | } 14 | } 15 | }, 16 | "libraries": { 17 | "DecoratorPatternDemo/1.0.0": { 18 | "type": "project", 19 | "serviceable": false, 20 | "sha512": "" 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /Ch-07/DecoratorPatternDemo/bin/Debug/netcoreapp3.1/DecoratorPatternDemo.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-07/DecoratorPatternDemo/bin/Debug/netcoreapp3.1/DecoratorPatternDemo.dll -------------------------------------------------------------------------------- /Ch-07/DecoratorPatternDemo/bin/Debug/netcoreapp3.1/DecoratorPatternDemo.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-07/DecoratorPatternDemo/bin/Debug/netcoreapp3.1/DecoratorPatternDemo.exe -------------------------------------------------------------------------------- /Ch-07/DecoratorPatternDemo/bin/Debug/netcoreapp3.1/DecoratorPatternDemo.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-07/DecoratorPatternDemo/bin/Debug/netcoreapp3.1/DecoratorPatternDemo.pdb -------------------------------------------------------------------------------- /Ch-07/DecoratorPatternDemo/bin/Debug/netcoreapp3.1/DecoratorPatternDemo.runtimeconfig.dev.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "additionalProbingPaths": [ 4 | "C:\\Users\\Vaskaran Sarcar\\.dotnet\\store\\|arch|\\|tfm|", 5 | "C:\\Users\\Vaskaran Sarcar\\.nuget\\packages", 6 | "C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder" 7 | ] 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-07/DecoratorPatternDemo/bin/Debug/netcoreapp3.1/DecoratorPatternDemo.runtimeconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "tfm": "netcoreapp3.1", 4 | "framework": { 5 | "name": "Microsoft.NETCore.App", 6 | "version": "3.1.0" 7 | } 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-07/DecoratorPatternDemo/obj/Debug/netcoreapp3.1/DecoratorPatternDemo.AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // This code was generated by a tool. 4 | // Runtime Version:4.0.30319.42000 5 | // 6 | // Changes to this file may cause incorrect behavior and will be lost if 7 | // the code is regenerated. 8 | // 9 | //------------------------------------------------------------------------------ 10 | 11 | using System; 12 | using System.Reflection; 13 | 14 | [assembly: System.Reflection.AssemblyCompanyAttribute("DecoratorPatternDemo")] 15 | [assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] 16 | [assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] 17 | [assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")] 18 | [assembly: System.Reflection.AssemblyProductAttribute("DecoratorPatternDemo")] 19 | [assembly: System.Reflection.AssemblyTitleAttribute("DecoratorPatternDemo")] 20 | [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] 21 | 22 | // Generated by the MSBuild WriteCodeFragment class. 23 | 24 | -------------------------------------------------------------------------------- /Ch-07/DecoratorPatternDemo/obj/Debug/netcoreapp3.1/DecoratorPatternDemo.AssemblyInfoInputs.cache: -------------------------------------------------------------------------------- 1 | 22311618d8b9490e77333f3d0459d28935063dce 2 | -------------------------------------------------------------------------------- /Ch-07/DecoratorPatternDemo/obj/Debug/netcoreapp3.1/DecoratorPatternDemo.assets.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-07/DecoratorPatternDemo/obj/Debug/netcoreapp3.1/DecoratorPatternDemo.assets.cache -------------------------------------------------------------------------------- /Ch-07/DecoratorPatternDemo/obj/Debug/netcoreapp3.1/DecoratorPatternDemo.csprojAssemblyReference.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-07/DecoratorPatternDemo/obj/Debug/netcoreapp3.1/DecoratorPatternDemo.csprojAssemblyReference.cache -------------------------------------------------------------------------------- /Ch-07/DecoratorPatternDemo/obj/Debug/netcoreapp3.1/DecoratorPatternDemo.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-07/DecoratorPatternDemo/obj/Debug/netcoreapp3.1/DecoratorPatternDemo.dll -------------------------------------------------------------------------------- /Ch-07/DecoratorPatternDemo/obj/Debug/netcoreapp3.1/DecoratorPatternDemo.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-07/DecoratorPatternDemo/obj/Debug/netcoreapp3.1/DecoratorPatternDemo.exe -------------------------------------------------------------------------------- /Ch-07/DecoratorPatternDemo/obj/Debug/netcoreapp3.1/DecoratorPatternDemo.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-07/DecoratorPatternDemo/obj/Debug/netcoreapp3.1/DecoratorPatternDemo.pdb -------------------------------------------------------------------------------- /Ch-07/DecoratorPatternDemo/obj/DecoratorPatternDemo.csproj.nuget.cache: -------------------------------------------------------------------------------- 1 | { 2 | "version": 1, 3 | "dgSpecHash": "Y/6RSCPB/7EcuEfwzHgKKU7eXA0ZDF5nolmCevQrBGSa7EqAmzIH1WZFBy6s7j4Jy6j20pYd6131Ku2t+Bh7dA==", 4 | "success": true 5 | } -------------------------------------------------------------------------------- /Ch-07/DecoratorPatternDemo/obj/DecoratorPatternDemo.csproj.nuget.g.targets: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(MSBuildAllProjects);$(MSBuildThisFileFullPath) 5 | 6 | -------------------------------------------------------------------------------- /Ch-08/AdapterPatternAlternativeImplementationDemo/AdapterPatternAlternativeImplementationDemo.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-08/AdapterPatternAlternativeImplementationDemo/bin/Debug/netcoreapp3.1/AdapterPatternAlternativeImplementationDemo.deps.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeTarget": { 3 | "name": ".NETCoreApp,Version=v3.1", 4 | "signature": "" 5 | }, 6 | "compilationOptions": {}, 7 | "targets": { 8 | ".NETCoreApp,Version=v3.1": { 9 | "AdapterPatternAlternativeImplementationDemo/1.0.0": { 10 | "runtime": { 11 | "AdapterPatternAlternativeImplementationDemo.dll": {} 12 | } 13 | } 14 | } 15 | }, 16 | "libraries": { 17 | "AdapterPatternAlternativeImplementationDemo/1.0.0": { 18 | "type": "project", 19 | "serviceable": false, 20 | "sha512": "" 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /Ch-08/AdapterPatternAlternativeImplementationDemo/bin/Debug/netcoreapp3.1/AdapterPatternAlternativeImplementationDemo.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-08/AdapterPatternAlternativeImplementationDemo/bin/Debug/netcoreapp3.1/AdapterPatternAlternativeImplementationDemo.dll -------------------------------------------------------------------------------- /Ch-08/AdapterPatternAlternativeImplementationDemo/bin/Debug/netcoreapp3.1/AdapterPatternAlternativeImplementationDemo.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-08/AdapterPatternAlternativeImplementationDemo/bin/Debug/netcoreapp3.1/AdapterPatternAlternativeImplementationDemo.exe -------------------------------------------------------------------------------- /Ch-08/AdapterPatternAlternativeImplementationDemo/bin/Debug/netcoreapp3.1/AdapterPatternAlternativeImplementationDemo.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-08/AdapterPatternAlternativeImplementationDemo/bin/Debug/netcoreapp3.1/AdapterPatternAlternativeImplementationDemo.pdb -------------------------------------------------------------------------------- /Ch-08/AdapterPatternAlternativeImplementationDemo/bin/Debug/netcoreapp3.1/AdapterPatternAlternativeImplementationDemo.runtimeconfig.dev.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "additionalProbingPaths": [ 4 | "C:\\Users\\Vaskaran Sarcar\\.dotnet\\store\\|arch|\\|tfm|", 5 | "C:\\Users\\Vaskaran Sarcar\\.nuget\\packages", 6 | "C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder" 7 | ] 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-08/AdapterPatternAlternativeImplementationDemo/bin/Debug/netcoreapp3.1/AdapterPatternAlternativeImplementationDemo.runtimeconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "tfm": "netcoreapp3.1", 4 | "framework": { 5 | "name": "Microsoft.NETCore.App", 6 | "version": "3.1.0" 7 | } 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-08/AdapterPatternAlternativeImplementationDemo/obj/AdapterPatternAlternativeImplementationDemo.csproj.nuget.cache: -------------------------------------------------------------------------------- 1 | { 2 | "version": 1, 3 | "dgSpecHash": "2ZmSr81d1i4GWxTpzPbM02t/tiXWbdKrBkkwsHy7gchVmHXicH5DuqKWfaAiRxaZ4kqa6Df9gmWSGx87e2z7tA==", 4 | "success": true 5 | } -------------------------------------------------------------------------------- /Ch-08/AdapterPatternAlternativeImplementationDemo/obj/AdapterPatternAlternativeImplementationDemo.csproj.nuget.g.targets: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(MSBuildAllProjects);$(MSBuildThisFileFullPath) 5 | 6 | -------------------------------------------------------------------------------- /Ch-08/AdapterPatternAlternativeImplementationDemo/obj/Debug/netcoreapp3.1/AdapterPatternAlternativeImplementationDemo.AssemblyInfoInputs.cache: -------------------------------------------------------------------------------- 1 | 1c9f886a35aa329dad4abe11fe71a53c9fbe2efe 2 | -------------------------------------------------------------------------------- /Ch-08/AdapterPatternAlternativeImplementationDemo/obj/Debug/netcoreapp3.1/AdapterPatternAlternativeImplementationDemo.assets.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-08/AdapterPatternAlternativeImplementationDemo/obj/Debug/netcoreapp3.1/AdapterPatternAlternativeImplementationDemo.assets.cache -------------------------------------------------------------------------------- /Ch-08/AdapterPatternAlternativeImplementationDemo/obj/Debug/netcoreapp3.1/AdapterPatternAlternativeImplementationDemo.csprojAssemblyReference.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-08/AdapterPatternAlternativeImplementationDemo/obj/Debug/netcoreapp3.1/AdapterPatternAlternativeImplementationDemo.csprojAssemblyReference.cache -------------------------------------------------------------------------------- /Ch-08/AdapterPatternAlternativeImplementationDemo/obj/Debug/netcoreapp3.1/AdapterPatternAlternativeImplementationDemo.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-08/AdapterPatternAlternativeImplementationDemo/obj/Debug/netcoreapp3.1/AdapterPatternAlternativeImplementationDemo.dll -------------------------------------------------------------------------------- /Ch-08/AdapterPatternAlternativeImplementationDemo/obj/Debug/netcoreapp3.1/AdapterPatternAlternativeImplementationDemo.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-08/AdapterPatternAlternativeImplementationDemo/obj/Debug/netcoreapp3.1/AdapterPatternAlternativeImplementationDemo.exe -------------------------------------------------------------------------------- /Ch-08/AdapterPatternAlternativeImplementationDemo/obj/Debug/netcoreapp3.1/AdapterPatternAlternativeImplementationDemo.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-08/AdapterPatternAlternativeImplementationDemo/obj/Debug/netcoreapp3.1/AdapterPatternAlternativeImplementationDemo.pdb -------------------------------------------------------------------------------- /Ch-08/AdapterPatternDemonstration/AdapterPatternDemonstration.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-08/AdapterPatternDemonstration/bin/Debug/netcoreapp3.1/AdapterPatternDemonstration.deps.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeTarget": { 3 | "name": ".NETCoreApp,Version=v3.1", 4 | "signature": "" 5 | }, 6 | "compilationOptions": {}, 7 | "targets": { 8 | ".NETCoreApp,Version=v3.1": { 9 | "AdapterPatternDemonstration/1.0.0": { 10 | "runtime": { 11 | "AdapterPatternDemonstration.dll": {} 12 | } 13 | } 14 | } 15 | }, 16 | "libraries": { 17 | "AdapterPatternDemonstration/1.0.0": { 18 | "type": "project", 19 | "serviceable": false, 20 | "sha512": "" 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /Ch-08/AdapterPatternDemonstration/bin/Debug/netcoreapp3.1/AdapterPatternDemonstration.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-08/AdapterPatternDemonstration/bin/Debug/netcoreapp3.1/AdapterPatternDemonstration.dll -------------------------------------------------------------------------------- /Ch-08/AdapterPatternDemonstration/bin/Debug/netcoreapp3.1/AdapterPatternDemonstration.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-08/AdapterPatternDemonstration/bin/Debug/netcoreapp3.1/AdapterPatternDemonstration.exe -------------------------------------------------------------------------------- /Ch-08/AdapterPatternDemonstration/bin/Debug/netcoreapp3.1/AdapterPatternDemonstration.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-08/AdapterPatternDemonstration/bin/Debug/netcoreapp3.1/AdapterPatternDemonstration.pdb -------------------------------------------------------------------------------- /Ch-08/AdapterPatternDemonstration/bin/Debug/netcoreapp3.1/AdapterPatternDemonstration.runtimeconfig.dev.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "additionalProbingPaths": [ 4 | "C:\\Users\\Vaskaran Sarcar\\.dotnet\\store\\|arch|\\|tfm|", 5 | "C:\\Users\\Vaskaran Sarcar\\.nuget\\packages", 6 | "C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder" 7 | ] 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-08/AdapterPatternDemonstration/bin/Debug/netcoreapp3.1/AdapterPatternDemonstration.runtimeconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "tfm": "netcoreapp3.1", 4 | "framework": { 5 | "name": "Microsoft.NETCore.App", 6 | "version": "3.1.0" 7 | } 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-08/AdapterPatternDemonstration/obj/AdapterPatternDemonstration.csproj.nuget.cache: -------------------------------------------------------------------------------- 1 | { 2 | "version": 1, 3 | "dgSpecHash": "stOY1AERBdHv4qSS2F4CgJEn/U5vdbsXwjAJ0YqXPBCSawMylID7VFhH0pCEsAMrJplkgTvlJg1RpCwJUc5OHQ==", 4 | "success": true 5 | } -------------------------------------------------------------------------------- /Ch-08/AdapterPatternDemonstration/obj/AdapterPatternDemonstration.csproj.nuget.g.targets: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(MSBuildAllProjects);$(MSBuildThisFileFullPath) 5 | 6 | -------------------------------------------------------------------------------- /Ch-08/AdapterPatternDemonstration/obj/Debug/netcoreapp3.1/AdapterPatternDemonstration.AssemblyInfoInputs.cache: -------------------------------------------------------------------------------- 1 | b7ee8299c8a1af8114edc57afe76206310ecadcc 2 | -------------------------------------------------------------------------------- /Ch-08/AdapterPatternDemonstration/obj/Debug/netcoreapp3.1/AdapterPatternDemonstration.assets.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-08/AdapterPatternDemonstration/obj/Debug/netcoreapp3.1/AdapterPatternDemonstration.assets.cache -------------------------------------------------------------------------------- /Ch-08/AdapterPatternDemonstration/obj/Debug/netcoreapp3.1/AdapterPatternDemonstration.csprojAssemblyReference.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-08/AdapterPatternDemonstration/obj/Debug/netcoreapp3.1/AdapterPatternDemonstration.csprojAssemblyReference.cache -------------------------------------------------------------------------------- /Ch-08/AdapterPatternDemonstration/obj/Debug/netcoreapp3.1/AdapterPatternDemonstration.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-08/AdapterPatternDemonstration/obj/Debug/netcoreapp3.1/AdapterPatternDemonstration.dll -------------------------------------------------------------------------------- /Ch-08/AdapterPatternDemonstration/obj/Debug/netcoreapp3.1/AdapterPatternDemonstration.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-08/AdapterPatternDemonstration/obj/Debug/netcoreapp3.1/AdapterPatternDemonstration.exe -------------------------------------------------------------------------------- /Ch-08/AdapterPatternDemonstration/obj/Debug/netcoreapp3.1/AdapterPatternDemonstration.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-08/AdapterPatternDemonstration/obj/Debug/netcoreapp3.1/AdapterPatternDemonstration.pdb -------------------------------------------------------------------------------- /Ch-09/FacadePattern/FacadePattern.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-09/FacadePattern/RobotFacade.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace FacadePattern.RobotParts 4 | { 5 | class RobotFacade 6 | { 7 | RobotBody robotBody; 8 | RobotColor robotColor; 9 | public RobotFacade(string robotType, string color = "steel") 10 | { 11 | robotBody = new RobotBody(robotType); 12 | robotColor = new RobotColor(color); 13 | } 14 | public void ConstructRobot() 15 | { 16 | Console.WriteLine("Robot creation through facade starts..."); 17 | robotBody.MakeRobotBody(); 18 | robotColor.SetColor(); 19 | Console.WriteLine(); 20 | } 21 | 22 | public void DestroyRobot() 23 | { 24 | Console.WriteLine("Making an attempt to destroy one robot using the facade now."); 25 | robotColor.RemoveColor(); 26 | robotBody.DestroyRobotBody(); 27 | Console.WriteLine(); 28 | } 29 | } 30 | } 31 | 32 | 33 | -------------------------------------------------------------------------------- /Ch-09/FacadePattern/RobotParts/RobotColor.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace FacadePattern.RobotParts 4 | { 5 | public class RobotColor 6 | { 7 | string color; 8 | public RobotColor(string color) 9 | { 10 | this.color = color; 11 | } 12 | public void SetColor() 13 | { 14 | if (color == "steel") 15 | { 16 | Console.WriteLine($"The default color {color} is set for the robot."); 17 | } 18 | else 19 | { 20 | Console.WriteLine($"Painting the robot with your favourite {color} color."); 21 | } 22 | } 23 | public void RemoveColor() 24 | { 25 | Console.WriteLine("Attempting to remove the colors from the robot."); 26 | } 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /Ch-09/FacadePattern/bin/Debug/netcoreapp3.1/FacadePattern.deps.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeTarget": { 3 | "name": ".NETCoreApp,Version=v3.1", 4 | "signature": "" 5 | }, 6 | "compilationOptions": {}, 7 | "targets": { 8 | ".NETCoreApp,Version=v3.1": { 9 | "FacadePattern/1.0.0": { 10 | "runtime": { 11 | "FacadePattern.dll": {} 12 | } 13 | } 14 | } 15 | }, 16 | "libraries": { 17 | "FacadePattern/1.0.0": { 18 | "type": "project", 19 | "serviceable": false, 20 | "sha512": "" 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /Ch-09/FacadePattern/bin/Debug/netcoreapp3.1/FacadePattern.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-09/FacadePattern/bin/Debug/netcoreapp3.1/FacadePattern.dll -------------------------------------------------------------------------------- /Ch-09/FacadePattern/bin/Debug/netcoreapp3.1/FacadePattern.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-09/FacadePattern/bin/Debug/netcoreapp3.1/FacadePattern.exe -------------------------------------------------------------------------------- /Ch-09/FacadePattern/bin/Debug/netcoreapp3.1/FacadePattern.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-09/FacadePattern/bin/Debug/netcoreapp3.1/FacadePattern.pdb -------------------------------------------------------------------------------- /Ch-09/FacadePattern/bin/Debug/netcoreapp3.1/FacadePattern.runtimeconfig.dev.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "additionalProbingPaths": [ 4 | "C:\\Users\\Vaskaran Sarcar\\.dotnet\\store\\|arch|\\|tfm|", 5 | "C:\\Users\\Vaskaran Sarcar\\.nuget\\packages", 6 | "C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder" 7 | ] 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-09/FacadePattern/bin/Debug/netcoreapp3.1/FacadePattern.runtimeconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "runtimeOptions": { 3 | "tfm": "netcoreapp3.1", 4 | "framework": { 5 | "name": "Microsoft.NETCore.App", 6 | "version": "3.1.0" 7 | } 8 | } 9 | } -------------------------------------------------------------------------------- /Ch-09/FacadePattern/obj/Debug/netcoreapp3.1/FacadePattern.AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // This code was generated by a tool. 4 | // Runtime Version:4.0.30319.42000 5 | // 6 | // Changes to this file may cause incorrect behavior and will be lost if 7 | // the code is regenerated. 8 | // 9 | //------------------------------------------------------------------------------ 10 | 11 | using System; 12 | using System.Reflection; 13 | 14 | [assembly: System.Reflection.AssemblyCompanyAttribute("FacadePattern")] 15 | [assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] 16 | [assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] 17 | [assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")] 18 | [assembly: System.Reflection.AssemblyProductAttribute("FacadePattern")] 19 | [assembly: System.Reflection.AssemblyTitleAttribute("FacadePattern")] 20 | [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] 21 | 22 | // Generated by the MSBuild WriteCodeFragment class. 23 | 24 | -------------------------------------------------------------------------------- /Ch-09/FacadePattern/obj/Debug/netcoreapp3.1/FacadePattern.AssemblyInfoInputs.cache: -------------------------------------------------------------------------------- 1 | 97854633fab28c5e122e430806c77d4afdb76c5a 2 | -------------------------------------------------------------------------------- /Ch-09/FacadePattern/obj/Debug/netcoreapp3.1/FacadePattern.assets.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-09/FacadePattern/obj/Debug/netcoreapp3.1/FacadePattern.assets.cache -------------------------------------------------------------------------------- /Ch-09/FacadePattern/obj/Debug/netcoreapp3.1/FacadePattern.csprojAssemblyReference.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-09/FacadePattern/obj/Debug/netcoreapp3.1/FacadePattern.csprojAssemblyReference.cache -------------------------------------------------------------------------------- /Ch-09/FacadePattern/obj/Debug/netcoreapp3.1/FacadePattern.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-09/FacadePattern/obj/Debug/netcoreapp3.1/FacadePattern.dll -------------------------------------------------------------------------------- /Ch-09/FacadePattern/obj/Debug/netcoreapp3.1/FacadePattern.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-09/FacadePattern/obj/Debug/netcoreapp3.1/FacadePattern.exe -------------------------------------------------------------------------------- /Ch-09/FacadePattern/obj/Debug/netcoreapp3.1/FacadePattern.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-csharp-2e/3abc9ae9b7e0b29116db4807bcd54bb2ebfd4571/Ch-09/FacadePattern/obj/Debug/netcoreapp3.1/FacadePattern.pdb -------------------------------------------------------------------------------- /Ch-09/FacadePattern/obj/FacadePattern.csproj.nuget.cache: -------------------------------------------------------------------------------- 1 | { 2 | "version": 1, 3 | "dgSpecHash": "J2xCLfDIPXM4ORpcWhsOHKeE0YUb2WgoU3hJc7c6GWtNR7DqKGXNw5STXJKxyNS6z7QX2h0LYhhWpfN+cbK2HA==", 4 | "success": true 5 | } -------------------------------------------------------------------------------- /Ch-09/FacadePattern/obj/FacadePattern.csproj.nuget.g.targets: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(MSBuildAllProjects);$(MSBuildThisFileFullPath) 5 | 6 | -------------------------------------------------------------------------------- /Ch-10/FlyweightFactoryAsSingleton/FlyweightFactoryAsSingleton.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-10/FlyweightPattern/FlyweightPattern.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-11/CompositePattern/CompositePattern.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-12/BridgePattern/BridgePattern.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-12/BridgePatternDemo2/BridgePatternDemo2.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-13/VisiotorPattern/VisiotorPattern.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-13/VisitorPatternDemo2/VisitorPatternDemo2.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-13/VisitorWithCompositePattern/VisitorWithCompositePattern.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-14/ObserverPattern/ObserverPattern.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-15/StrategyPattern/StrategyPattern.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-16/TemplateMethodPattern/TemplateMethodPattern.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-16/TemplateMethodPatternDemo2/TemplateMethodPatternDemo2.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-17/CommandPattern/CommandPattern.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-17/CommandPatternDemonstration2/CommandPatternDemonstration2.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-18/IteratorPattern/IteratorPattern.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-18/SimpleIterator/SimpleIterator.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-19/MementoPattern/MementoPattern.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-19/MementoPatternDemo2/MementoPatternDemo2.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-20/StatePattern/StatePattern.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-21/MediatorPatternModifiedDemo/MediatorPatternModifiedDemo.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-21/MediatorPatttern/MediatorPatttern.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-22/ChainOfResponsibilityPattern/ChainOfResponsibilityPattern.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-23/InterpreterPattern/InterpreterPattern.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-23/InterpreterPatternDemo2/InterpreterPatternDemo2.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-24/SimpleFactory/Dog.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | namespace SimpleFactory 3 | { 4 | public class Dog : IAnimal 5 | { 6 | public void AboutMe() 7 | { 8 | Console.WriteLine("The dog says: Bow-Wow.I prefer barking."); 9 | } 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /Ch-24/SimpleFactory/IAnimal.cs: -------------------------------------------------------------------------------- 1 | namespace SimpleFactory 2 | { 3 | public interface IAnimal 4 | { 5 | void AboutMe(); 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /Ch-24/SimpleFactory/Program.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace SimpleFactory 4 | { 5 | /* 6 | * A client is interested to get an animal 7 | * who can tell something about it. 8 | */ 9 | class Client 10 | { 11 | static void Main(string[] args) 12 | { 13 | Console.WriteLine("*** Simple Factory Pattern Demo.***\n"); 14 | IAnimal preferredType = null; 15 | SimpleFactory simpleFactory = new SimpleFactory(); 16 | #region The code region that can vary based on users preference. 17 | /* 18 | * Since this part may vary,we're moving the 19 | * part to CreateAnimal() in SimpleFactory class. 20 | */ 21 | preferredType = simpleFactory.CreateAnimal(); 22 | #endregion 23 | 24 | #region The codes that do not change frequently. 25 | preferredType.AboutMe(); 26 | #endregion 27 | 28 | Console.ReadKey(); 29 | } 30 | } 31 | } 32 | 33 | -------------------------------------------------------------------------------- /Ch-24/SimpleFactory/SimpleFactory.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-24/SimpleFactory/Tiger.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace SimpleFactory 4 | { 5 | public class Tiger : IAnimal 6 | { 7 | public void AboutMe() 8 | { 9 | Console.WriteLine("The tiger says: Halum.I prefer hunting."); 10 | } 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /Ch-25/ProgramWithOnePotentialBug/ProgramWithOnePotentialBug.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-26/MVCPattern/Controller/Controller.cs: -------------------------------------------------------------------------------- 1 | using MVCPattern.Model; 2 | 3 | namespace MVCPattern.Controller 4 | { 5 | interface IController 6 | { 7 | void DisplayEnrolledEmployees(); 8 | void AddEmployee(Employee employee); 9 | void RemoveEmployee(string employeeId); 10 | } 11 | 12 | } 13 | -------------------------------------------------------------------------------- /Ch-26/MVCPattern/MVCPattern.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-26/MVCPattern/Model/Employee.cs: -------------------------------------------------------------------------------- 1 | namespace MVCPattern.Model 2 | { 3 | //The key "data" in this application 4 | public class Employee 5 | { 6 | private string empName; 7 | private string empId; 8 | public string GetEmpName() 9 | { 10 | return empName; 11 | } 12 | public string GetEmpId() 13 | { 14 | return empId; 15 | } 16 | public Employee(string empName, string empId) 17 | { 18 | this.empName = empName; 19 | this.empId = empId; 20 | } 21 | 22 | public override string ToString() 23 | { 24 | return $"{empName} is enrolled with id : {empId}."; 25 | } 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /Ch-26/MVCPattern/Model/Model.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | 3 | namespace MVCPattern.Model 4 | { 5 | public interface IModel 6 | { 7 | 8 | List GetEnrolledEmployeeDetailsFromModel(); 9 | void AddEmployeeToModel(Employee employeee); 10 | void RemoveEmployeeFromModel(string employeeId); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /Ch-26/MVCPattern/View/ConsoleView.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using MVCPattern.Model; 4 | 5 | namespace MVCPattern.View 6 | { 7 | 8 | public class ConsoleView : IView 9 | { 10 | 11 | public void ShowEnrolledEmployees(List enrolledEmployees) 12 | { 13 | Console.WriteLine("\n ***This is a console view of currently enrolled employees.*** "); 14 | foreach (Employee emp in enrolledEmployees) 15 | { 16 | Console.WriteLine(emp); 17 | } 18 | Console.WriteLine("---------------------"); 19 | } 20 | } 21 | 22 | } 23 | -------------------------------------------------------------------------------- /Ch-26/MVCPattern/View/MobileDeviceView.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using MVCPattern.Model; 4 | namespace MVCPattern.View 5 | { 6 | public class MobileDeviceView:IView 7 | { 8 | 9 | public void ShowEnrolledEmployees(List enrolledEmployees) 10 | { 11 | Console.WriteLine("\n +++This is a mobile device view of currently enrolled employees.+++ "); 12 | foreach (Employee emp in enrolledEmployees) 13 | { 14 | Console.WriteLine(emp.GetEmpId() + "\t" + emp.GetEmpName()); 15 | } 16 | Console.WriteLine("+++++++++++++++++++++"); 17 | } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /Ch-26/MVCPattern/View/View.cs: -------------------------------------------------------------------------------- 1 | using MVCPattern.Model; 2 | using System.Collections.Generic; 3 | 4 | 5 | namespace MVCPattern.View 6 | { 7 | public interface IView 8 | { 9 | void ShowEnrolledEmployees(List enrolledEmployees); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /Ch-27/AsyncAwaitAlternateDemonstration/AsyncAwaitAlternateDemonstration.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-27/DifferentWaysToCreateTask/DifferentWaysToCreateTask.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-27/PollingDemoInDotNetFramework/App.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Ch-27/SynchronousProgrammingExample/SynchronousProgrammingExample.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-27/TAPDemonstration2/TAPDemonstration2.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-27/UsingAsyncAwait/UsingAsyncAwait.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-27/UsingAsynchronousCallback/App.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Ch-27/UsingTAP/UsingTAP.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-27/UsingThreadClass/UsingThreadClass.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-27/UsingThreadPool/UsingThreadPool.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-27/UsingThreadPoolWithLambdaExpression/UsingThreadPoolWithLambdaExpression.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Ch-27/UsingWaitHandleInDotNetFramework/App.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Ch-27/UsingWebClentWithWinForm/App.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Ch-27/UsingWebClentWithWinForm/Program.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Threading.Tasks; 5 | using System.Windows.Forms; 6 | 7 | namespace UsingWebClentWithWinForm 8 | { 9 | static class Program 10 | { 11 | /// 12 | /// The main entry point for the application. 13 | /// 14 | [STAThread] 15 | static void Main() 16 | { 17 | Application.EnableVisualStyles(); 18 | Application.SetCompatibleTextRenderingDefault(false); 19 | Application.Run(new Form1()); 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Ch-27/UsingWebClentWithWinForm/Properties/Settings.settings: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Ch-27/UsingWebClient/UsingWebClient.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | netcoreapp3.1 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Contributing.md: -------------------------------------------------------------------------------- 1 | # Contributing to Apress Source Code 2 | 3 | Copyright for Apress source code belongs to the author(s). However, under fair use you are encouraged to fork and contribute minor corrections and updates for the benefit of the author(s) and other readers. 4 | 5 | ## How to Contribute 6 | 7 | 1. Make sure you have a GitHub account. 8 | 2. Fork the repository for the relevant book. 9 | 3. Create a new branch on which to make your change, e.g. 10 | `git checkout -b my_code_contribution` 11 | 4. Commit your change. Include a commit message describing the correction. Please note that if your commit message is not clear, the correction will not be accepted. 12 | 5. Submit a pull request. 13 | 14 | Thank you for your contribution! -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Apress Source Code 2 | 3 | This repository accompanies [*Design Patterns in C#, 2nd Edition*](https://www.apress.com/9781484260616) by Vaskaran Sarcar (Apress, 2020). 4 | 5 | [comment]: #cover 6 | ![Cover image](9781484260616.jpg) 7 | 8 | Download the files as a zip using the green button, or clone the repository to your machine using Git. 9 | 10 | ## Releases 11 | 12 | Release v1.0 corresponds to the code in the published book, without corrections or updates. 13 | 14 | ## Contributions 15 | 16 | See the file Contributing.md for more information on how you can contribute to this repository. -------------------------------------------------------------------------------- /errata.md: -------------------------------------------------------------------------------- 1 | # Errata for *Design Patterns in C#, 2nd Edition* 2 | 3 | On **page xx** [Summary of error]: 4 | 5 | Details of error here. Highlight key pieces in **bold**. 6 | 7 | *** 8 | 9 | On **page xx** [Summary of error]: 10 | 11 | Details of error here. Highlight key pieces in **bold**. 12 | 13 | *** --------------------------------------------------------------------------------