Jan 23rd 2017

Java Programming: Solving Problems with Software (Coursera)

Created by:Delivered by:

Building upon Duke’s “Programming and the Web for Beginners” course, you will grow in your ability to be a problem-solver and programmer by writing Java programs. We are excited that you've chosen to learn Java with us! You will soon be able to solve problems that you find interesting and useful by practicing a design process you will learn in this course.

Java concepts presented in this course include basic control flow; object-oriented concepts including classes and methods; custom, open-source classes; and a design-implement-debug process that you can continue to leverage as you build your experience and knowledge of programming principles.

The custom, open-source classes will provide a consistent application programming interface (API) so that you can write programs that access and transform images, websites, comma separated value (CSV) files and other data files using simple and accessible coding idioms built on the Java Iterable interface. You will learn to design, test, and debug programs and to find and read Java documentation that can serve as the basis for continued study of Java and programming.

After completing this course you will be able to:

1. Edit, compile, and run a Java program;

2. Use conditionals and for loops appropriately in a Java program;

3. Use Java API documentation in writing programs.

4. Debug a Java program using the scientific method;

5. Develop a Java method to solve a specific problem;

6. Develop a set of test cases as part of developing a program;

7. Create a class with multiple methods that work together to solve a problem; and

8. Use divide-and-conquer design techniques for a program that uses more than one method.

Java Programming: Solving Problems with Software is course 2 of 5 in the Java Programming: An Introduction to Software Specialization.

This Specialization covers the fundamentals of software development, focusing on a beginner-level introduction to rigorous problem-solving approaches while still embracing and extending traditional methods of computer science and software engineering. You’ll explore foundational concepts such as algorithm development, data representation, and debugging, using common tools such as HTML/CSS, Javascript, and Java. In the final Capstone Project, you’ll apply the skills you learned by creating a working recommender system that can help users find and choose items, such as films, books, or restaurants. Google has contributed real-world projects and the involvement of its engineers as guest lecturers to these courses.