- Platform
- edX
- Provider
- University of British Columbia
- Effort
- 8 to 10 hours per week
- Length
- 6 weeks
- Language
- English
- Credentials
- Paid Certificate Available
- Part of
- Course Link
Overview
More complex program requirements do not have to mean design will be complex as well. Simple additions to the design method can bring about code that is easy to write, well tested and easy to maintain.
Programs can be shorter and better tested by learning how to capture common data and control structures using abstraction.
Building on the core methods covered in How to Code: Simple Data, this programming course, part of the Software Development MicroMasters program, quickly expands to cover more complex programs on more complex data. Towards the end of the course, you will design programs that even experienced developers would find challenging.
You will also learn how to design search programs. You will design a program to solve Sudoku puzzles and will be able to design many other puzzle solvers as well.
Learners who enroll in the Verified track will receive staff grading for the course project and increased interaction with the instructor and staff.
What You Will Learn
Gregor Kiczales
More complex program requirements do not have to mean design will be complex as well. Simple additions to the design method can bring about code that is easy to write, well tested and easy to maintain.
Programs can be shorter and better tested by learning how to capture common data and control structures using abstraction.
Building on the core methods covered in How to Code: Simple Data, this programming course, part of the Software Development MicroMasters program, quickly expands to cover more complex programs on more complex data. Towards the end of the course, you will design programs that even experienced developers would find challenging.
You will also learn how to design search programs. You will design a program to solve Sudoku puzzles and will be able to design many other puzzle solvers as well.
Learners who enroll in the Verified track will receive staff grading for the course project and increased interaction with the instructor and staff.
What You Will Learn
- How to identify commonalities in data definitions and functions
- How to avoid repetition using abstraction
- How to design functions that operate on graphs
- How to design programs that search a given problem space to find a valid solution
Gregor Kiczales