Upgrade to Pro — share decks privately, control downloads, hide ads and more …

CSC305 Lecture 01

CSC305 Lecture 01

Individual Software Design and Development
Course Presentation
(202509)

Avatar for Javier Gonzalez-Sanchez

Javier Gonzalez-Sanchez PRO

September 22, 2025
Tweet

More Decks by Javier Gonzalez-Sanchez

Other Decks in Programming

Transcript

  1. Dr. Javier Gonzalez-Sanchez [email protected] www.javiergs.info o ffi ce: 14 -227

    CSC 305 Individual Software Design and Development Lecture 01. Course Presentation
  2. First n a me L a st n a me

    Dr. J a vier Gonz a lez-S a nchez j a viergs@c a lpoly.edu www.j a viergs.info Contact Information 3
  3. www.j a viergs.info/te a ching/ At CSU: Softw a re

    Engineering (CSC 305, CSC 307, 308, 309, 508, 509) Hum a n-Computer Inter a ction (CSC 486 a nd CSC 570) Teaching 5
  4. Your Turn • Wh a t is your n a

    me (or how you go by it)? • Are you pro f icient in progr a mming with J a v a ? • Did you took 307/308/309? 7
  5. Key Ideas • Individual (well, sometimes team of two) •

    Design (Software Design) • Development (Tools) 9
  6. Individual | Code is meant for human consumption • Someone

    else is going to re a d my code. • Someone else is going to try to modify or extend my code. • My code should be Open a nd Close. • Wh a t m a kes code e a sy to underst a nd? • St a nd a rd Problems h a ve St a nd a rd Solutions 10
  7. Design | Manufacturing vs. Crafting • Anybody c a n

    do progr a mming. • You a re Engineers a nd Scientists, therefore … • Wh a t a bout te a m-working? "Gre a t te a ms a re built when good individu a ls bring their strengths together.” • CSC 305 is a bout the individu a l 12
  8. Topics • Week 1: Course Overview • Week 2: Object-Oriented

    Design • Week 3: Exceptions, Logging, Error H a ndling • Week 4: Memory M a n a gement • Week 5: Disk-b a sed Dyn a mic D a t a Structures • Week 6: File I/O • Week 7: Cre a ting Libr a ries a nd APIs • Week 8: Best Pr a ctices for Reuse • Week 9: Individu a l Project • Week 10: Fin a l Ex a m Week 15
  9. Grading 21 Assignments L a bs + Quizzes Attend a

    nce & P a rticip a tion 25% 25% 10% 100% Project Fin a l Project Fin a l Ex a m Project 20% 20%
  10. Grading 22 >= 96.5 A >= 93 A- >= 89.5

    B+ >= 86 B >= 82.5 B- >= 79 C+ >= 75.5 C >= 72 C- >= 68.5 D+ >= 65 D >= 61.5 D- < 61.5 F
  11. Guidelines 23 Please avoid grade grubbing —feel free to ask

    questions and clarify doubts, but don’t request extra points unless there’s a clear grading error
  12. Performance + Readability • Write e ff icient code but

    prioritize re a d a bility a nd m a int a in a bility. • Optimize perform a nce-critic a l sections only when necess a ry. 30
  13. Lab

  14. CSC 305 Individual Software Design and Development Javier Gonzalez-Sanchez, Ph.D.

    [email protected] Fall 2025 Copyright. These slides can only be used as study material for the class CSC305 at Cal Poly. They cannot be distributed or used for another purpose.