Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Accumulated updates #26

Merged
merged 12 commits into from
Feb 18, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions blog/authors.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
zidonghuayu:
name: 紫冬话语
title: 清华大学自动化系本科生宣传平台
url: https://mp.weixin.qq.com/mp/profile_ext?action=home&__biz=MzkxMzUyMzU4OQ==
image_url: /img/zidonghuayu.png
email: [email protected]
page: true
9 changes: 0 additions & 9 deletions docs/learning resources/repo/github.md

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

API 是应用程序编程接口(Application Programming Interface)的首字母缩写词,它是一种允许两个应用程序相互通信的软件中介。

:::tip[访问以下资源以了解更多信息]
:::info[访问以下资源以了解更多信息]

- [什么是 API?](https://aws.amazon.com/what-is/api/)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

REST,即表述性状态转移(REpresentational State Transfer),是一种用于在 Web 上提供计算机系统之间标准的软件架构风格,使得系统之间更容易相互通信。

:::tip[访问以下资源以了解更多信息]
:::info[访问以下资源以了解更多信息]

- [什么是 REST?](https://www.codecademy.com/article/what-is-rest)
- [什么是 REST API?](https://www.redhat.com/zh/topics/api/what-is-a-rest-api)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,34 +31,34 @@ set_target_properties(${PROJECT_NAME} PROPERTIES

- 为构建项目创建一个新目录。

```sh
```bash
mkdir build
cd build
```

- 使用 CMake 生成构建文件。

```sh
```bash
cmake ..
```

在这个例子中,`..` 表示 `CMakeLists.txt` 所在的父目录。构建文件将在 `build` 目录下生成。

- 使用生成的构建文件构建项目。

```sh
```bash
make
```

或者,在带有 Visual Studio 的 Windows 上,你可以使用:

```sh
```bash
msbuild MyProject.sln
```

CMake 可以轻松管理大型项目,定义自定义构建配置,并适用于许多不同的编译器和操作系统。这使得它成为管理 C++ 项目构建系统的广泛选择工具。

:::tip[访问以下资源以了解更多信息]
:::info[访问以下资源以了解更多信息]

- [CMake 官方教程](https://cmake.org/cmake/help/latest/guide/tutorial/index.html)
- [现代 CMake 入门](https://cliutils.gitlab.io/modern-cmake/)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

GitHub Actions 是 [GitHub](../repo/github.md) 提供的工作流程自动化工具,可用于自动化应用程序开发过程中的各种任务。

:::tip[访问以下资源以了解更多信息]
:::info[访问以下资源以了解更多信息]

- [GitHub Actions](https://github.com/features/actions)
- [GitHub Actions 文档](https://docs.github.com/zh/actions)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

CI/CD,即持续集成/持续部署(Continuous Integration/Continuous Deployment),是一种自动构建、测试和部署应用程序的方法,其主要目标是尽早发现问题,并提供更快的发布到生产环境。

:::tip[访问以下资源以了解更多信息]
:::info[访问以下资源以了解更多信息]

- [什么是 CI/CD?](https://about.gitlab.com/topics/ci-cd/)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

Docker 是一个用于处理容器化应用程序的平台。它的功能包括用于管理容器并与之交互的守护程序和客户端、用于存储映像的注册表,以及将所有功能打包在一起的桌面应用程序。

:::tip[访问以下资源以了解更多信息]
:::info[访问以下资源以了解更多信息]

- [什么是 Docker?](https://aws.amazon.com/cn/docker/)
- [Docker 文档](https://docs.docker.com/)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

容器(containers)和虚拟机(virtual machines)是为组织设置软件基础架构的两种最流行的方法。

:::tip[访问以下资源以了解更多信息]
:::info[访问以下资源以了解更多信息]

- [容器化与虚拟化:你需要了解的一切](https://middleware.io/blog/containerization-vs-virtualization/)

Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,15 @@

Markdown 是一种轻量级标记语言,可用于向纯文本文档添加格式元素。它通常用于在 Web 上编写,这样你不必编写繁琐的 HTML 标签。学习 Markdown 的主要目标是让你专注于内容,而不会被复杂的格式分心,并使你的内容更具可读性且更易于维护。

:::tip[访问以下资源以了解更多信息]
:::info[访问以下资源以了解更多信息]

- [GitHub 上写作和格式化的入门指南](https://docs.github.com/en/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github)

:::

Mermaid 是一种类似 Markdown 的脚本语言,用于通过 JavaScript 从文本生成图表。本文档使用它来生成流程图。

:::tip[访问以下资源以了解更多信息]
:::info[访问以下资源以了解更多信息]

- [Mermaid](https://mermaid.js.org/intro/)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

HTTP 是一种基于 `TCP/IP` 的应用层通信协议,它标准化了客户端和服务器之间的通信方式。它还定义了如何在互联网上请求和传输内容。

:::tip[访问以下资源以了解更多信息]
:::info[访问以下资源以了解更多信息]

- [你需要了解的 HTTP 的所有信息](https://cs.fyi/guide/http-in-depth)
- [什么是 HTTP?](https://www.cloudflare.com/zh-cn/learning/ddos/glossary/hypertext-transfer-protocol-http/)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ sidebar_label: '网络'

互联网(Internet)是一个由相互连接的计算机组成的全球网络,这些计算机通过一组标准化的协议进行通信。

:::tip[访问以下资源以了解更多信息]
:::info[访问以下资源以了解更多信息]

- [互联网如何工作?](https://cs.fyi/guide/how-does-internet-work)
- [互联网如何工作?](http://web.stanford.edu/class/msande91si/www-spr04/readings/week1/InternetWhitepaper.htm)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

WWebSockets 是服务器与客户端之间的双向通信协议,这意味着双方可以同时进行通信并交换数据。该协议从头开始定义了全双工通信。WebSockets 在将桌面级的丰富功能带入 Web 浏览器方面向前迈进了一步。

:::tip[访问以下资源以了解更多信息]
:::info[访问以下资源以了解更多信息]

- [WebSockets 简介](https://www.tutorialspoint.com/websockets/index.htm)
- [Socket.io 库](https://socket.io/zh-CN/)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

在对这些命令进行足够的接触和练习之后,在实践中使用它们会变得更加容易。

:::tip[访问以下资源以了解更多信息]
:::info[访问以下资源以了解更多信息]

- [命令行练习](https://cmdchallenge.com/)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

操作系统是管理计算机资源的程序,主要负责在各个程序之间合理分配资源。这些资源包括中央处理单元(CPU)、计算机内存、文件存储、输入/输出(I/O)设备以及网络连接等。

:::tip[访问以下资源以了解更多信息]
:::info[访问以下资源以了解更多信息]

- [什么是操作系统?](https://edu.gcfglobal.org/en/computerbasics/understanding-operating-systems/1/)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ sidebar_position: 1

终端(Terminals),也称为命令行(command lines)或控制台(consoles),允许我们在不使用图形用户界面的情况下完成和自动化计算机上的任务。

:::tip[访问以下资源以了解更多信息]
:::info[访问以下资源以了解更多信息]

- [命令行速成课程](https://developer.mozilla.org/zh-CN/docs/Learn/Tools_and_testing/Understanding_client-side_tools/Command_line)
- [你必须知道的 50+ Linux 命令](https://www.digitalocean.com/community/tutorials/linux-commands)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Conda 是一个开源的包管理器和环境管理系统,支持 Windows、mac

作为包管理器,Conda 帮助你查找和安装所需的软件包。如果需要一个要求特定 Python 版本的软件包,你无需切换至其他环境管理工具,因为 Conda 本身就是一个强大的环境管理器。通过简单的命令操作,你就可以创建一个完全独立的环境来运行特定版本的 Python,同时继续在正常环境中运行你常用的 Python 版本。

:::tip[访问以下资源以了解更多信息]
:::info[访问以下资源以了解更多信息]

- [Conda 文档](https://docs.conda.io/en/latest/)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

Python Poetry 是一个强大且高效的 Python 项目依赖项管理工具,旨在简化项目管理和打包流程,确保不同平台上的环境一致性。Poetry 采用声明式方法来管理依赖项,这意味着你只需定义所需的依赖,Poetry会自动处理其他细节。它采用 `pyproject.toml` 文件进行配置,取代了传统的 `setup.py`、`requirements.txt` 或 `MANIFEST.in` 文件,实现了更简洁统一的配置方式。Poetry 能够解析和安装带有版本控制的依赖项、管理虚拟环境,并支持将包发布到 PyPI,使其成为 Python 项目管理的综合解决方案。

:::tip[访问以下资源以了解更多信息]
:::info[访问以下资源以了解更多信息]

- [Poetry 文档](https://python-poetry.org/docs/)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ C 是一种通用的计算机编程语言,由 Dennis Ritchie 于 1970 年代

C++ 是一种功能强大的通用编程语言,可用于开发操作系统、浏览器和游戏等。C++ 支持不同的编程方式,如过程式(procedural)、面向对象(object-oriented)和函数式(functional)等,这使得 C++ 既强大又灵活。

:::tip[访问以下资源以了解更多信息]
:::info[访问以下资源以了解更多信息]

- [C 教程:W3Schools](https://www.w3schools.com/c/)
- [C 教程:TutorialsPoint](https://www.tutorialspoint.com/cprogramming/index.htm)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@ sidebar_label: 'C#'

# C\#

C#(发音为“C sharp”)是 Microsoft 开发的一种通用编程语言。它适用于多种任务,包括创建 Web 应用程序、游戏和移动应用程序等。
C#(发音为 “C sharp”)是 Microsoft 开发的一种通用编程语言。它适用于多种任务,包括创建 Web 应用程序、游戏和移动应用程序等。

:::tip[访问以下资源以了解更多信息]
:::info[访问以下资源以了解更多信息]

- [C# 学习路径](https://docs.microsoft.com/zh-cn/learn/paths/csharp-first-steps/?WT.mc_id=dotnet-35129-website)
- [C# 文档](https://learn.microsoft.com/zh-cn/dotnet/csharp/)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,15 @@

Python 是一种广泛使用的编程语言,结合了强类型和动态类型的特点。作为解释型语言,Python 代码在编写后可以立即执行,无需提前编译。Python 的语法灵活,支持函数式(functional)、过程式(procedural)和面向对象(programmatic)等多种编程范式。

:::tip[访问以下资源以了解更多信息]
:::info[访问以下资源以了解更多信息]

- [Python Tutorial:W3Schools](https://www.w3schools.com/python/)
- [Python 教程](https://docs.python.org//zh-cn/3/tutorial/index.html)
- [pip 文档](https://pip.pypa.io/en/stable/)

:::

:::note
:::tip

在学习了 Python 的基础知识之后,你可以开始学习[Poetry](../packages/poetry.md),一个 Python 依赖管理工具。

Expand Down
9 changes: 9 additions & 0 deletions docs/learning_resources/repo/github.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# GitHub

[GitHub](https://github.com/) 是一个基于 [Git](../vcs/git.md) 进行软件开发和[版本控制](../vcs/index.md)的网络代码托管平台。它不仅提供了 Git 的分布式版本控制和源代码管理功能,还拥有自己的特色功能。

:::info[访问以下资源以了解更多信息]

- [GitHub 文档](https://docs.github.com/zh/get-started/quickstart)

:::
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
# 软件测试

软件测试是确保软件满足要求且无缺陷的关键步骤,帮助开发者确认他们正在开发的软件符合预期。当测试成为开发流程的一部分,特别是在使用[持续集成工具(continuous integration)](../ci_cd/index.md),它们可以增强开发者的信心并预防代码回滚问题。
软件测试是确保软件满足要求且无缺陷的关键步骤,帮助开发者确认他们正在开发的软件符合预期。当测试成为开发流程的一部分,特别是在使用[持续集成(continuous integration)](../ci_cd/index.md)工具时,它们可以增强开发者的信心并预防代码回滚问题。

:::tip[访问以下资源以了解更多信息]
:::info[访问以下资源以了解更多信息]

- [什么是软件测试?](https://www.guru99.com/software-testing-introduction-importance.html)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

集成测试(Integration testing)是一类广泛的测试,其中多个软件模块作为一个组进行集成和测试。它旨在测试多个服务、资源或模块之间的交互,例如 [API](../apis/index.md) 与后端服务的交互,或服务与数据库的交互。

:::tip[访问以下资源以了解更多信息]
:::info[访问以下资源以了解更多信息]

- [什么是集成测试?](https://www.guru99.com/integration-testing.html)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ sidebar_position: 1

单元测试(Unit testing)是对软件中各个独立单元(如模块、函数或方法、例程等)进行测试,以确保它们的功能正确无误。这种底层测试能够保证较小组件的功能稳定,同时减轻上层测试的负担。通常,开发人员会在开发过程中编写这些测试,并以自动化测试的形式运行。

:::tip[访问以下资源以了解更多信息]
:::info[访问以下资源以了解更多信息]

- [单元测试教程](https://www.guru99.com/unit-testing-guide.html)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

Git 是一个免费的开源分布式版本控制系统,旨在快速高效地处理从小型到超大型项目的在内的所有项目。

:::tip[访问以下资源以了解更多信息]
:::info[访问以下资源以了解更多信息]

- [Learn Git Branching](https://learngitbranching.js.org/?locale=zh_CN)
- [Git 教程](https://www.w3schools.com/git/)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

版本控制系统(version control systems),也称源代码管理系统(source control systems),帮助开发者跟踪和控制代码随时间的变化。这些系统通常具备对代码进行原子性修改、从特定点创建分支(branch)或分叉(fork)以及以及比较不同版本代码等功能。它们对于确定代码更改的责任人、内容、时间和原因非常有帮助。

:::tip[访问以下资源以了解更多信息]
:::info[访问以下资源以了解更多信息]

- [什么是版本控制?](https://www.atlassian.com/git/tutorials/what-is-version-control)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

VS Code(Visual Studio Code)是由 Microsoft 开发的功能强大的轻量级源代码编辑器。它内置了对 JavaScript、TypeScript 和 Node.js 的支持,并具有一个丰富的扩展生态系统,支持多种编程语言和运行环境。学习使用 VS Code 的主要目的在于提升编写代码、运行调试和[版本控制](vcs/index.md)的工作效率。

:::tip[访问以下资源以了解更多信息]
:::info[访问以下资源以了解更多信息]

- [Visual Studio Code 文档](https://code.visualstudio.com/docs)

Expand Down
Loading