How to Code: Complex Data
About this Course
As your program requirements get more complex, you will find that simple additions to the design method make it easy to write well-structured and well-tested code that is easy to maintain. By learning how to capture common data and control structures using abstraction, your programs will get shorter and better tested. Building on the core methods from 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. Learner Testimonial "It's a great course and maybe one of the most important topics to master if you're a programmer (any level). This course will teach you how to design better, cleaner and faster programs." - Previous StudentCreated by: University of British Columbia
Level: Introductory

Related Online Courses
In this course, you'll explore the basic structure of a web application, and how a web browser interacts with a web server. You'll be introduced to the Hypertext Transfer Protocol (HTTP)... more
Este es un curso introductorio para aprender programación con Java. Java es uno de los lenguajes de programación más usados actualmente. A lo largo de las cinco semanas se introducen pr... more
Este curso online da un repaso por los distintos menús de la herramienta Word, revisando a fondo sus distintas opciones e incidiendo en las funcionalidades de la herramienta que no son intuitivas, ... more
For effective cost control in cloud computing services, it is quite important to analyze and manage cloud cost and leverage cloud cost management tools to help discover the cause(s) of these... more
This programming course takes a unique approach, as it focuses on learning a systematic programming method rather than a programming language. This practical approach will help you channel your... more