Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
CSC509 Lecture 02
Search
Javier Gonzalez-Sanchez
PRO
September 27, 2024
Programming
0
260
CSC509 Lecture 02
Software Design
Model-View-Controller
(202309)
Javier Gonzalez-Sanchez
PRO
September 27, 2024
Tweet
Share
More Decks by Javier Gonzalez-Sanchez
See All by Javier Gonzalez-Sanchez
CSC486 Lecture 07
javiergs
PRO
0
23
CSC486 Lecture 06
javiergs
PRO
0
48
CSC486 Lecture 05
javiergs
PRO
0
52
CSC486 Lecture 04
javiergs
PRO
0
35
CSC486 Lecture 03
javiergs
PRO
0
17
CSC486 Lecture 02
javiergs
PRO
0
19
CSC486 Lecture 01
javiergs
PRO
0
43
CSC305 Lecture 26
javiergs
PRO
0
150
CSC305 Lecture 25
javiergs
PRO
0
140
Other Decks in Programming
See All in Programming
盆栽転じて家具となる / Bonsai and Furnitures
aereal
0
2.1k
chibiccをCILに移植した結果 (NGK2025S版)
kekyo
PRO
0
180
ChatGPT とつくる PHP で OS 実装
memory1994
PRO
3
190
CNCF Project の作者が考えている OSS の運営
utam0k
5
550
[JAWS-UG横浜 #80] うわっ…今年のServerless アップデート、少なすぎ…?
maroon1st
0
140
カンファレンス動画鑑賞会のススメ / Osaka.swift #1
hironytic
0
190
Azure AI Foundryのご紹介
qt_luigi
1
240
いりゃあせ、PHPカンファレンス名古屋2025 / Welcome to PHP Conference Nagoya 2025
ttskch
1
230
為你自己學 Python
eddie
0
530
自分ひとりから始められる生産性向上の取り組み #でぃーぷらすオオサカ
irof
8
2k
ATDDで素早く安定した デリバリを実現しよう!
tonnsama
1
2.3k
HTML/CSS超絶浅い説明
yuki0329
0
200
Featured
See All Featured
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
39
1.9k
The World Runs on Bad Software
bkeepers
PRO
66
11k
Code Reviewing Like a Champion
maltzj
521
39k
Six Lessons from altMBA
skipperchong
27
3.6k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
52k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
3k
Bash Introduction
62gerente
610
210k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
44
9.4k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
113
50k
Transcript
Dr. Javier Gonzalez-Sanchez
[email protected]
www.javiergs.info o ffi ce: 14 -227
CSC 508/9 Software Engineering (Design & Deployment) Lecture 02. Architecture
Course Content
This Course 3
This Course 4
This Course covers CSC 509 • Apply wh a t
you know • Deepen into Design (decision-m a king) • Apply development skills (le a rn, a s needed, new fr a meworks, libr a ries, APIs) • Cre a te a product th a t not only works but h a s Qu a lity (reuse, extensibility, a nd modi f i a bility) 5
Concepts Architecture Design Code
Eric Gamma 7
Robert Martin Design principles a re not a perfume to
be liber a lly sc a ttered a ll over the system. Robert M a rtin (Agile m a nifesto, SOLID principles, Cle a n Code Book) 8
Foundations 9
Architecture
Architecture 11 Aerial Perspective of Kunming Campus-Howard Rideout Architect
Blueprint Architecture Design Code
Environment
Architecture Patterns • Model - View - Controller • L
a yered • Bl a ckbo a rd • Client-Server • Publisher-Subscriber 14
Model-View-Controller
MVC Architecture 16
Design | MVC applied to Java Desktop Apps 17
Code 18
19
Homework • Read Gamma et al. paper • Read Garlan
and Shaw paper • Available on Canvas
Review your Java Programming Skills (Including Java Swing GUI) Homework
21
CSC 509 Software Engineering Javier Gonzalez-Sanchez, Ph.D.
[email protected]
Fall 2024
Copyright. These slides can only be used as study material for the class CSC509 at Cal Poly. They cannot be distributed or used for another purpose.