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
CSC308B Lecture 10
Search
Javier Gonzalez-Sanchez
PRO
February 29, 2024
Programming
0
74
CSC308B Lecture 10
Software Engineering I
Clean Coding
(202401) - two-days per week version
Javier Gonzalez-Sanchez
PRO
February 29, 2024
Tweet
Share
More Decks by Javier Gonzalez-Sanchez
See All by Javier Gonzalez-Sanchez
CSC509 Lecture 15
javiergs
PRO
0
49
CSC305 Lecture 18
javiergs
PRO
0
280
CSC509 Lecture 14
javiergs
PRO
0
230
CSC305 Lecture 17
javiergs
PRO
0
350
CSC305 Lecture 16
javiergs
PRO
0
390
CSC305 Lecture 15
javiergs
PRO
0
260
CSC305 Lecture 14
javiergs
PRO
0
380
CSC509 Lecture 13
javiergs
PRO
0
270
CSC509 Lecture 12
javiergs
PRO
0
320
Other Decks in Programming
See All in Programming
SQL Server 2025 LT
odashinsuke
0
100
AI 駆動開発ライフサイクル(AI-DLC):ソフトウェアエンジニアリングの再構築 / AI-DLC Introduction
kanamasa
11
4.6k
[AI Engineering Summit Tokyo 2025] LLMは計画業務のゲームチェンジャーか? 最適化業務における活⽤の可能性と限界
terryu16
1
120
Canon EOS R50 V と R5 Mark II 購入でみえてきた最近のデジイチ VR180 事情、そして VR180 静止画に活路を見出すまで
karad
0
140
Pythonではじめるオープンデータ分析〜書籍の紹介と書籍で紹介しきれなかった事例の紹介〜
welliving
3
680
Navigating Dependency Injection with Metro
l2hyunwoo
1
200
20251212 AI 時代的 Legacy Code 營救術 2025 WebConf
mouson
0
230
Combinatorial Interview Problems with Backtracking Solutions - From Imperative Procedural Programming to Declarative Functional Programming - Part 2
philipschwarz
PRO
0
120
AtCoder Conference 2025
shindannin
0
830
脳の「省エネモード」をデバッグする ~System 1(直感)と System 2(論理)の切り替え~
panda728
PRO
0
130
モデル駆動設計をやってみようワークショップ開催報告(Modeling Forum2025) / model driven design workshop report
haru860
0
290
Grafana:建立系統全知視角的捷徑
blueswen
0
250
Featured
See All Featured
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
210
Optimising Largest Contentful Paint
csswizardry
37
3.5k
SEO for Brand Visibility & Recognition
aleyda
0
4.1k
Raft: Consensus for Rubyists
vanstee
141
7.3k
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
74
Joys of Absence: A Defence of Solitary Play
codingconduct
1
260
The #1 spot is gone: here's how to win anyway
tamaranovitovic
1
880
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
94
Leo the Paperboy
mayatellez
0
1.3k
Deep Space Network (abreviated)
tonyrice
0
30
Between Models and Reality
mayunak
0
150
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
170
Transcript
jgs CSC 308 Software Engineering 1 Lecture 10: Clean Coding
Dr. Javier Gonzalez-Sanchez
[email protected]
www.javiergs.com Building 14 -227
jgs Javier Gonzalez-Sanchez | CSC 308 | Winter 2024 |
2 Not Everything that Can be … Should be …
jgs Javier Gonzalez-Sanchez | CSC 308 | Winter 2024 |
3 Good Code vs Bad Code
jgs Design Principles
jgs Javier Gonzalez-Sanchez | CSC 308 | Winter 2024 |
5 Think about 10 to 1 RULE
jgs Javier Gonzalez-Sanchez | CSC 308 | Winter 2024 |
6 Think about * How Many Classes? * Single or with Children?
jgs Javier Gonzalez-Sanchez | CSC 308 | Winter 2024 |
7 Separation of Concerns Association or Dependency VS Aggregation or Composition
jgs Javier Gonzalez-Sanchez | CSC 308 | Winter 2024 |
8 Separation of Concerns DRY KIS Comments
jgs Javier Gonzalez-Sanchez | CSC 308 | Winter 2024 |
9 Separation of Concerns View VS Control and Features
jgs Javier Gonzalez-Sanchez | CSC 308 | Winter 2024 |
10 Single Responsibility Delegate
jgs Javier Gonzalez-Sanchez | CSC 308 | Winter 2024 |
11 Test Yourselves
jgs Example 1
jgs Javier Gonzalez-Sanchez | CSC 308 | Winter 2024 |
13
jgs Javier Gonzalez-Sanchez | CSC 308 | Winter 2024 |
14 Example
jgs Javier Gonzalez-Sanchez | CSC 308 | Winter 2024 |
15 Code
jgs Example 2
jgs Javier Gonzalez-Sanchez | CSC 308 | Winter 2024 |
17 Step 2
jgs Javier Gonzalez-Sanchez | CSC 308 | Winter 2024 |
18 Class Diagram
jgs Javier Gonzalez-Sanchez | CSC 308 | Winter 2024 |
19 Class Diagram
jgs Javier Gonzalez-Sanchez | CSC 308 | Winter 2024 |
20 Variables
jgs Javier Gonzalez-Sanchez | CSC 308 | Winter 2024 |
21 paintComponent
jgs Javier Gonzalez-Sanchez | CSC 308 | Winter 2024 |
22 Auxiliar Method
jgs Javier Gonzalez-Sanchez | CSC 308 | Winter 2024 |
23 Mouse
jgs Javier Gonzalez-Sanchez | CSC 308 | Winter 2024 |
24 Questions
jgs
jgs CSC 308 Software Engineering 1 Lab 10: Project Sprint
2 Dr. Javier Gonzalez-Sanchez
[email protected]
www.javiergs.com Building 14 -227 Office Hours: By appointment
jgs Javier Gonzalez-Sanchez | CSC 308 | Winter 2024 |
28 Let’s Work
jgs CSC 308 Software Engineering I Javier Gonzalez-Sanchez, Ph.D.
[email protected]
Winter 2024 Copyright. These slides can only be used as study material for the class CSC 308 at Cal Poly. They cannot be distributed or used for another purpose.