Core Coding Principles
What you'll learn
- Understand why code quality is important and how it enables effective software development
- Describe key coding principles such as cohesion & coupling, DRY, and the SOLID principles
- Improve your reasoning ability about code quality by using a variety of lenses
- Write cleaner, more readable, more communicative, more flexible code than before
- Discuss code quality ideas amongst a team and be able to, as a team, work towards agreement on a team’s coding standards
Requirements
- Developers can code in C#
- Visual Studio 2022
Description
The course is for developers who are looking to improve their ability to write good, clean, maintainable code. In it, we cover key coding principles that help to develop a language for discussion within the team. These include coupling and cohesion, the SOLID principles, DRY.
Note: the course examples and exercises are in C#, but the theory covered is applicable in all OO languages.
Goals -
• To get developers thinking about code quality
• To provide developers with the tools they need to discuss and evaluate code quality
• To get developers to build alignment about what “good” code is
• To provide developers with some guidelines about how to go about writing better code
Course Structure -
The following topics are covered:
• Preparation – what is the team’s existing understanding of good code?
• Lenses for Thinking about Code Quality - Thinking about programming like Kent Beck:
Core Values of Software Development
Key Principles
The Four Rules of Simple Design
• Cohesion and Coupling
• DRY
• SOLID Principles:
Single Responsibility Principle
Open-Closed Principle
Liskov Substitution Principle
Interface Segregation Principle
Dependency Inversion Principle
• The Practice of Writing Clean Code:
Coding Standards
Meaningful naming
Functions
Comments
Learning Outcomes
At the end of this course developers will be able to:
Understand why code quality is important and how it enables effective software development
Describe key coding principles such as cohesion & coupling, DRY, and the SOLID principles
Reason about code quality using a variety of lenses
Discuss code quality ideas among a team and be able to, as a team, work towards alignment and agreement on the team’s coding standards
Write cleaner, more readable, more communicative, more flexible code than before
Who this course is for:
- C# Developers who are wanting to improve their ability to write good, clean, maintainable code
Instructor
Our courses have been developed by DevFluence, a professional software development school that is a division of Chillisoft. Chillisoft is an established software development house that is known for our high quality, software professionalism and our excellent delivery track record. Chillisoft set up DevFluence to share the pragmatic lessons that have we learned in writing and delivering software, whilst working with international software teams and businesses for more than 13 years.
DevFluence’s vision is to make Software Professionalism a reality in the world of work. This is achieved by ensuring that our team and our offerings actively embody our vision statement – “the courage to create value for myself, my customers and my community.”
Our vision statement recognises that software competency is directly dependent on fulfilling an individual’s internal drivers of motivation. It also recognises the individual agency and voice of a software developer who has to deliver value within an existing culture. DevFluence recognises the courage of business and software developers who deliberately commit to instilling practices that enables continual learning for career growth.
All Our Instructors:
● Have a minimum of 10 years of solid software development experience
● Are current software practitioners
● Are trained to teach, listen and communicate
● Are engaged in the software community