- Level Foundation
- المدة 14 ساعات hours
- الطبع بواسطة Duke University
-
Offered by
عن
Build on the software engineering skills you learned in "Java Programming: Solving Problems with Software" by learning new data structures. Use these data structures to build more complex programs that use Java's object-oriented features. At the end of the course you will write an encryption program and a program to break your encryption algorithm. After completing this course, you will be able to: 1. Read and write data from/to files; 2. Solve problems involving data files; 3. Perform quantitative analyses of data (e.g., finding maximums, minimums, averages); 4. Store and manipulate data in an array or ArrayList; 5. Combine multiple classes to solve larger problems; 6. Use iterables and collections (including maps) in Java.الوحدات
Introduction to the Course
1
Videos
- Welcome
1
Readings
- Programming Resources
Implementing the Caesar Cipher
1
Assignment
- Implementing the Caesar Cipher
9
Videos
- A Brief History of Cryptography
- Introduction
- Creating and Manipulating Strings
- Counting Loops
- Character Class
- Developing an Algorithm
- Translating into Code
- Testing and Debugging
- Summary
2
Readings
- Module Learning Outcomes / Resources
- Programming Exercise: Implementing the Caesar Cipher
Breaking the Caesar Cipher
1
Assignment
- Breaking the Caesar Cipher
6
Videos
- Introduction
- Arrays
- Random Numbers and Arrays
- Counting with Arrays
- Developing an Algorithm
- Summary
1
Readings
- Programming Exercise: Breaking the Caesar Cipher
Object Oriented Caesar Cipher
1
Assignment
- Object Oriented Caesar Cipher
6
Videos
- Introduction
- Rewriting with Encapsulation
- Fields
- Visibility
- Constructors
- Summary
1
Readings
- Programming Exercise: Object Oriented Caesar Cipher
Review
1
Assignment
- Cryptography
1
Readings
- End of Module Survey
Telling a Random Story
1
Assignment
- Telling a Random Story
6
Videos
- Introduction
- High-level Design Concepts
- ArrayList
- ArrayList for Unique Words
- ArrayList Advantages and Issues
- Summary
2
Readings
- Module Learning Outcomes / Resources
- Programming Exercise: Telling a Random Story
Using and Improving GladLibs
1
Assignment
- Using and Improving GladLibs
7
Videos
- Introduction
- Brittle Code
- Adding New Labels
- HashMap
- HashMap for Unique Words
- HashMap for Flexible Design
- Summary
2
Readings
- Programming Exercise: Using GladLibs
- Programming Exercise: Improving GladLibs
Review
1
Assignment
- GladLibs
Reading Log Files
1
Assignment
- Reading Log Files
5
Videos
- Introduction
- Understanding Log Files
- LogEntry Class with toString
- Parsing Log Files
- Summary
2
Readings
- Module Learning Outcomes / Resources
- Programming Exercise: Reading Log Files
Finding Unique IP Addresses
1
Assignment
- Finding Unique IP Addresses
5
Videos
- Introduction
- Developing an Algorithm
- Translating to Code
- Equality
- Summary
1
Readings
- Programming Exercise: Finding Unique IP Addresses
Counting Website Visits
1
Assignment
- Counting Website Visits
5
Videos
- Introduction
- Developing an Algorithm
- Translating to Code
- HashMap for Unique IPs
- Summary
1
Readings
- Programming Exercise: Counting Website Visits
Review
1
Assignment
- Web Server Logs
Breaking the Vigenère Cipher
3
Assignment
- Known Language and Key Length
- Unknown Key Length
- Breaking the Vigenère Cipher
4
Videos
- Introduction
- Known Language and Key Length
- Unknown Key Length
- Unknown Language
5
Readings
- Module Resources
- Programming Exercise: Known Language and Key Length
- Programming Exercise: Unknown Key Length
- Programming Exercise: Unknown Language, Unknown Key Length
- Extend Your Program
Auto Summary
Enhance your software engineering skills with "Java Programming: Arrays, Lists, and Structured Data." This foundational IT & Computer Science course, taught by Coursera, focuses on advanced data structures to build complex Java programs. Over 840 minutes, learn to read/write data, perform quantitative analysis, and manipulate arrays and ArrayLists. Ideal for beginners, with subscription options: Starter, Professional, and Paid. Perfect for those looking to deepen their Java proficiency and tackle real-world problems.

Andrew D. Hilton

Robert Duvall

Owen Astrachan

Susan H. Rodger