Download presentation
Presentation is loading. Please wait.
Published byOpal Douglas Modified over 8 years ago
1
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010. They may not show up well on other PowerPoint versions. You can download PowerPoint 2010 viewer from here.here These slides contain a lot of animations. For optimal results, watch in slideshow mode.
2
Man Woman Let’s talk about the Evolution of (Wo)man… wants to date * * * * ** * *
3
Man Woman wants to date * * * * ** * * Assume we are building an online dating app. It allows users to indicate which other users they want to date. The following class diagram shows the ‘wants to date’ associations. Can the design be simplified? On with our lecture proper
4
Man Woman wants to date * * Person
5
Man Woman wants to date * * Person WantsToDate
6
Man Woman Person WantsToDate 1 1 * * requestor target
7
Boil water Put tea leaves in strainer Add hot water Steep for a while Remove strainer Add milk and sugar
8
Boil water Put tea leaves in strainer Add hot water Steep for a while Remove strainer Add milk and sugar
9
Boil water Put tea leaves in strainer Add hot water Steep for a while Remove strainer Add milk and sugar Serve tea Clean table Toast bread Cut bread Accept payment Give change Issue receipt Wash utensils Pay bills Order supplies …… … …
10
Boil water Put tea leaves in strainer Add hot water Steep for a while Remove strainer Add milk and sugar Serve tea Clean table Toast bread Cut bread Accept payment Give change Issue receipt Wash utensils Pay bills Order supplies …… … … Procedural
11
1 chef 2 waiters 1 cashier 1 part time accountant 1 manager 1 cash register 1 stove Serve tea Clean table Toast bread Cut bread Accept payment Give change Issue receipt Wash utensils Pay bills Order supplies …… … … Boil water Put tea leaves in strainer Add hot water Steep for a while Remove strainer Add milk and sugar OOP Procedural
12
OOP 4 Abstraction Encapsulation Inheritance pOlymorphism
13
Data function
14
Data function
15
Data function Data function Student Course Lecturer
16
Data function Data Student
17
Data function Data Student cs2103: Course hchia: Lecturer john:
18
Student john:
19
Student NgStudent PgStudent UgStudent
20
{abstract} Student NgStudent PgStudent UgStudent
21
> Student NgStudent PgStudent UgStudent
22
:NgStudent :PgStudent :UgStudent :Lecturer study() foo() bar () goo ()
23
:NgStudent :PgStudent :UgStudent :Lecturer study() foo() bar () goo ()
24
:NgStudent :PgStudent :UgStudent :Lecturer study() foo() bar () goo ()
25
:Student :NgStudent :PgStudent :UgStudent :Lecturer
26
1 chef 2 waiters 1 cashier 1 part time accountant 1 manager 1 cash register 1 stove Divisions/Departments Kitchen Accounting Customer Services Purchasing OOPArchitecture
27
OOPArchitecture
28
OOPArchitecture
29
A B C D B C A Component A design * Component C design * D C Component B designComponent D design OOP Component design Architecture Achievement Unlocked! Top-down multi- level design
30
Achievement yet to be unlocked! Software Reuse Writing from scratch is better? Can you imagine trying to become a poet without reading poems written by other poets? Open Source projects
31
Achievement yet to be unlocked! Effort estimation Promise only what you can deliver, deliver what you promised.
32
Basic SE knowledge [up to B+] Theory covered Practice in project internalize L1-L6 L7-L12 Intermediate SE knowledge [A- to A+] Today Better design Better code Better documentation
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.