unit 12 sec 2-programming design
TRANSCRIPT
![Page 1: Unit 12 sec 2-programming design](https://reader033.vdocuments.us/reader033/viewer/2022042715/5599ab351a28abdd498b4738/html5/thumbnails/1.jpg)
Programming DesignIn this section, you will learn about programming design and learn to identify and discuss the three most common designs.
![Page 2: Unit 12 sec 2-programming design](https://reader033.vdocuments.us/reader033/viewer/2022042715/5599ab351a28abdd498b4738/html5/thumbnails/2.jpg)
Programming design is the approach taken to writing code. It takes into consideration:
the problem being addressed.
the goals of the project.
the programming language that will be used.
Some programming languages are ideally suited for one type of programming design. However, many programming languages will support more than one type of programming design.
Programming Design
![Page 3: Unit 12 sec 2-programming design](https://reader033.vdocuments.us/reader033/viewer/2022042715/5599ab351a28abdd498b4738/html5/thumbnails/3.jpg)
It is important to decide upon a programming design before developing a software solution. Starting out with a design benefits a project because:
it communicates decisions about the programming approach to all project team members.
it helps to ensure that different parts of the code developed by different programmers will integrate properly.
it helps to ensure that code will be easy to read and maintain.
it saves time, money, and effort.
Ready, Set, GO! Programming Design
![Page 4: Unit 12 sec 2-programming design](https://reader033.vdocuments.us/reader033/viewer/2022042715/5599ab351a28abdd498b4738/html5/thumbnails/4.jpg)
There are three common types of programming design. Each has advantages and disadvantages that make it ideally suited for one type of problem, yet not for another.
The three common types of programming design include the following:
Top-down
Structured
Object-oriented
Three Types of Programming Design
![Page 5: Unit 12 sec 2-programming design](https://reader033.vdocuments.us/reader033/viewer/2022042715/5599ab351a28abdd498b4738/html5/thumbnails/5.jpg)
Some of the programming languages used with a top-down approach include the following:
Ada BASIC C C++ COBOL Java
![Page 6: Unit 12 sec 2-programming design](https://reader033.vdocuments.us/reader033/viewer/2022042715/5599ab351a28abdd498b4738/html5/thumbnails/6.jpg)
Using Top-Down Programming Design
![Page 7: Unit 12 sec 2-programming design](https://reader033.vdocuments.us/reader033/viewer/2022042715/5599ab351a28abdd498b4738/html5/thumbnails/7.jpg)
Advantages of Top-Down Programming Design
![Page 8: Unit 12 sec 2-programming design](https://reader033.vdocuments.us/reader033/viewer/2022042715/5599ab351a28abdd498b4738/html5/thumbnails/8.jpg)
Disadvantages of Top-Down Programming Design
![Page 9: Unit 12 sec 2-programming design](https://reader033.vdocuments.us/reader033/viewer/2022042715/5599ab351a28abdd498b4738/html5/thumbnails/9.jpg)
Structured Programming Design
![Page 10: Unit 12 sec 2-programming design](https://reader033.vdocuments.us/reader033/viewer/2022042715/5599ab351a28abdd498b4738/html5/thumbnails/10.jpg)
Example:
1. Get carrot
2. Get carrot peeler
3. Peel carrot
![Page 11: Unit 12 sec 2-programming design](https://reader033.vdocuments.us/reader033/viewer/2022042715/5599ab351a28abdd498b4738/html5/thumbnails/11.jpg)
![Page 12: Unit 12 sec 2-programming design](https://reader033.vdocuments.us/reader033/viewer/2022042715/5599ab351a28abdd498b4738/html5/thumbnails/12.jpg)
![Page 13: Unit 12 sec 2-programming design](https://reader033.vdocuments.us/reader033/viewer/2022042715/5599ab351a28abdd498b4738/html5/thumbnails/13.jpg)
![Page 14: Unit 12 sec 2-programming design](https://reader033.vdocuments.us/reader033/viewer/2022042715/5599ab351a28abdd498b4738/html5/thumbnails/14.jpg)
Characteristics of Object-Oriented Programming Design
Object-oriented programming is often the best programming design approach, especially in situations where the programmer may need to make minor changes to the code at a future time, and when the programmer wishes to reuse the code in other programs.
An object-oriented programming design:
breaks the solution into independent objects.
uses objects that send data to other objects.
supports a modular design that encourages the reuse of code.
makes use of abstraction, which is the use of an object for a very specific purpose.
![Page 15: Unit 12 sec 2-programming design](https://reader033.vdocuments.us/reader033/viewer/2022042715/5599ab351a28abdd498b4738/html5/thumbnails/15.jpg)
![Page 16: Unit 12 sec 2-programming design](https://reader033.vdocuments.us/reader033/viewer/2022042715/5599ab351a28abdd498b4738/html5/thumbnails/16.jpg)
![Page 17: Unit 12 sec 2-programming design](https://reader033.vdocuments.us/reader033/viewer/2022042715/5599ab351a28abdd498b4738/html5/thumbnails/17.jpg)
Images from this presentation are used with permission from
Microsoft.