CPSC 210
Software Construction
About Me
We are a team of 2 instructors (Firas, Paul), one course coordinator (Taryn) and 26 amazing TAs! 👨💻🧑🏫👨🏻🏫
About Me
About Me
Course Structure
- Lectures: prepare and watch videos before each lecture!
- Lecture Tickets (3%): online questionnaire before each class
- Labs (7%): 9 lab assignments (~1 lab per week)
- Project (15%): personal project with multiple deliverables
- Exams: two in-term exams (15% and 20%) and one final exam (40%)
Software Engineering is awesome!
- It is for everyone...
- It is creative and challenging...
- It is about technology and people...
- It has far-reaching impact…
- It never gets boring...
- The focus of this course: object-oriented design (OOD)
- We will use the language Java to illustrate OOD
-
The teaching approach will be immersive:
- Learn Java in a similar way as a developer
-
We will dive into existing systems and ask ourselves:
- What's similar to what I already know?
- What's different to what I already know?
- Leverage what we already know = best approach to learning a new language
About this Course
About this Course
This course will give you a glimpse into the world of software development. The course split into four parts, each class meeting will be on a topic from one of these parts
Basics: Get up to speed with Java, the editor, data structures, etc.
Abstraction: Reduce code complexity and avoid duplication.
Construction: Tools and techniques to build resilient programs.
Design: Software design principles, maintainability and readability
Schedule & Due Dates
Let's quickly check the course page...
Ed Discussion
- Please use the discussion forum for all kinds of questions
- Except personal administrative questions that should go to cpsc210-admin@cs.ubc.ca
- Please have a look at the initial posts titled "Welcome!" and "Posting Etiquette"
- Related industrial knowledge:
https://stackoverflow.com/help/how-to-ask
🧑💻 I accidentally did X. Now it doesn't work anymore. Please help!
Ed Discussion
Let's do a quick demo and make sure everyone is on Ed Discussion!
Course Material
Interactive Lectures
- Hands-on "lecture-labs" as part of each lecture
- Engage with these exercises - this will help you a lot!
- Please prepare for lectures by reviewing videos!
- An opportunity to get creative
-
Design an application that is of interest to you
- And maybe for future employers!
- Some requirements and details will follow
- It is entirely your own work!
Term Project
Q&A
Are you ready...?
🚀
🚀
🚀
CPSC210 - FM Introduction (23w2)
By firas_moosvi
CPSC210 - FM Introduction (23w2)
- 256