Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
CSC308B Lecture 10
Search
Javier Gonzalez-Sanchez
PRO
February 29, 2024
Programming
97
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
CSC308B Lecture 10
Software Engineering I
Clean Coding
(202401) - two-days per week version
Javier Gonzalez-Sanchez
PRO
February 29, 2024
More Decks by Javier Gonzalez-Sanchez
See All by Javier Gonzalez-Sanchez
CSC510 Lecture 15
javiergs
PRO
0
17
CSC510 Lecture 13
javiergs
PRO
0
13
CSC510 Lecture 14
javiergs
PRO
0
25
CSC310 Lecture 09
javiergs
PRO
0
23
CSC510 Lecture 12
javiergs
PRO
0
49
CSC510 Lecture 11
javiergs
PRO
0
39
CSC310 Lecture 08
javiergs
PRO
0
30
CSC310 Lecture 07
javiergs
PRO
0
39
CSC510 Lecture 10
javiergs
PRO
0
33
Other Decks in Programming
See All in Programming
AWS CDKのカスタムリソースでContinuum(旧Security Agent)を実装した話 | Implementing Continuum (formerly Security Agent) via AWS CDK Custom Resource
akihisaikeda
2
140
Verilogで学ぶCPU自作入門.pdf
uyuki234
8
4k
AI が書く Go コードの品質を劇的に向上させる Linter: “declscope”
mpyw
0
480
SalesForceを内製化!? ~ HR事業を支える顧客管理基盤のインフラを大公開 ~
oku053
0
130
Simple Storage Service(S3) is not simple
iwatsukayura
0
210
Streamlitで実現する自然言語データアプリ開発
ayumu_yamaguchi
1
340
mrbgem 三角測量 開発
ogom
0
200
そのリトライ、死んだコネクションを使い回していませんか ── GoのHTTPクライアントとHTTP/2を実プロダクト障害から学び直す
myus4a
0
390
速習iPhone Duo対応
yuukiw00w
2
960
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
460
C#の現在地 進化の歴史と、AI時代の.NET Everywhere
neuecc
5
4.9k
コードレビューのボトルネックを"する側"と"される側"の両面から解消する
yub0n
2
1.5k
Featured
See All Featured
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
250
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
300
Raft: Consensus for Rubyists
vanstee
142
7.7k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.8k
Odyssey Design
rkendrick25
PRO
2
860
The untapped power of vector embeddings
frankvandijk
2
1.9k
Typedesign – Prime Four
hannesfritz
42
3.2k
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
5
770
How to build a perfect <img>
jonoalderson
1
6.1k
Optimising Largest Contentful Paint
csswizardry
37
4k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
860
The agentic SEO stack - context over prompts
schlessera
0
970
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.