Programming Languages

Java Programming: Principles of Software Design

Solve real world problems with Java using multiple classes.

Duke University Online Course Highlights
  • 4 weeks long
  • 4-8 hours per week
  • Learn for FREE, Upgradable
  • Self-Paced
  • Taught by: Robert Duvall, Owen Astrachan, Andrew D. Hilton, Susan H. Rodger
  • View Course Syllabus

Online Course Details:

Learn how to create programming solutions that scale using Java interfaces. Recognize that software engineering is more than writing code – it also involves logical thinking and design. By the end of this course you will have written a program that analyzes and sorts earthquake data, and developed a predictive text generator.

After completing this course, you will be able to:

1. Use sorting appropriately in solving problems;
2. Develop classes that implement the Comparable interface;
3. Use timing data to analyze empirical performance;
4. Break problems into multiple classes, each with their own methods;
5. Determine if a class from the Java API can be used in solving a particular problem;
6. Implement programming solutions using multiple approaches and recognize tradeoffs;
7. Use object-oriented concepts including interfaces and abstract classes when developing programs;
8. Appropriately hide implementation decisions so they are not visible in public methods; and
9. Recognize the limitations of algorithms and Java programs in solving problems.
10. Recognize standard Java classes and idioms including exception-handling, static methods, java.net, and java.io packages.

Wondering what to expect from the UML, Java, and Patterns development course? Our review outlines the key components and learning outcomes.

SKILLS YOU WILL GAIN

  • Programming Principles
  • Interfaces
  • Software Design
  • Java Programming

Course Expert

Share
Published by
Course Expert

Recent Posts

The Role of Knowing Your International IQ Score in Choosing the Right Career Path

Choosing the right career path can be a daunting task, especially with the myriad of…

3 months ago

How HR Software Can Empower Your Business

Believe it or not, the concept of human resources has existed for more than 100…

3 months ago

Web3 in Gaming: Revolutionizing the Industry

Web3 managed to change the gaming industry by leveraging blockchain technology. It offers a decentralized…

3 months ago

Tips for Overcoming Homesickness in College

College is often fun and is filled with lots of activities, especially in the first…

3 months ago

Web3 vs Web2: The Future of the Internet Explained

The internet has evolved significantly, from static Web1 pages to the dynamic, user-driven Web2 we…

4 months ago

Disaster Recovery Explained: What You Need to Know

Disaster recovery (DR) is the process which an organization can recover and keep working after…

4 months ago