Detroit.Code() Sessions tagged software design

Practical Patterns for the Progressing Programmer

Understanding software design patterns is critical for every developer who strives to be top-tier. Come join us as we explore some of the most common design patterns and discuss how you can leverage them to make your life easier. We will look at some real world code examples and learn to recognize common problems and how to use different design patterns to create elegant solutions. Learn to spot common anti-patterns and the pitfalls they bring. Join us and take the next step in your career.

Speaker

Brent Stewart

Brent Stewart

Co-Founder, Alien Arc Technologies

Demystifying Dependency Injection

What is Dependency Injection (DI) and why should you care? Come learn what DI is and how you can use it to keep your apps loosely coupled and test friendly. We will examine why you should avoid tight coupling and how you can avoid it using different methods of DI. After looking at the basic patterns, we'll take a look at a few different DI containers and see how they do their magic to make us better programmers.

Speaker

Brent Stewart

Brent Stewart

Co-Founder, Alien Arc Technologies

Establishing a SOLID Foundation – An Introduction to Software Design

Are you tired of opening classes that have hundreds or thousands of lines of code? Do you feel that you spend too much time trying to understand how something (that should be simple) in your application works? Are you frustrated with following spaghetti-like logic through your code’s core?

In this presentation, we’re going to examine a set of design principles that yield easy-to-read, decoupled code referred to as SOLID. To start, we’ll explore the history of SOLID and establish the problems it solves. From there, we’ll dive into the different principles (Single Responsibility, Open/Closed, Liskov Substitution, Interface Segregation, and Dependency Inversion) by defining what each principle means, how to spot violations, and how to resolve them.

Intended for developers wanting to learn more about software design, by the end of the presentation, you should be able to describe what SOLID code is. In addition, you should also be able to spot trouble areas in your codebase and have the tools to undo the damage.

Speaker

Cameron Presley

Cameron Presley

Senior Software Engineer, Pilot Flying J