課程信息
4.7
1,131 個評分
202 個審閱
專項課程
100% 在線

100% 在線

立即開始,按照自己的計劃學習。
可靈活調整截止日期

可靈活調整截止日期

根據您的日程表重置截止日期。
初級

初級

完成時間(小時)

完成時間大約為24 小時

建議:4 weeks of study, 4-8 hours/week...
可選語言

英語(English)

字幕:英語(English), 韓語

您將獲得的技能

Data StructureCryptographyHash TableJava Programming
專項課程
100% 在線

100% 在線

立即開始,按照自己的計劃學習。
可靈活調整截止日期

可靈活調整截止日期

根據您的日程表重置截止日期。
初級

初級

完成時間(小時)

完成時間大約為24 小時

建議:4 weeks of study, 4-8 hours/week...
可選語言

英語(English)

字幕:英語(English), 韓語

教學大綱 - 您將從這門課程中學到什麼

1
完成時間(小時)
完成時間為 13 分鐘

Welcome

Welcome to “Java Programming: Arrays, Lists, and Structured Data”! We are excited that you are starting our course to learn how to write programs in Java, one of the most popular programming languages in the world. In this introductory module, you will hear an overview of this course and be introduced to the supporting resources available....
Reading
1 個視頻 (總計 3 分鐘), 1 個閱讀材料
Video1 個視頻
Welcome3分鐘
Reading1 個閱讀材料
Programming Resources10分鐘
完成時間(小時)
完成時間為 4 小時

Cryptography: Keeping Information Secret

In this module, you will learn about the basics of cryptography, the science of keeping information private and secure. You will learn about simpler cryptographic systems, which were used from the Roman Empire through the early 1900s. You will learn how to implement these ciphers, as well as how to break them. To solve these problems, you will work more with processing Strings, but also learn about arrays—a way to store an indexable sequence of elements. You will be able to: (1) combine Strings using concatenation; (2) build Strings within a Java program using StringBuilder; (3) use arrays to store and manipulate collections of data; (4) refactor your programs for improved organization using object-oriented principles; (5) and practice effective algorithm design....
Reading
21 個視頻 (總計 111 分鐘), 5 個閱讀材料, 4 個測驗
Video21 個視頻
Introduction5分鐘
Creating and Manipulating Strings5分鐘
Counting Loops9分鐘
Character Class5分鐘
Developing an Algorithm5分鐘
Translating into Code4分鐘
Testing and Debugging1分鐘
Summary40s
Introduction5分鐘
Arrays9分鐘
Random Numbers and Arrays11分鐘
Counting with Arrays10分鐘
Developing an Algorithm5分鐘
Summary3分鐘
Introduction2分鐘
Rewriting with Encapsulation3分鐘
Fields6分鐘
Visibility4分鐘
Constructors3分鐘
Summary57s
Reading5 個閱讀材料
Module Learning Outcomes / Resources10分鐘
Programming Exercise: Implementing the Caesar Cipher10分鐘
Programming Exercise: Breaking the Caesar Cipher10分鐘
Programming Exercise: Object Oriented Caesar Cipher10分鐘
End of Module Survey10分鐘
Quiz4 個練習
Implementing the Caesar Cipher12分鐘
Breaking the Caesar Cipher22分鐘
Object Oriented Caesar Cipher8分鐘
Cryptography28分鐘
2
完成時間(小時)
完成時間為 3 小時

GladLibs: Stories from Templates

After completing this module, you will be able (1) to program a word frequency counter to analyze any input text file, (2) to select and substitute words from a list into a document template using both ArrayList and HashMap, (3) to create new lists to use in templates, (4) to recognize brittle code, and (5) to improve code with flexible, object-oriented design. You will gain these skills in the framework of developing a randomly generated story that we call GladLibs. You may discover that bald lions change peoples’ lives, or that fluffy dinosaurs get things done in a jiffy. We hope you have fun developing your Java skills this week!...
Reading
13 個視頻 (總計 72 分鐘), 4 個閱讀材料, 3 個測驗
Video13 個視頻
High-level Design Concepts5分鐘
ArrayList6分鐘
ArrayList for Unique Words7分鐘
ArrayList Advantages and Issues7分鐘
Summary3分鐘
Introduction7分鐘
Brittle Code3分鐘
Adding New Labels4分鐘
HashMap7分鐘
HashMap for Unique Words4分鐘
HashMap for Flexible Design7分鐘
Summary3分鐘
Reading4 個閱讀材料
Module Learning Outcomes / Resources10分鐘
Programming Exercise: Telling a Random Story10分鐘
Programming Exercise: Using GladLibs10分鐘
Programming Exercise: Improving GladLibs10分鐘
Quiz3 個練習
Telling a Random Story12分鐘
Using and Improving GladLibs20分鐘
GladLibs38分鐘
3
完成時間(小時)
完成時間為 2 小時

Web Server Logs: From Logs to Visits

In this module, you will learn about how web server logs store information about visitors to a website, and you will write programs to access information like user IP address, date and time of access, and more. Using Java programs you write in this module, you will be able (1) to read information from a web server log, (2) to count the number of unique visitors to your website, and (3) to count the number of times each visitor uses your website....
Reading
15 個視頻 (總計 51 分鐘), 4 個閱讀材料, 4 個測驗
Video15 個視頻
Understanding Log Files6分鐘
LogEntry Class with toString5分鐘
Parsing Log Files3分鐘
Summary45s
Introduction1分鐘
Developing an Algorithm3分鐘
Translating to Code3分鐘
Equality4分鐘
Summary43s
Introduction1分鐘
Developing an Algorithm4分鐘
Translating to Code11分鐘
HashMap for Unique IPs1分鐘
Summary50s
Reading4 個閱讀材料
Module Learning Outcomes / Resources10分鐘
Programming Exercise: Reading Log Files10分鐘
Programming Exercise: Finding Unique IP Addresses10分鐘
Programming Exercise: Counting Website Visits10分鐘
Quiz4 個練習
Reading Log Files6分鐘
Finding Unique IP Addresses8分鐘
Counting Website Visits8分鐘
Web Server Logs20分鐘
4
完成時間(小時)
完成時間為 2 小時

MiniProject: Vigenère Cipher

In this module, you will develop a program to break the Vigenère Cipher, a more complex version of the Caesar Cipher. You will improve your program in three stages: first decrypting messages where you know the language and key length, then adding the capability to handle messages with unknown key length, then extending the program to handle messages in a range of possible languages. Through this project, you will be able (1) to effectively use HashSet and HashMap, (2) to expand an algorithm from solving a simpler problem to handle broader, more complex problems, and (3) to design and modify program code involving a more complex collection of classes, methods, and data. ...
Reading
4 個視頻 (總計 17 分鐘), 5 個閱讀材料, 3 個測驗
Video4 個視頻
Known Language and Key Length5分鐘
Unknown Key Length4分鐘
Unknown Language4分鐘
Reading5 個閱讀材料
Module Resources10分鐘
Programming Exercise: Known Language and Key Length10分鐘
Programming Exercise: Unknown Key Length10分鐘
Programming Exercise: Unknown Language, Unknown Key Length10分鐘
Extend Your Program10分鐘
Quiz3 個練習
Known Language and Key Length4分鐘
Unknown Key Length8分鐘
Breaking the Vigenère Cipher14分鐘
4.7
202 個審閱Chevron Right
職業方向

56%

完成這些課程後已開始新的職業生涯
工作福利

38%

通過此課程獲得實實在在的工作福利

熱門審閱

創建者 CTJul 20th 2018

The course was pretty challenging (and occasionally frustrating) for a novice programmer, but doable.\n\nI enjoyed the course, and came away with a greater understanding of computers and programming.

創建者 GBMar 30th 2017

Good and practical training approach to solve real worlds problems. Assignments and quizzes are quite challenging and interesting. Greatly motivates us towards programming and problem solving skills.

講師

Avatar

Andrew D. Hilton

Associate Professor of the Practice
Electrical and Computer Engineering
Avatar

Robert Duvall

Lecturer
Computer Science
Avatar

Owen Astrachan

Professor of the Practice
Computer Science
Avatar

Susan H. Rodger

Professor of the Practice
Computer Science

關於 Duke University

Duke University has about 13,000 undergraduate and graduate students and a world-class faculty helping to expand the frontiers of knowledge. The university has a strong commitment to applying knowledge in service to society, both near its North Carolina campus and around the world....

關於 Object Oriented Programming in Java 專項課程

This Specialization is for aspiring software developers with some programming experience in at least one other programming language (e.g., Python, C, JavaScript, etc.) who want to be able to solve more complex problems through objected-oriented design with Java. In addition to learning Java, you will gain experience with two Java development environments (BlueJ and Eclipse), learn how to program with graphical user interfaces, and learn how to design programs capable of managing large amounts of data. These software engineering skills are broadly applicable across wide array of industries....
Object Oriented Programming in Java

常見問題

  • 注册以便获得证书后,您将有权访问所有视频、测验和编程作业(如果适用)。只有在您的班次开课之后,才可以提交和审阅同学互评作业。如果您选择在不购买的情况下浏览课程,可能无法访问某些作业。

  • 您注册课程后,将有权访问专项课程中的所有课程,并且会在完成课程后获得证书。您的电子课程证书将添加到您的成就页中,您可以通过该页打印您的课程证书或将其添加到您的领英档案中。如果您只想阅读和查看课程内容,可以免费旁听课程。

  • No. Completion of a Coursera course does not earn you academic credit from Duke; therefore, Duke is not able to provide you with a university transcript. However, your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile.

還有其他問題嗎?請訪問 學生幫助中心