Lego for Software Engineers Part 1 – How to build reusable and maintainable applications in C#
Lego the interlocking construction brick system for kids provides a perfect example of simple but extremely powerful interface design, as you can build virtual any things from its basic but reusable building blocks.<br/> As Lego provides a perfect example for good interface design it will be used for comparison for software architectural theory and design patterns for reusable and maintainable application like "Keep it simple stupid" (KISS), the power of contracts /interfaces, Separation of Concerns (SoC),"Don’t Repeat Yourself" (DRY),"You Ain't Gonna Need It" (YAGNI), “Inversion of Control” including Dependency Injection and Service Locator.
Theo has been designing and implementing .NET based applications, components, and frameworks since .NET 1.0 with a focus on scalable and maintainable solutions. Accidentally, becoming a manager in 2012, Theo has embraced the engineering manager path currently working as a Senior Director of Engineering at AppDynamics. He contributed to the success of AppDynamics, scaling from 70 employees to over 2000 and being acquired three days before the IPO for $3.7B by Cisco. Theo's expertise is understanding systems, identifying patterns and defining and implementing best practices in software, architecture, or organization.
- Not Interested