The object-oriented paradigm to the design of software is one major successful approach to address complexity and maintainability issues in software systems. We want students to establish an object-oriented mindset and to gain valuable insights into how software can be developed using the object-oriented approach. This course should not be interpreted to be a pure programming language course. Rather, the programming language serves to illustrate, via practical examples, the concepts learnt in the course.
As a student of this course, you will learn essential object-oriented concepts such as encapsulation, the separation of design from implementation, the use of inheritance and polymorphism. Finally, you will also learn good design principles for reuse, and to realise these principles using object-oriented programming languages such as Java and/or C++.
Prerequisite graph
Required first
SC1003Introduction To Computational Thinking & ProgrammingSC1007Data Structures & AlgorithmsObject Oriented Design & Programming
Unlocks
SC4012Software SecurityAvailable indexes
| Mon | Tue | Wed | Thu | Fri | |||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 830 | 10187 LAB (FCSG) 0830-1020 Mon SWLAB3 Odd Weeks | 10188 LAB (FCSH) 0830-1020 Mon SWLAB3 Even Weeks | 10192 LAB (FCS3) 0830-1020 Tue SWLAB3 Even Weeks | 10193 LAB (FCS4) 0830-1020 Tue SWLAB3 Odd Weeks | 10204 LAB (SR1) 0830-1020 Wed SWLAB3 Even Weeks | 10185 LAB (FCSE) 0830-1020 Thu SWLAB1 Odd Weeks | 10186 LAB (FCSF) 0830-1020 Thu SWLAB1 Even Weeks | ||||||||||||||
| 900 | |||||||||||||||||||||
| 930 | 10190 TUT (FCS1) 0930-1020 Thu TR+18 Wk2-9,11-13 | 10191 TUT (FCS2) 0930-1020 Thu TR+19 Wk2-9,11-13 | |||||||||||||||||||
| 1000 | |||||||||||||||||||||
| 1030 | 10194 LAB (FDAA) 1030-1220 Mon SWLAB3 Odd Weeks | 10195 LAB (FDAB) 1030-1220 Mon SWLAB3 Even Weeks | 10196 TUT (FDAC) 1030-1120 Mon TR+15 Wk2-9,11-13 | 10197 TUT (FDAD) 1030-1120 Mon TR+5 Wk2-9,11-13 | 10198 LAB (FDAE) 1030-1220 Tue SWLAB3 Odd Weeks | 10199 LAB (FDAF) 1030-1220 Tue SWLAB3 Even Weeks | 10181 TUT (FCSA) 1030-1120 Tue TR+5 Wk2-9,11-13 | 10182 TUT (FCSB) 1030-1120 Tue TR+4 Wk2-9,11-13 | 10187 TUT (FCSG) 1030-1120 Wed TR+15 Wk2-9,11-13 | 10188 TUT (FCSH) 1030-1120 Wed TR+8 Wk2-9,11-13 | |||||||||||
| 1100 | |||||||||||||||||||||
| 1130 | COMMON LEC (SCL2) 1130-1320 Thu LT1A Wk1-9,11-13 | 10201 LAB (FAIA) 1130-1320 Fri SWLAB3 Odd Weeks | 10202 LAB (FAIB) 1130-1320 Fri SWLAB3 Even Weeks | ||||||||||||||||||
| 1200 | |||||||||||||||||||||
| 1230 | 10189 TUT (FCSI) 1230-1320 Mon TR+8 Wk2-9,11-13 | 10192 TUT (FCS3) 1230-1320 Fri TR+7 Wk2-9,11-13 | 10193 TUT (FCS4) 1230-1320 Fri TR+8 Wk2-9,11-13 | ||||||||||||||||||
| 1300 | |||||||||||||||||||||
| 1330 | 10198 TUT (FDAE) 1330-1420 Mon TR+15 Wk2-9,11-13 | 10199 TUT (FDAF) 1330-1420 Mon TR+16 Wk2-9,11-13 | 10201 TUT (FAIA) 1330-1420 Fri TR+17 Wk2-9,11-13 | 10202 TUT (FAIB) 1330-1420 Fri TR+18 Wk2-9,11-13 | |||||||||||||||||
| 1400 | |||||||||||||||||||||
| 1430 | 10189 LAB (FCSI) 1430-1620 Mon SWLAB3 Even Weeks | 10190 LAB (FCS1) 1430-1620 Mon SWLAB3 Even Weeks | 10191 LAB (FCS2) 1430-1620 Mon SWLAB3 Odd Weeks | 10183 TUT (FCSC) 1430-1520 Mon TR+18 Wk2-9,11-13 | 10184 TUT (FCSD) 1430-1520 Mon TR+16 Wk2-9,11-13 | 10181 LAB (FCSA) 1430-1620 Wed SWLAB1 Odd Weeks | 10182 LAB (FCSB) 1430-1620 Wed SWLAB1 Even Weeks | 10183 LAB (FCSC) 1430-1620 Thu SWLAB1 Odd Weeks | 10184 LAB (FCSD) 1430-1620 Thu SWLAB1 Even Weeks | 10196 LAB (FDAC) 1430-1620 Thu SWLAB2 Odd Weeks | 10197 LAB (FDAD) 1430-1620 Thu SWLAB2 Even Weeks | ||||||||||
| 1500 | |||||||||||||||||||||
| 1530 | 10185 TUT (FCSE) 1530-1620 Wed TR+5 Wk2-9,11-13 | 10186 TUT (FCSF) 1530-1620 Wed TR+6 Wk2-9,11-13 | |||||||||||||||||||
| 1600 | |||||||||||||||||||||
| 1630 | 10194 TUT (FDAA) 1630-1720 Wed TR+5 Wk2-9,11-13 | 10195 TUT (FDAB) 1630-1720 Wed TR+6 Wk2-9,11-13 | |||||||||||||||||||
| 1700 | |||||||||||||||||||||
| 1730 | 10204 TUT (SR1) 1730-1820 Thu TR+5 Wk2-9,11-13 | ||||||||||||||||||||
| 1800 | |||||||||||||||||||||
Other offerings
Other relevant mods
- SC1001Introduction to Computational Thinking & Programming
- SC1004Linear Algebra for Computing
- SC1005Digital Logic
- SC1006Computer Organisation & Architecture
- SC1007Data Structures & Algorithms
- SC1008C & C++ Programming
- SC1124Math 2: Discrete Structures for Computing
- SC1304Artificial Intelligence for Social Good
- SC1305Linear Algebra
Planning guides
View all articlesBDE · 17 min read
Complete NTU BDE List: Every BDE Category and Module (AY2026/2027 Semester 2)
A complete NTU BDE list by category: languages, business, computing, humanities, arts, science, engineering, and more. Updated for AY2026/2027 Semester 2. Browse all 780+ BDE modules on NTUMods.
STARS · 9 min read
How to Bid for a BDE at NTU (STARS Registration Guide)
Step-by-step: how NTU STARS bidding works, what to do in Round 1 vs Round 2, and how to still get your BDE during add/drop if your first choice fills up.
STARS · 9 min read
NTU STARS Guide 2026: Registration Rounds, Bidding & Planner Tips
NTU STARS planner guide — how bidding rounds work, how to prepare a shortlist before registration opens, and what to do when a module fills up. Includes a free STARS planner tool.