Creative Software Design - 2021 Fall
- Instructor: Yoonsang Lee
- Teaching Assistant: Jeongmin Lee
- Undergraduate Mentor: Yang Soobin
- Time / Location:
- Live online lectures and labs due to the COVID-19 pandemic.
- Tue 09:00-11:00 / Online (originally 508 IT.BT Building) - Lecture
- Wed 15:00-17:00 / Online (originally 508 IT.BT Building) - Lab 1
- Thu 13:00-15:00 / Online (originally 508 IT.BT Building) - Lab 2
Course Outline
In this course the students will learn the fundamentals of C++ language and practice programming skills by writing many exercise programs in a good coding style. They will also learn and practice using development tools and editors in Unix / Linux environment. Through homework and exercise problems the students will study how to write concise programs in more efficient and more creative ways.
- Through C ++, students will learn key concepts of object-oriented programming such as classes, inheritance, and polymorphism, and have the ability to develop simple text-based programs. They will also learn about references, pointers, dynamic allocation, and so on, to get a deeper understanding of how computer programs work.
Schedule
Week | Date | Topics | Reference Materials |
---|---|---|---|
1 | Sep 01 / Sep 02 | 1 - Course Intro / 1 - Lab1 - Environment Setting, 1 - Lab2 - G++, Make, GDB / Assignment 1 |
1 - Lab1 - Vim Advanced |
2 | Sep 07 / Sep 08, 09 | 2 - Review of C Pointer, Const and Structure / Assignment 2 | 2 - Lab - Gitlab |
3 | Sep 14 / Sep 15, 16 | 3 - Differences Between C and C++ / Assignment 3 | |
4 | Sep 28 / Sep 29, 30 | 4 - Dynamic Memory Allocation, References / Assignment 4 | |
5 | Oct 05 / Oct 06, Oct 07 | 5 - Compilation and Linkage, CMD Args / Assignment 5 | |
6 | Oct 12 / Oct 13, 14 | 6 - Class / Assignment 6 | |
7 | Oct 19 / Oct 20, 21 | 7 - Standard Template Library(STL) / Assignment 7 | |
8 | Oct 26 / Oct 27, 28 | Midterm Exam Week | |
9 | Nov 02 / Nov 03, 04 | 8 - Inheritance, Const & Class / Assignment 8 | |
10 | Nov 09 / Nov 10, 11 | 9 - Polymorphism 1 / Assignment 9 | |
11 | Nov 16 / Nov 17, 18 | 10 - Polymorphism 2 / Assignment 10 | |
12 | Nov 23 / Nov 24, 25 | 11 - Copy Constructor, Operator Overloading / Assignment 11 | |
13 | Nov 30 / Dec 01, Dec 02 | 12 - Template / Assignment 12 | |
14 | Dec 07 / Dec 08, 09 | 13 - Exception Handling / Assignment 13 | |
15 | Dec 14 | Final Exam |