Java Programming: Arrays, Lists, and Structured Data

所在平台: Coursera

课程主页: https://www.coursera.org/learn/java-programming-arrays-lists-data

课程评论:没有评论

第一个写评论        关注课程

课程简介

课程名称:Java编程:数组、列表和结构化数据 概述:本课程基于您在“Java编程:用软件解决问题”中学到的软件工程技能,学习新的数据结构。您将利用这些数据结构构建更复杂的程序,使用Java的面向对象特性。课程结束时,您将编写一个加密程序和一个破解加密算法的程序。 完成课程后,您将能够: 1. 从文件中读取和写入数据; 2. 解决涉及数据文件的问题; 3. 对数据进行定量分析(例如,查找最大值、最小值、平均值); 4. 在数组或ArrayList中存储和操作数据; 5. 结合多个类解决更大的问题; 6. 在Java中使用可迭代对象和集合(包括映射)。 课程大纲: 1. **欢迎**:欢迎您参加“Java编程:数组、列表和结构化数据”课程,了解本课程概况及可用支援资源。 2. **密码学:保持信息秘密**:学习密码学基础,了解从罗马帝国到20世纪初的简单密码系统,掌握处理字符串和使用数组的基本技能。 3. **GladLibs:模板故事**:开发一个单词频率计数器,并利用ArrayList和HashMap将单词替换到文档模板中,学习灵活的面向对象设计。 4. **Web服务器日志:从日志到访问**:了解Web服务器日志如何存储访客信息,学习编写程序访问用户IP地址、访问日期和时间等信息。 5. **迷你项目:维杰尼尔密码**:开发一个破解维杰尼尔密码的程序,在不同阶段逐步改进,掌握如何处理更复杂的问题,运用HashSet和HashMap。 该课程将帮助您建立坚实的编程基础,并提高您在Java编程中的能力,鼓励您以创造性的方式解决问题。

课程大纲

Name:Welcome

Description: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.

Name:Cryptography: Keeping Information Secret

Description: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.

Name:GladLibs: Stories from Templates

Description: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!

Name:Web Server Logs: From Logs to Visits

Description: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.

Name:MiniProject: Vigenère Cipher

Description: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.

课程评论(0条)

课程详情

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.

课程标签

0人关注该课程

主题相关的课程