Java Programming: Solving Problems with Software

This course, offered by Coursera, was developed by Duke University. It is comparable to the introductory Java course taught to Duke students, and it can be applied to multiple specialization certificate programs. It takes a little over 13 hours to complete and is designed as a 4-week curriculum.

Created by: Owen Astrachan

Produced in 2015

icon
What you will learn

  • Editing, compiling and running Java programs
  • Conditionals and loops
  • Java API documentation
  • Debugging and the scientific method
  • Practical application of solving problems with Java programs
  • Utilizing test cases
  • Class creation and use
  • Techniques to use multiple methods in a single program

icon
Quality Score

Content Quality
/
Video Quality
/
Qualified Instructor
/
Course Pace
/
Course Depth & Coverage
/

Overall Score : 96 / 100

icon
Live Chat with CourseDuck's Co-Founder for Help

Need help deciding on a game design course? Or looking for more detail on Owen Astrachan's Java Programming: Solving Problems with Software? Feel free to chat below.
Join CourseDuck's Online Learning Discord Community

icon
Course Description

Learn to code in Java and improve your programming and problem-solving skills. You will learn to design algorithms as well as develop and debug programs. Using custom open-source classes, you will write programs that access and transform images, websites, and other types of data. At the end of the course you will build a program that determines the popularity of different baby names in the US over time by analyzing comma separated value (CSV) files. After completing this course you will be able to:1. Edit, compile, and run a Java program;2. Use conditionals and loops in a Java program;3. Use Java API documentation in writing programs. 4. Debug a Java program using the scientific method;5. Write 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; and8. Use divide-and-conquer design techniques for a program that uses multiple methods.

icon
Pros

icon
Cons

    • Course challenges students to ensure that lessons lead to a deep understanding of concepts and applications.
    • Forums and online peer resources empower students to overcome challenges and learn more in the process.
    • When used towards specialization, course helps acquire valuable professional certifications.
    • This may be an introductory course, but it is not designed for beginners. A coding or computer science background is expected for students to succeed.
    • Assignments are challenging to a degree disproportionate with the difficulty of the lessons.
    • Time to complete challenges may dramatically eclipse time required to get through lectures.

icon
Instructor Details

placeholder

Owen Astrachan is a Professor of the Practice in the Department of Computer Science at Duke University. He has taught computer science at Duke for more than 25 years and taught high school for seven years before starting at Duke. In recent years, Professor Astrachan has worked with colleagues to redesign Duke's introductory computer science course to reach a broader range of students at Duke from a variety of backgrounds and fields. He also leads the Computer Science Principles project, which is completely grounded in a philosophy of engendering interest in new and previously untargeted/uninterested students, broadening participation in computing. Professor Astrachan received an NSF Career award, the NSF CISE Distinguished Education Fellow award, received two teaching awards at Duke and a teaching award when teaching on a sabbatical leave at the University of British Columbia. Professor Astrachan holds a PhD in Computer Science and a Master of Arts in Teaching (Mathematics), both from Duke University.

error finding courses_global jsonerror finding courses_global jsonerror finding courses_global json

icon
Reviews

4.8

465 total reviews

5 star 4 star 3 star 2 star 1 star
% Complete
% Complete
% Complete
% Complete
% Complete