├── .gitattributes ├── 9781484261798.jpg ├── Behavioral ├── ChainOfResponsibility │ ├── BrokerChain.cs │ ├── Exercise.cs │ └── MethodChain.cs ├── Command │ ├── Command.cs │ ├── CompositeCommand.cs │ ├── Exercise.cs │ ├── FunctionalCommand.cs │ ├── GeneratedCommands.cs │ └── GeneratedCommands.tt ├── Interpreter │ ├── Exercise.cs │ └── Handmade.cs ├── Iterator │ ├── ArrayBackedProperties.cs │ ├── Exercise.cs │ └── TreeTraversal.cs ├── Mediator │ ├── ChatRoom.cs │ ├── Exercise.cs │ ├── MediatorWithEvents.cs │ ├── MediatorWithRx.cs │ └── MediatrDemo │ │ ├── App.config │ │ ├── MediatrDemo.csproj │ │ ├── Program.cs │ │ ├── Properties │ │ └── AssemblyInfo.cs │ │ ├── bin │ │ └── Debug │ │ │ ├── Autofac.dll │ │ │ ├── Autofac.xml │ │ │ ├── JetBrains.Annotations.dll │ │ │ ├── JetBrains.Annotations.xml │ │ │ ├── MediatR.dll │ │ │ ├── MediatrDemo.exe │ │ │ ├── MediatrDemo.exe.config │ │ │ └── MediatrDemo.pdb │ │ ├── obj │ │ └── Debug │ │ │ ├── DesignTimeResolveAssemblyReferencesInput.cache │ │ │ ├── MediatrDemo.csproj.CopyComplete │ │ │ ├── MediatrDemo.csproj.CoreCompileInputs.cache │ │ │ ├── MediatrDemo.csproj.FileListAbsolute.txt │ │ │ ├── MediatrDemo.csprojAssemblyReference.cache │ │ │ ├── MediatrDemo.exe │ │ │ ├── MediatrDemo.pdb │ │ │ ├── TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs │ │ │ ├── TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs │ │ │ └── TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs │ │ └── packages.config ├── Memento │ ├── Exercise.cs │ ├── Memento.cs │ └── UndoRedo.cs ├── NullObject │ ├── DynamicNullObject.cs │ ├── Exercise.cs │ └── NullObject.cs ├── Observer │ ├── BidirectionalObserver.cs │ ├── ContainerWireup.cs │ ├── Events.cs │ ├── Exercise.cs │ ├── ObserverInterfaces.cs │ ├── PropertyDependencies.cs │ └── WeakEventPattern.cs ├── State │ ├── Classic.cs │ ├── Exercise.cs │ ├── Handmade.cs │ ├── Stateless.cs │ ├── StatelessLightSwitch.cs │ ├── SwitchBased.cs │ └── SwitchExpressions.cs ├── Strategy │ ├── ComparisonStrategies.cs │ ├── Dynamic.cs │ ├── Exercise.cs │ └── Static.cs ├── TemplateMethod │ ├── Exercise.cs │ ├── FunctionalTemplateMethod.cs │ └── TemplateMethod.cs └── Visitor │ ├── Acyclic.cs │ ├── Classic.cs │ ├── Dispatch.cs │ ├── Dynamic.cs │ ├── Exercise.cs │ ├── ExtensionMethods.cs │ ├── Intrusive.cs │ ├── Reflective.cs │ └── ReflectiveExtension.cs ├── Contributing.md ├── Creational ├── Builder │ ├── Builder.cs │ ├── BuilderFacets.cs │ ├── BuilderInheritance.cs │ ├── BuilderParameter.cs │ ├── Exercise.cs │ └── FunctionalBuilder.cs ├── Factories │ ├── AbstractFactory.cs │ ├── AsyncFactory.cs │ ├── Exercise.cs │ ├── Factory.cs │ └── FactoryFamilies.cs ├── Prototype │ ├── CopyConstructors.cs │ ├── CopyThroughSerialization.cs │ ├── Exercise.cs │ ├── ICloneableIsBad.cs │ └── PrototypeFactory.cs └── Singleton │ ├── AmbientContext.cs │ ├── Exercise.cs │ ├── Monostate.cs │ ├── Multiton.cs │ ├── PerThreadSingleton.cs │ ├── Singleton.cs │ ├── SingletonInDI.cs │ └── capitals.txt ├── Functional └── FunctionalDesignPatternDemos │ ├── FunctionalBuilder.fs │ ├── FunctionalDecorator.fs │ ├── FunctionalDesignPatternDemos.fsproj │ ├── FunctionalFactory.fs │ ├── FunctionalStrategy.fs │ ├── Interpreter.fs │ ├── Program.fs │ ├── TemplateMethod.fs │ ├── bin │ └── Debug │ │ └── netcoreapp2.1 │ │ ├── FunctionalDesignPatternDemos.deps.json │ │ ├── FunctionalDesignPatternDemos.dll │ │ ├── FunctionalDesignPatternDemos.pdb │ │ ├── FunctionalDesignPatternDemos.runtimeconfig.dev.json │ │ └── FunctionalDesignPatternDemos.runtimeconfig.json │ └── obj │ ├── Debug │ └── netcoreapp2.1 │ │ ├── FunctionalDesignPatternDemos.AssemblyInfo.fs │ │ ├── FunctionalDesignPatternDemos.AssemblyInfoInputs.cache │ │ ├── FunctionalDesignPatternDemos.assets.cache │ │ ├── FunctionalDesignPatternDemos.dll │ │ ├── FunctionalDesignPatternDemos.fsproj.CoreCompileInputs.cache │ │ ├── FunctionalDesignPatternDemos.fsproj.FileListAbsolute.txt │ │ ├── FunctionalDesignPatternDemos.fsprojAssemblyReference.cache │ │ └── FunctionalDesignPatternDemos.pdb │ ├── FunctionalDesignPatternDemos.fsproj.nuget.cache │ ├── FunctionalDesignPatternDemos.fsproj.nuget.dgspec.json │ ├── FunctionalDesignPatternDemos.fsproj.nuget.g.props │ ├── FunctionalDesignPatternDemos.fsproj.nuget.g.targets │ ├── project.assets.json │ ├── project.nuget.cache │ └── project.packagespec.json ├── LICENSE.txt ├── README.md ├── SOLID ├── DIP.cs ├── ISP.cs ├── LSP.cs ├── OCP.cs └── SRP.cs └── Structural ├── Adapter ├── AdapterDI.cs ├── Exercise.cs ├── GenericValueAdapter.cs ├── Lazy.cs ├── NoCaching.cs ├── PropertySurrogate.cs ├── WithCaching.cs └── str.cs ├── Bridge ├── Bridge.cs └── Exercise.cs ├── Composite ├── Exercise.cs ├── GeometricShapes.cs └── NeuralNetworks.cs ├── Decorator ├── AdapterDecorator.cs ├── CodeBuilder.cs ├── Decorator.cs ├── Exercise.cs ├── Mixins.cs └── MultipleInheritance.cs ├── Facade ├── Exercise.cs └── MagicSquare.cs ├── Flyweight ├── Exercise.cs ├── TextFormatting.cs └── Users.cs └── Proxy ├── BitFragging.cs ├── CompositeProxy.cs ├── DynamicProxy.cs ├── Exercise.cs ├── PropertyProxy.cs ├── ProtectionProxy.cs ├── ResultOfT.cs ├── SoACompositeProxy.cs ├── ValueProxy.cs ├── ViewModel.cs └── VirtualProxy.cs /.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/.gitattributes -------------------------------------------------------------------------------- /9781484261798.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/9781484261798.jpg -------------------------------------------------------------------------------- /Behavioral/ChainOfResponsibility/BrokerChain.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/ChainOfResponsibility/BrokerChain.cs -------------------------------------------------------------------------------- /Behavioral/ChainOfResponsibility/Exercise.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/ChainOfResponsibility/Exercise.cs -------------------------------------------------------------------------------- /Behavioral/ChainOfResponsibility/MethodChain.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/ChainOfResponsibility/MethodChain.cs -------------------------------------------------------------------------------- /Behavioral/Command/Command.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Command/Command.cs -------------------------------------------------------------------------------- /Behavioral/Command/CompositeCommand.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Command/CompositeCommand.cs -------------------------------------------------------------------------------- /Behavioral/Command/Exercise.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Command/Exercise.cs -------------------------------------------------------------------------------- /Behavioral/Command/FunctionalCommand.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Command/FunctionalCommand.cs -------------------------------------------------------------------------------- /Behavioral/Command/GeneratedCommands.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Command/GeneratedCommands.cs -------------------------------------------------------------------------------- /Behavioral/Command/GeneratedCommands.tt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Command/GeneratedCommands.tt -------------------------------------------------------------------------------- /Behavioral/Interpreter/Exercise.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Interpreter/Exercise.cs -------------------------------------------------------------------------------- /Behavioral/Interpreter/Handmade.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Interpreter/Handmade.cs -------------------------------------------------------------------------------- /Behavioral/Iterator/ArrayBackedProperties.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Iterator/ArrayBackedProperties.cs -------------------------------------------------------------------------------- /Behavioral/Iterator/Exercise.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Iterator/Exercise.cs -------------------------------------------------------------------------------- /Behavioral/Iterator/TreeTraversal.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Iterator/TreeTraversal.cs -------------------------------------------------------------------------------- /Behavioral/Mediator/ChatRoom.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Mediator/ChatRoom.cs -------------------------------------------------------------------------------- /Behavioral/Mediator/Exercise.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Mediator/Exercise.cs -------------------------------------------------------------------------------- /Behavioral/Mediator/MediatorWithEvents.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Mediator/MediatorWithEvents.cs -------------------------------------------------------------------------------- /Behavioral/Mediator/MediatorWithRx.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Mediator/MediatorWithRx.cs -------------------------------------------------------------------------------- /Behavioral/Mediator/MediatrDemo/App.config: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Mediator/MediatrDemo/App.config -------------------------------------------------------------------------------- /Behavioral/Mediator/MediatrDemo/MediatrDemo.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Mediator/MediatrDemo/MediatrDemo.csproj -------------------------------------------------------------------------------- /Behavioral/Mediator/MediatrDemo/Program.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Mediator/MediatrDemo/Program.cs -------------------------------------------------------------------------------- /Behavioral/Mediator/MediatrDemo/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Mediator/MediatrDemo/Properties/AssemblyInfo.cs -------------------------------------------------------------------------------- /Behavioral/Mediator/MediatrDemo/bin/Debug/Autofac.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Mediator/MediatrDemo/bin/Debug/Autofac.dll -------------------------------------------------------------------------------- /Behavioral/Mediator/MediatrDemo/bin/Debug/Autofac.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Mediator/MediatrDemo/bin/Debug/Autofac.xml -------------------------------------------------------------------------------- /Behavioral/Mediator/MediatrDemo/bin/Debug/JetBrains.Annotations.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Mediator/MediatrDemo/bin/Debug/JetBrains.Annotations.dll -------------------------------------------------------------------------------- /Behavioral/Mediator/MediatrDemo/bin/Debug/JetBrains.Annotations.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Mediator/MediatrDemo/bin/Debug/JetBrains.Annotations.xml -------------------------------------------------------------------------------- /Behavioral/Mediator/MediatrDemo/bin/Debug/MediatR.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Mediator/MediatrDemo/bin/Debug/MediatR.dll -------------------------------------------------------------------------------- /Behavioral/Mediator/MediatrDemo/bin/Debug/MediatrDemo.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Mediator/MediatrDemo/bin/Debug/MediatrDemo.exe -------------------------------------------------------------------------------- /Behavioral/Mediator/MediatrDemo/bin/Debug/MediatrDemo.exe.config: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Mediator/MediatrDemo/bin/Debug/MediatrDemo.exe.config -------------------------------------------------------------------------------- /Behavioral/Mediator/MediatrDemo/bin/Debug/MediatrDemo.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Mediator/MediatrDemo/bin/Debug/MediatrDemo.pdb -------------------------------------------------------------------------------- /Behavioral/Mediator/MediatrDemo/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Mediator/MediatrDemo/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache -------------------------------------------------------------------------------- /Behavioral/Mediator/MediatrDemo/obj/Debug/MediatrDemo.csproj.CopyComplete: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Behavioral/Mediator/MediatrDemo/obj/Debug/MediatrDemo.csproj.CoreCompileInputs.cache: -------------------------------------------------------------------------------- 1 | f034b28f380bcb5179a7aa6f484bc5c5a76af046 2 | -------------------------------------------------------------------------------- /Behavioral/Mediator/MediatrDemo/obj/Debug/MediatrDemo.csproj.FileListAbsolute.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Mediator/MediatrDemo/obj/Debug/MediatrDemo.csproj.FileListAbsolute.txt -------------------------------------------------------------------------------- /Behavioral/Mediator/MediatrDemo/obj/Debug/MediatrDemo.csprojAssemblyReference.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Mediator/MediatrDemo/obj/Debug/MediatrDemo.csprojAssemblyReference.cache -------------------------------------------------------------------------------- /Behavioral/Mediator/MediatrDemo/obj/Debug/MediatrDemo.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Mediator/MediatrDemo/obj/Debug/MediatrDemo.exe -------------------------------------------------------------------------------- /Behavioral/Mediator/MediatrDemo/obj/Debug/MediatrDemo.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Mediator/MediatrDemo/obj/Debug/MediatrDemo.pdb -------------------------------------------------------------------------------- /Behavioral/Mediator/MediatrDemo/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Behavioral/Mediator/MediatrDemo/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Behavioral/Mediator/MediatrDemo/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Behavioral/Mediator/MediatrDemo/packages.config: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Mediator/MediatrDemo/packages.config -------------------------------------------------------------------------------- /Behavioral/Memento/Exercise.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Memento/Exercise.cs -------------------------------------------------------------------------------- /Behavioral/Memento/Memento.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Memento/Memento.cs -------------------------------------------------------------------------------- /Behavioral/Memento/UndoRedo.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Memento/UndoRedo.cs -------------------------------------------------------------------------------- /Behavioral/NullObject/DynamicNullObject.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/NullObject/DynamicNullObject.cs -------------------------------------------------------------------------------- /Behavioral/NullObject/Exercise.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/NullObject/Exercise.cs -------------------------------------------------------------------------------- /Behavioral/NullObject/NullObject.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/NullObject/NullObject.cs -------------------------------------------------------------------------------- /Behavioral/Observer/BidirectionalObserver.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Observer/BidirectionalObserver.cs -------------------------------------------------------------------------------- /Behavioral/Observer/ContainerWireup.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Observer/ContainerWireup.cs -------------------------------------------------------------------------------- /Behavioral/Observer/Events.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Observer/Events.cs -------------------------------------------------------------------------------- /Behavioral/Observer/Exercise.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Observer/Exercise.cs -------------------------------------------------------------------------------- /Behavioral/Observer/ObserverInterfaces.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Observer/ObserverInterfaces.cs -------------------------------------------------------------------------------- /Behavioral/Observer/PropertyDependencies.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Observer/PropertyDependencies.cs -------------------------------------------------------------------------------- /Behavioral/Observer/WeakEventPattern.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Observer/WeakEventPattern.cs -------------------------------------------------------------------------------- /Behavioral/State/Classic.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/State/Classic.cs -------------------------------------------------------------------------------- /Behavioral/State/Exercise.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/State/Exercise.cs -------------------------------------------------------------------------------- /Behavioral/State/Handmade.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/State/Handmade.cs -------------------------------------------------------------------------------- /Behavioral/State/Stateless.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/State/Stateless.cs -------------------------------------------------------------------------------- /Behavioral/State/StatelessLightSwitch.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/State/StatelessLightSwitch.cs -------------------------------------------------------------------------------- /Behavioral/State/SwitchBased.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/State/SwitchBased.cs -------------------------------------------------------------------------------- /Behavioral/State/SwitchExpressions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/State/SwitchExpressions.cs -------------------------------------------------------------------------------- /Behavioral/Strategy/ComparisonStrategies.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Strategy/ComparisonStrategies.cs -------------------------------------------------------------------------------- /Behavioral/Strategy/Dynamic.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Strategy/Dynamic.cs -------------------------------------------------------------------------------- /Behavioral/Strategy/Exercise.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Strategy/Exercise.cs -------------------------------------------------------------------------------- /Behavioral/Strategy/Static.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Strategy/Static.cs -------------------------------------------------------------------------------- /Behavioral/TemplateMethod/Exercise.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/TemplateMethod/Exercise.cs -------------------------------------------------------------------------------- /Behavioral/TemplateMethod/FunctionalTemplateMethod.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/TemplateMethod/FunctionalTemplateMethod.cs -------------------------------------------------------------------------------- /Behavioral/TemplateMethod/TemplateMethod.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/TemplateMethod/TemplateMethod.cs -------------------------------------------------------------------------------- /Behavioral/Visitor/Acyclic.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Visitor/Acyclic.cs -------------------------------------------------------------------------------- /Behavioral/Visitor/Classic.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Visitor/Classic.cs -------------------------------------------------------------------------------- /Behavioral/Visitor/Dispatch.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Visitor/Dispatch.cs -------------------------------------------------------------------------------- /Behavioral/Visitor/Dynamic.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Visitor/Dynamic.cs -------------------------------------------------------------------------------- /Behavioral/Visitor/Exercise.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Visitor/Exercise.cs -------------------------------------------------------------------------------- /Behavioral/Visitor/ExtensionMethods.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Visitor/ExtensionMethods.cs -------------------------------------------------------------------------------- /Behavioral/Visitor/Intrusive.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Visitor/Intrusive.cs -------------------------------------------------------------------------------- /Behavioral/Visitor/Reflective.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Visitor/Reflective.cs -------------------------------------------------------------------------------- /Behavioral/Visitor/ReflectiveExtension.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Behavioral/Visitor/ReflectiveExtension.cs -------------------------------------------------------------------------------- /Contributing.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Contributing.md -------------------------------------------------------------------------------- /Creational/Builder/Builder.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Creational/Builder/Builder.cs -------------------------------------------------------------------------------- /Creational/Builder/BuilderFacets.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Creational/Builder/BuilderFacets.cs -------------------------------------------------------------------------------- /Creational/Builder/BuilderInheritance.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Creational/Builder/BuilderInheritance.cs -------------------------------------------------------------------------------- /Creational/Builder/BuilderParameter.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Creational/Builder/BuilderParameter.cs -------------------------------------------------------------------------------- /Creational/Builder/Exercise.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Creational/Builder/Exercise.cs -------------------------------------------------------------------------------- /Creational/Builder/FunctionalBuilder.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Creational/Builder/FunctionalBuilder.cs -------------------------------------------------------------------------------- /Creational/Factories/AbstractFactory.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Creational/Factories/AbstractFactory.cs -------------------------------------------------------------------------------- /Creational/Factories/AsyncFactory.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Creational/Factories/AsyncFactory.cs -------------------------------------------------------------------------------- /Creational/Factories/Exercise.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Creational/Factories/Exercise.cs -------------------------------------------------------------------------------- /Creational/Factories/Factory.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Creational/Factories/Factory.cs -------------------------------------------------------------------------------- /Creational/Factories/FactoryFamilies.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Creational/Factories/FactoryFamilies.cs -------------------------------------------------------------------------------- /Creational/Prototype/CopyConstructors.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Creational/Prototype/CopyConstructors.cs -------------------------------------------------------------------------------- /Creational/Prototype/CopyThroughSerialization.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Creational/Prototype/CopyThroughSerialization.cs -------------------------------------------------------------------------------- /Creational/Prototype/Exercise.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Creational/Prototype/Exercise.cs -------------------------------------------------------------------------------- /Creational/Prototype/ICloneableIsBad.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Creational/Prototype/ICloneableIsBad.cs -------------------------------------------------------------------------------- /Creational/Prototype/PrototypeFactory.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Creational/Prototype/PrototypeFactory.cs -------------------------------------------------------------------------------- /Creational/Singleton/AmbientContext.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Creational/Singleton/AmbientContext.cs -------------------------------------------------------------------------------- /Creational/Singleton/Exercise.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Creational/Singleton/Exercise.cs -------------------------------------------------------------------------------- /Creational/Singleton/Monostate.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Creational/Singleton/Monostate.cs -------------------------------------------------------------------------------- /Creational/Singleton/Multiton.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Creational/Singleton/Multiton.cs -------------------------------------------------------------------------------- /Creational/Singleton/PerThreadSingleton.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Creational/Singleton/PerThreadSingleton.cs -------------------------------------------------------------------------------- /Creational/Singleton/Singleton.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Creational/Singleton/Singleton.cs -------------------------------------------------------------------------------- /Creational/Singleton/SingletonInDI.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Creational/Singleton/SingletonInDI.cs -------------------------------------------------------------------------------- /Creational/Singleton/capitals.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Creational/Singleton/capitals.txt -------------------------------------------------------------------------------- /Functional/FunctionalDesignPatternDemos/FunctionalBuilder.fs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Functional/FunctionalDesignPatternDemos/FunctionalBuilder.fs -------------------------------------------------------------------------------- /Functional/FunctionalDesignPatternDemos/FunctionalDecorator.fs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Functional/FunctionalDesignPatternDemos/FunctionalDecorator.fs -------------------------------------------------------------------------------- /Functional/FunctionalDesignPatternDemos/FunctionalDesignPatternDemos.fsproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Functional/FunctionalDesignPatternDemos/FunctionalDesignPatternDemos.fsproj -------------------------------------------------------------------------------- /Functional/FunctionalDesignPatternDemos/FunctionalFactory.fs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Functional/FunctionalDesignPatternDemos/FunctionalFactory.fs -------------------------------------------------------------------------------- /Functional/FunctionalDesignPatternDemos/FunctionalStrategy.fs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Functional/FunctionalDesignPatternDemos/FunctionalStrategy.fs -------------------------------------------------------------------------------- /Functional/FunctionalDesignPatternDemos/Interpreter.fs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Functional/FunctionalDesignPatternDemos/Interpreter.fs -------------------------------------------------------------------------------- /Functional/FunctionalDesignPatternDemos/Program.fs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Functional/FunctionalDesignPatternDemos/Program.fs -------------------------------------------------------------------------------- /Functional/FunctionalDesignPatternDemos/TemplateMethod.fs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Functional/FunctionalDesignPatternDemos/TemplateMethod.fs -------------------------------------------------------------------------------- /Functional/FunctionalDesignPatternDemos/bin/Debug/netcoreapp2.1/FunctionalDesignPatternDemos.deps.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Functional/FunctionalDesignPatternDemos/bin/Debug/netcoreapp2.1/FunctionalDesignPatternDemos.deps.json -------------------------------------------------------------------------------- /Functional/FunctionalDesignPatternDemos/bin/Debug/netcoreapp2.1/FunctionalDesignPatternDemos.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Functional/FunctionalDesignPatternDemos/bin/Debug/netcoreapp2.1/FunctionalDesignPatternDemos.dll -------------------------------------------------------------------------------- /Functional/FunctionalDesignPatternDemos/bin/Debug/netcoreapp2.1/FunctionalDesignPatternDemos.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Functional/FunctionalDesignPatternDemos/bin/Debug/netcoreapp2.1/FunctionalDesignPatternDemos.pdb -------------------------------------------------------------------------------- /Functional/FunctionalDesignPatternDemos/bin/Debug/netcoreapp2.1/FunctionalDesignPatternDemos.runtimeconfig.dev.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Functional/FunctionalDesignPatternDemos/bin/Debug/netcoreapp2.1/FunctionalDesignPatternDemos.runtimeconfig.dev.json -------------------------------------------------------------------------------- /Functional/FunctionalDesignPatternDemos/bin/Debug/netcoreapp2.1/FunctionalDesignPatternDemos.runtimeconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Functional/FunctionalDesignPatternDemos/bin/Debug/netcoreapp2.1/FunctionalDesignPatternDemos.runtimeconfig.json -------------------------------------------------------------------------------- /Functional/FunctionalDesignPatternDemos/obj/Debug/netcoreapp2.1/FunctionalDesignPatternDemos.AssemblyInfo.fs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Functional/FunctionalDesignPatternDemos/obj/Debug/netcoreapp2.1/FunctionalDesignPatternDemos.AssemblyInfo.fs -------------------------------------------------------------------------------- /Functional/FunctionalDesignPatternDemos/obj/Debug/netcoreapp2.1/FunctionalDesignPatternDemos.AssemblyInfoInputs.cache: -------------------------------------------------------------------------------- 1 | 2b2f19fe7e5bf2dbf4ca0ca648e82497636e3dd0 2 | -------------------------------------------------------------------------------- /Functional/FunctionalDesignPatternDemos/obj/Debug/netcoreapp2.1/FunctionalDesignPatternDemos.assets.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Functional/FunctionalDesignPatternDemos/obj/Debug/netcoreapp2.1/FunctionalDesignPatternDemos.assets.cache -------------------------------------------------------------------------------- /Functional/FunctionalDesignPatternDemos/obj/Debug/netcoreapp2.1/FunctionalDesignPatternDemos.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Functional/FunctionalDesignPatternDemos/obj/Debug/netcoreapp2.1/FunctionalDesignPatternDemos.dll -------------------------------------------------------------------------------- /Functional/FunctionalDesignPatternDemos/obj/Debug/netcoreapp2.1/FunctionalDesignPatternDemos.fsproj.CoreCompileInputs.cache: -------------------------------------------------------------------------------- 1 | 9407fed0f361129ebb9a69d13b647e1d05535bca 2 | -------------------------------------------------------------------------------- /Functional/FunctionalDesignPatternDemos/obj/Debug/netcoreapp2.1/FunctionalDesignPatternDemos.fsproj.FileListAbsolute.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Functional/FunctionalDesignPatternDemos/obj/Debug/netcoreapp2.1/FunctionalDesignPatternDemos.fsproj.FileListAbsolute.txt -------------------------------------------------------------------------------- /Functional/FunctionalDesignPatternDemos/obj/Debug/netcoreapp2.1/FunctionalDesignPatternDemos.fsprojAssemblyReference.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Functional/FunctionalDesignPatternDemos/obj/Debug/netcoreapp2.1/FunctionalDesignPatternDemos.fsprojAssemblyReference.cache -------------------------------------------------------------------------------- /Functional/FunctionalDesignPatternDemos/obj/Debug/netcoreapp2.1/FunctionalDesignPatternDemos.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Functional/FunctionalDesignPatternDemos/obj/Debug/netcoreapp2.1/FunctionalDesignPatternDemos.pdb -------------------------------------------------------------------------------- /Functional/FunctionalDesignPatternDemos/obj/FunctionalDesignPatternDemos.fsproj.nuget.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Functional/FunctionalDesignPatternDemos/obj/FunctionalDesignPatternDemos.fsproj.nuget.cache -------------------------------------------------------------------------------- /Functional/FunctionalDesignPatternDemos/obj/FunctionalDesignPatternDemos.fsproj.nuget.dgspec.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Functional/FunctionalDesignPatternDemos/obj/FunctionalDesignPatternDemos.fsproj.nuget.dgspec.json -------------------------------------------------------------------------------- /Functional/FunctionalDesignPatternDemos/obj/FunctionalDesignPatternDemos.fsproj.nuget.g.props: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Functional/FunctionalDesignPatternDemos/obj/FunctionalDesignPatternDemos.fsproj.nuget.g.props -------------------------------------------------------------------------------- /Functional/FunctionalDesignPatternDemos/obj/FunctionalDesignPatternDemos.fsproj.nuget.g.targets: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Functional/FunctionalDesignPatternDemos/obj/FunctionalDesignPatternDemos.fsproj.nuget.g.targets -------------------------------------------------------------------------------- /Functional/FunctionalDesignPatternDemos/obj/project.assets.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Functional/FunctionalDesignPatternDemos/obj/project.assets.json -------------------------------------------------------------------------------- /Functional/FunctionalDesignPatternDemos/obj/project.nuget.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Functional/FunctionalDesignPatternDemos/obj/project.nuget.cache -------------------------------------------------------------------------------- /Functional/FunctionalDesignPatternDemos/obj/project.packagespec.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Functional/FunctionalDesignPatternDemos/obj/project.packagespec.json -------------------------------------------------------------------------------- /LICENSE.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/LICENSE.txt -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/README.md -------------------------------------------------------------------------------- /SOLID/DIP.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/SOLID/DIP.cs -------------------------------------------------------------------------------- /SOLID/ISP.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/SOLID/ISP.cs -------------------------------------------------------------------------------- /SOLID/LSP.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/SOLID/LSP.cs -------------------------------------------------------------------------------- /SOLID/OCP.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/SOLID/OCP.cs -------------------------------------------------------------------------------- /SOLID/SRP.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/SOLID/SRP.cs -------------------------------------------------------------------------------- /Structural/Adapter/AdapterDI.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Structural/Adapter/AdapterDI.cs -------------------------------------------------------------------------------- /Structural/Adapter/Exercise.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Structural/Adapter/Exercise.cs -------------------------------------------------------------------------------- /Structural/Adapter/GenericValueAdapter.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Structural/Adapter/GenericValueAdapter.cs -------------------------------------------------------------------------------- /Structural/Adapter/Lazy.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Structural/Adapter/Lazy.cs -------------------------------------------------------------------------------- /Structural/Adapter/NoCaching.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Structural/Adapter/NoCaching.cs -------------------------------------------------------------------------------- /Structural/Adapter/PropertySurrogate.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Structural/Adapter/PropertySurrogate.cs -------------------------------------------------------------------------------- /Structural/Adapter/WithCaching.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Structural/Adapter/WithCaching.cs -------------------------------------------------------------------------------- /Structural/Adapter/str.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Structural/Adapter/str.cs -------------------------------------------------------------------------------- /Structural/Bridge/Bridge.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Structural/Bridge/Bridge.cs -------------------------------------------------------------------------------- /Structural/Bridge/Exercise.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Structural/Bridge/Exercise.cs -------------------------------------------------------------------------------- /Structural/Composite/Exercise.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Structural/Composite/Exercise.cs -------------------------------------------------------------------------------- /Structural/Composite/GeometricShapes.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Structural/Composite/GeometricShapes.cs -------------------------------------------------------------------------------- /Structural/Composite/NeuralNetworks.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Structural/Composite/NeuralNetworks.cs -------------------------------------------------------------------------------- /Structural/Decorator/AdapterDecorator.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Structural/Decorator/AdapterDecorator.cs -------------------------------------------------------------------------------- /Structural/Decorator/CodeBuilder.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Structural/Decorator/CodeBuilder.cs -------------------------------------------------------------------------------- /Structural/Decorator/Decorator.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Structural/Decorator/Decorator.cs -------------------------------------------------------------------------------- /Structural/Decorator/Exercise.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Structural/Decorator/Exercise.cs -------------------------------------------------------------------------------- /Structural/Decorator/Mixins.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Structural/Decorator/Mixins.cs -------------------------------------------------------------------------------- /Structural/Decorator/MultipleInheritance.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Structural/Decorator/MultipleInheritance.cs -------------------------------------------------------------------------------- /Structural/Facade/Exercise.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Structural/Facade/Exercise.cs -------------------------------------------------------------------------------- /Structural/Facade/MagicSquare.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Structural/Facade/MagicSquare.cs -------------------------------------------------------------------------------- /Structural/Flyweight/Exercise.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Structural/Flyweight/Exercise.cs -------------------------------------------------------------------------------- /Structural/Flyweight/TextFormatting.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Structural/Flyweight/TextFormatting.cs -------------------------------------------------------------------------------- /Structural/Flyweight/Users.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Structural/Flyweight/Users.cs -------------------------------------------------------------------------------- /Structural/Proxy/BitFragging.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Structural/Proxy/BitFragging.cs -------------------------------------------------------------------------------- /Structural/Proxy/CompositeProxy.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Structural/Proxy/CompositeProxy.cs -------------------------------------------------------------------------------- /Structural/Proxy/DynamicProxy.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Structural/Proxy/DynamicProxy.cs -------------------------------------------------------------------------------- /Structural/Proxy/Exercise.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Structural/Proxy/Exercise.cs -------------------------------------------------------------------------------- /Structural/Proxy/PropertyProxy.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Structural/Proxy/PropertyProxy.cs -------------------------------------------------------------------------------- /Structural/Proxy/ProtectionProxy.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Structural/Proxy/ProtectionProxy.cs -------------------------------------------------------------------------------- /Structural/Proxy/ResultOfT.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Structural/Proxy/ResultOfT.cs -------------------------------------------------------------------------------- /Structural/Proxy/SoACompositeProxy.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Structural/Proxy/SoACompositeProxy.cs -------------------------------------------------------------------------------- /Structural/Proxy/ValueProxy.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Structural/Proxy/ValueProxy.cs -------------------------------------------------------------------------------- /Structural/Proxy/ViewModel.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Structural/Proxy/ViewModel.cs -------------------------------------------------------------------------------- /Structural/Proxy/VirtualProxy.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/design-patterns-in-.net-core-3/HEAD/Structural/Proxy/VirtualProxy.cs --------------------------------------------------------------------------------