Information Technology
Hands on Training icon
Hands On Training
Hands on Training icon

Java Programming: Principles of Software Design

Course Cover

5

(8)

compare button icon

Course Features

icon

Duration

13 hours

icon

Delivery Method

Online

icon

Available on

Limited Access

icon

Accessibility

Desktop, Laptop

icon

Language

English

icon

Subtitles

English

icon

Level

Beginner

icon

Teaching Type

Self Paced

icon

Video Content

13 hours

Course Description

Multiple classes can be used to solve real-world problems using Java. Java interfaces allow you to create scaling programming solutions. Software engineering involves more than just writing code. It also requires logical thinking, design and analysis. This course will teach you how to create a program to analyze and sort earthquake data and how to generate predictive text.

You will be able: You will be able to use sorting correctly in solving problems. Create classes that implement the Comparable interface. Analyze empirical performance using timing data; Split problems into multiple classes with different methods. Determine whether a Java API class can be used to solve a specific problem. You can use multiple methods to solve programming problems and you should be able to recognize tradeoffs. When developing programs, use object-oriented concepts such as interfaces and abstract classes; 8. Implementation decisions should be hidden so that they aren't visible to the public. Recognize the limitations inherent in Java programs and algorithms when solving problems. 10. Recognize the standard Java classes and idioms, including exception-handling, static method, java.net and java.io packages.

Course Overview

projects-img

International Faculty

projects-img

Post Course Interactions

projects-img

Instructor-Moderated Discussions

Skills You Will Gain

What You Will Learn

Use sorting appropriately in solving problems

Develop classes that implement the Comparable interface

Use timing data to analyze empirical performance

Break problems into multiple classes, each with their own methods

Determine if a class from the Java API can be used in solving a particular problem

Implement programming solutions using multiple approaches and recognize tradeoffs

Use object-oriented concepts including interfaces and abstract classes when developing programs

Course Instructors

Author Image

Robert Duvall

Lecturer

Robert Duvall is a Lecturer in the Department of Computer Science at Duke University. Having taught computer science at Duke for over 15 years, Professor Duvall has helped to transform introductory c...
Author Image

Owen Astrachan

Instructor

Professor of the Practice
Author Image

Andrew D. Hilton

Associate Professor of the Practice

Andrew Hilton is an Associate Professor of the Practice in the Department of Electrical and Computer Engineering in the Pratt School of Engineering at Duke University. He has taught at Duke since 201...
Author Image

Susan H. Rodger

Professor of the Practice

Susan H. Rodger is a Professor of the Practice in the Computer Science Department at Duke University. She received her PhD and M.S. in Computer Science from Purdue University, and her B.S. in Compute...

Course Reviews

Average Rating Based on 8 reviews

5.0

100%

Course Cover