Friday, October 23, 2020

3.1 Designing Software Introduction


 

Most people think about software from the functionality perspective. What an application delivers to the end users is an important question to ask, but you as a software developer will have an opportunity to think about the other side of the spectrum—software design. Software design affects the behavior of a system and controls many factors in a life cycle of a software system. Poor software design is a fundamental source of weak performance, creating difficulties in updating an application and integrating it with existing products.

You will learn how to take advantage of techniques that programming languages such as Python offer to write software with modularity and clarity in mind. You will also learn that many problems in software development have already been identified and documented. The documented solutions to these problems are gathered in the form of patterns. These patterns are divided into architectural patterns that take care of a more overall design of a system and define how different components interact. Design patterns dive into separate components and ensure that the optimal coding techniques are used for solving a specific programming obstacle and to avoid tangled code.

No comments:

Post a Comment