mirror of
https://github.com/PKUFlyingPig/cs-self-learning.git
synced 2026-06-23 01:47:13 +08:00
fixes are made based on suggestions
This commit is contained in:
parent
6dbd8a059e
commit
fb20caf31f
3 changed files with 37 additions and 16 deletions
|
|
@ -6,18 +6,28 @@
|
|||
- Prerequisites: None
|
||||
- Programming Languages: Java
|
||||
- Difficulty: 🌟🌟
|
||||
- Class Hour: less than 20 hours
|
||||
- Class Hour: less than 15 hours
|
||||
|
||||
MIT's introductory Java course covers what you need to get started quickly with Java, from setting up environments to explaining the basic concepts of Java. No prior programming knowledge is required. Those who want to advance after this course can learn [MIT 6.005/6.031](../../软件工程/6031.en.md).
|
||||
MIT's Java introductory course is suitable for beginners with no programming background. Each session consists of one hour of lecture (knowledge explanation) and one hour of lab (code practice), with a total of seven sessions. Although it's a fourteen-hour course, the learning process is fast, and you can complete it in about a day. It feels quite manageable for beginners.
|
||||
|
||||
The course content includes:
|
||||
|
||||
1. Rapid introduction to fundamental concepts needed for Java: the Java compilation principle, the classic "Hello world" code, and the eight primitive types in the first session.
|
||||
2. How to maintain good code style: emphasizing naming conventions, indentation, and proper use of spaces in the third session.
|
||||
3. Debugging techniques: Using Eclipse warnings, assertions in the sixth session, and handling exceptions in the seventh session.
|
||||
|
||||
The assignments in the lab are not very difficult, and many of them are discussed in the following lecture after each lab session. The key point to note is that coding is a skill that requires practical experience. For beginners, the most important aspect of learning to code is to practice and write code regularly, whether in lectures or lab sessions.
|
||||
|
||||
For those who want to advance after completing this course, you can consider studying [MIT 6.005/6.031](../../软件工程/6031.en.md).
|
||||
|
||||
## Course Resources
|
||||
|
||||
- Course Website: [Introduction To Programming In Java](https://ocw.mit.edu/courses/6-092-introduction-to-programming-in-java-january-iap-2010/pages/syllabus/)
|
||||
- Textbooks: [How to Think Like a Computer Scientist](https://www.greenteapress.com/thinkapjava/)
|
||||
- Assignments: https://ocw.mit.edu/courses/6-092-introduction-to-programming-in-java-january-iap-2010/pages/assignments/
|
||||
- Course Website: [Winter 2010](https://ocw.mit.edu/courses/6-092-introduction-to-programming-in-java-january-iap-2010/pages/syllabus/)
|
||||
- Textbooks: [How to Think Like a Computer Scientist](https://greenteapress.com/wp/think-java/)
|
||||
- Assignments: <https://ocw.mit.edu/courses/6-092-introduction-to-programming-in-java-january-iap-2010/pages/assignments/>
|
||||
|
||||
## Personal Resources
|
||||
|
||||
@SinanTang Assignment solutions to the online course MIT 6.092 Introduction to Programming in Java (Jan 2010) are maintained in [MIT6092-Introduction-to-Programming-in-Java_problem-sets](https://github.com/SinanTang/MIT6092-Introduction-to-Programming-in-Java_problem-sets)
|
||||
All the resources and assignments used by @SinanTang are maintained in [SinanTang/MIT6092-Introduction-to-Programming-in-Java_problem-sets - GitHub](https://github.com/SinanTang/MIT6092-Introduction-to-Programming-in-Java_problem-sets).
|
||||
|
||||
@sirrice All the material including source code in this course are maintained in [6092](https://github.com/sirrice/6092)
|
||||
All the resources and assignments used by @sirrice are maintained in [sirrice/6092 - GitHub](https://github.com/sirrice/6092).
|
||||
|
|
|
|||
|
|
@ -6,17 +6,28 @@
|
|||
- 先修要求:无
|
||||
- 编程语言:Java
|
||||
- 课程难度:🌟🌟
|
||||
- 预计学时:少于 20 小时
|
||||
- 预计学时:少于 15 小时
|
||||
|
||||
MIT的Java入门课程,包括了你快速入门Java所需的知识,从配环境到Java的基础概念讲解。不需要有任何编程基础。学完这门课想要进阶的可以学习 [MIT 6.005/6.031](../../软件工程/6031.md) 。
|
||||
MIT 的 Java 入门课程,不需要有任何编程基础也可以开始学习。一节课是一小时 Lec (知识点讲解)+一小时 Lab (代码训练),整个课程是七节课。虽说是十四个小时的课时,真正学起来却很快,一天其实差不多就能结束。感觉是比较适合新手上手的强度。
|
||||
|
||||
课程内容包括了:
|
||||
|
||||
1. 快速入门 Java 所需的基础知识概念,如第一节课的 Java 编译原理、经典代码 "Hello world" 、八大基础类型等。
|
||||
2. 如何拥有良好的代码风格,如第三节课强调的命名规范、缩进、空格使用等。
|
||||
3. 如何 Debug :第六节课的使用 Eclipse warning, Assertion 和第七节课的 Exception 等。
|
||||
|
||||
Lab 的 Assignment 倒不是很难,很多前一节课的 Assignment 后一节课 Lec 上就会讲到。唯一需要注意的就是代码是一个很注重实践的技能,新手入门写代码最重要的就是多写多练,无论是 Lec 还是 Lab 上的代码都不要偷懒不写。
|
||||
|
||||
学完这门课想要进阶的可以学习 [MIT 6.005/6.031](../../软件工程/6031.md) 。
|
||||
|
||||
## 课程资源
|
||||
- 课程网站:[官网](https://ocw.mit.edu/courses/6-092-introduction-to-programming-in-java-january-iap-2010/pages/syllabus/)
|
||||
- 课程教材:[How to Think Like a Computer Scientist - 如何像计算机科学家一样思考](https://www.greenteapress.com/thinkapjava/)
|
||||
- 课程作业:https://ocw.mit.edu/courses/6-092-introduction-to-programming-in-java-january-iap-2010/pages/assignments/
|
||||
|
||||
- 课程网站:[Winter 2010](https://ocw.mit.edu/courses/6-092-introduction-to-programming-in-java-january-iap-2010/pages/syllabus/)
|
||||
- 课程教材:[How to Think Like a Computer Scientist - 如何像计算机科学家一样思考](https://greenteapress.com/wp/think-java/)
|
||||
- 课程作业:<https://ocw.mit.edu/courses/6-092-introduction-to-programming-in-java-january-iap-2010/pages/assignments/>
|
||||
|
||||
## 资源汇总
|
||||
|
||||
@SinanTang MIT 6.092 Introduction to Programming in Java 所有的作业解答存放在 [MIT6092-Introduction-to-Programming-in-Java_problem-sets](https://github.com/SinanTang/MIT6092-Introduction-to-Programming-in-Java_problem-sets)
|
||||
@SinanTang 在学习这门课中用到的所有资源和作业实现都汇总在 [SinanTang/MIT6092-Introduction-to-Programming-in-Java_problem-sets - GitHub](https://github.com/SinanTang/MIT6092-Introduction-to-Programming-in-Java_problem-sets) 中。
|
||||
|
||||
@sirrice 这门课程的所有材料包括源代码存放在 [6092](https://github.com/sirrice/6092)
|
||||
@sirrice 在学习这门课中用到的所有资源和作业实现都汇总在 [sirrice/6092 - GitHub](https://github.com/sirrice/6092) 中。
|
||||
|
|
|
|||
|
|
@ -165,8 +165,6 @@ nav:
|
|||
- 编程入门:
|
||||
- "MIT-Missing-Semester": "编程入门/MIT-Missing-Semester.md"
|
||||
- "Sysadmin DeCal": "编程入门/DeCal.md"
|
||||
- Java 语言:
|
||||
- "MIT 6.092: Introduction To Programming In Java": "编程入门/Java/MIT 6.092.md"
|
||||
- Python 语言:
|
||||
- "UCB CS61A: Structure and Interpretation of Computer Programs": "编程入门/Python/CS61A.md"
|
||||
- "CS50P: CS50's Introduction to Programming with Python": "编程入门/Python/CS50P.md"
|
||||
|
|
@ -177,6 +175,8 @@ nav:
|
|||
- "AmirKabir University of Technology AP1400-2: Advanced Programming": "编程入门/cpp/AUT1400.md"
|
||||
- "Stanford CS106L: Standard C++ Programming": "编程入门/cpp/CS106L.md"
|
||||
- "Stanford CS106B/X": "编程入门/cpp/CS106B_CS106X.md"
|
||||
- Java 语言:
|
||||
- "MIT 6.092: Introduction To Programming In Java": "编程入门/Java/MIT 6.092.md"
|
||||
- Rust 语言:
|
||||
- "Stanford CS110L: Safety in Systems Programming": "编程入门/Rust/CS110L.md"
|
||||
- "KAIST CS431: Concurrent Programming": "编程入门/Rust/cs431.md"
|
||||
|
|
|
|||
Loading…
Reference in a new issue