mirror of
https://github.com/PKUFlyingPig/cs-self-learning.git
synced 2026-06-23 01:47:13 +08:00
translate Decal && AUT
This commit is contained in:
parent
b7cf68b480
commit
62d624e90a
3 changed files with 56 additions and 0 deletions
0
docs/必学工具/workflow.en.md
Normal file
0
docs/必学工具/workflow.en.md
Normal file
34
docs/编程入门/AUT1400.en.md
Normal file
34
docs/编程入门/AUT1400.en.md
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
# Amirkabir University of Technology 1400-2: Advanced Programming Course
|
||||
|
||||
## Course Introduction
|
||||
|
||||
- Affiliated University: Amirkabir University of Technology
|
||||
- Prerequisites: None
|
||||
- Programming Language: C++
|
||||
- Course Difficulty: 🌟🌟🌟🌟🌟
|
||||
- Estimated Study Time: 50 hours
|
||||
|
||||
This is an accidentally discovered C++ course. The quality of the homework assignments is outstanding, with each being independently structured and simple, complemented by comprehensive unit tests, making it highly suitable for learning C++ programming. The course includes a total of 7 homework assignments, as follows:
|
||||
|
||||
1. Implement a Matrix class and related functions.
|
||||
|
||||
2. Implement a program that simulates the operation of a cryptocurrency client/server.
|
||||
|
||||
3. Implement a Binary Search Tree (BST).
|
||||
|
||||
4. Implement SharedPtr and UniquePtr smart pointers in C++.
|
||||
|
||||
5. Use inheritance and polymorphism to implement multiple classes.
|
||||
|
||||
6. Solve 4 problems using the STL library.
|
||||
|
||||
7. There's a Python project, for those interested.
|
||||
|
||||
The course homepage was not found, but the source code for the homework (named AP1400-2-HW) can be found on GitHub.
|
||||
|
||||
## Course Resources
|
||||
|
||||
- Course Website: None
|
||||
- Course Code: <https://github.com/courseworks>
|
||||
- Course Textbook: None
|
||||
- Course Assignments: 7 homework assignments
|
||||
22
docs/编程入门/DeCal.en.md
Normal file
22
docs/编程入门/DeCal.en.md
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
# UCB: Sysadmin DeCal
|
||||
|
||||
## Course Introduction
|
||||
|
||||
- Affiliated University: UCB
|
||||
- Prerequisites: None
|
||||
- Programming Language: Shell
|
||||
- Course Difficulty: 🌟🌟🌟
|
||||
- Estimated Study Time: 20 hours
|
||||
|
||||
This is an introductory course on Linux from UCB, which I find more systematic and clearer than MIT's similarly aimed open course, Missing Semester. This is the main reason I recommend it. While Missing Semester seems more like a course for filling gaps for students who have started programming but haven't systematically used these tools, DeCal is more suitable for absolute beginners. The twelve-week course covers Linux basics, shell programming (including tmux and vim), package management, services, basic computer networks, network services, security (key management), Git, Docker, Kubernetes, Puppet, and CUDA. It's ideal for newcomers to understand and get started with the Linux environment.
|
||||
|
||||
A slight drawback is that some course assignments require operations on remote servers, like exercises on ssh, which need UCB internal account access. However, most assignments can be practiced by setting up a virtual machine and using tools like Xshell or directly using a Linux desktop version. After completing the full course and assignments, you should have a basic understanding of Linux.
|
||||
|
||||
To compensate for the inability to use remote servers and to familiarize with the Linux command line, I recommend [bandit](https://overthewire.org/wargames/bandit/). Bandit is a Wargame from OverTheWire, providing a free practice range for CTF enthusiasts. The first 15 levels of bandit are basic Linux operations without any CTF knowledge. These exercises perfectly supplement the parts of DeCal that are inaccessible to external students (mainly remote connections, file permissions, etc.).
|
||||
|
||||
## Course Resources
|
||||
|
||||
- Course Website: [Official Site](https://decal.ocf.berkeley.edu/)
|
||||
- Course Videos: Available on the official course website, [Bilibili](https://www.bilibili.com/video/BV1rs4y1T7zJ/?share_source=copy_web) has an incomplete transfer that only includes the first part.
|
||||
- Course Textbook: No specified textbook, but each week's labs contain enough reading material for in-depth study.
|
||||
- Course Assignments: Available on the official course website.
|
||||
Loading…
Reference in a new issue