Skip to content

Commit ad56abc

Browse files
committed
refactor: refactor outline and docs level
Signed-off-by: Zhenchen Wang <[email protected]>
1 parent 181f5dd commit ad56abc

21 files changed

+57
-208
lines changed

docs/ch0/index.md

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1 @@
1-
# S0: 无意识使用阶段
21

3-
**目标** :认识到开源已融入生活,了解自己日常使用的开源软件。
4-
5-
## 一、开源无处不在
6-
7-
1. **举例说明** :列举现代科技各领域广泛运用的开源软件实例,像以 Linux 为基础构建的 Android 系统,广受欢迎的浏览器 Chrome 和 Firefox,实用的办公工具 LibreOffice,还有开发人员常用的开发工具诸如 Git、Vim、Node.js 等。通过这些具体案例,展现开源软件在日常生活中的广泛存在。
8-
2. **说明开源如何成为现代技术的基石** :深入阐述开源在诸如手机、服务器、云计算、大数据、人工智能等前沿领域所发挥的基础性、支撑性作用,揭示开源对于现代技术发展的不可或缺性。
9-
10-
## 二、参考任务
11-
12-
1. **列举自己日常使用的一些开源软件,并尝试查找它们的开源主页或仓库** :引导读者主动去发现身边的开源软件,并通过查找其开源主页或仓库,进一步深入了解这些软件背后的开源生态。
13-
2. **调研一个开源项目的背景,了解它在行业中的应用(如 Linux、Kubernetes)** :促使读者选取典型开源项目,如 Linux 或 Kubernetes,深入探究其起源、发展历程,以及在所属行业中的广泛应用,加深对开源项目影响力的认知。

docs/ch1/index.md

Lines changed: 0 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,32 +1 @@
1-
# S1: 了解开源阶段
21

3-
**目标** :初步了解开源的概念、历史、许可证及其影响,培养开源安全意识。
4-
5-
## 一、开源是什么
6-
7-
1. **开源是一种软件类型** :明确开源软件的定义,并与闭源软件进行对比,凸显二者差异。
8-
2. **开源是一种软件开发方式** :列举开源协作的典型特点,例如社区贡献模式、代码开放共享机制等。
9-
3. **开源是一种协作与创新模式** :详细阐释如何借助开源途径达成跨组织的协作,实现技术层面的创新突破。
10-
4. **开源是一种产业生态** :深入剖析开源如何推动技术持续演进,以及构建商业生态的过程,可参考红帽的成功范例。
11-
12-
## 二、开源历史
13-
14-
1. **时间线和重要节点** :梳理从 Unix 到 GNU,再到 Linux、Git 直至 Github 的发展脉络,标注关键转折点。
15-
2. **自由软件运动与 Richard Stallman 的贡献** :阐述自由软件运动的发起背景、发展历程,以及 Richard Stallman 在其中发挥的关键引领作用。
16-
3. **开源运动的兴起与 Open Source Initiative (OSI)** :讲述开源运动蓬勃兴起的时代背景,以及 Open Source Initiative (OSI) 在推动开源规范化进程中的重要地位。
17-
18-
## 三、开源许可证
19-
20-
1. **介绍许可证的作用和开源定义(Open Source Definition)** :系统阐述许可证在开源生态中的核心功能,精准解读开源定义的内涵。
21-
2. **常见开源许可证**
22-
3. **如何选择许可证** :结合实际项目案例,讲解依据项目特性、发展规划等需求,恰当选择适配的许可证类型。
23-
24-
## 四、开源安全
25-
26-
1. **开源软件供应链安全** :以 Log4j 漏洞案例为切入点,深度剖析漏洞在开源软件供应链中的传播原理与路径。
27-
2. **安全最佳实践** :介绍开源软件的审计和管理策略,例如借助工具 Dependabot 进行有效管控。
28-
29-
## 五、参考任务
30-
31-
1. 创建 Github 帐号,初始化一个简单的项目(如 README 文件)。
32-
2. 为该项目选择一个开源许可证,并撰写一段文字解释选择理由。
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.

docs/ch2/index.md

Lines changed: 0 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1 @@
1-
# S2: 拥抱开源阶段
21

3-
**目标** :开始使用开源软件,初步了解开源项目的协作模式。
4-
5-
## 一、开源协作模式
6-
7-
1. **如何贡献** :详细讲解 Issue、Pull Request、Code Review 等操作在开源项目协作中的关键作用与具体流程,助力参与者明确自身在开源项目中的发力点。
8-
2. **工具与平台** :介绍如 Github、Gitlab 等主流开源项目托管平台的功能特性、使用优势,方便开发者高效管理开源项目。
9-
3. **开源项目工作流** :全面梳理从发现 Issue 问题,到提交 Pull Request 解决问题,再到 Code Review 审核完善的一整套完整流程,让参与者对开源协作有清晰的认知框架。
10-
11-
## 二、开源软件的替代方案
12-
13-
**举例** :列举日常生活与工作场景中,可用开源软件替换闭源软件的典型案例,如以 Linux 系统替换 Windows 系统,用 LibreOffice 替代 Microsoft Office,拿 GIMP 取代 Photoshop,使 VLC 成为商业播放器的替代之选,展现开源软件的实用性。
14-
15-
**选择适合的发行版**
16-
17-
* **桌面发行版** :推荐适合桌面端使用的 Ubuntu、Deepin、OpenEuler 等发行版,阐述其各自的界面风格、功能特性、适配场景,帮助用户精准选型。
18-
* **服务器发行版** :介绍 CentOS Stream、Alpine 等常用于服务器领域的发行版优势,如稳定性、资源占用、运维便利性等,指导用户按需抉择。
19-
20-
## 三、活动组织
21-
22-
1. **了解和参与开源社区活动** :列举如 Linux 101、OpenEuler 社区活动等具有代表性的开源社区活动,阐述参与其中可获得的知识增长、人脉拓展、技术交流等诸多益处。
23-
2. **通过参与活动了解更多开源工具和资源** :强调借助社区活动这一平台,挖掘更多实用的开源工具、优质资源,拓宽技术视野。
24-
25-
## 四、参考任务
26-
27-
1. 找到一个可以替换闭源工具的开源软件,并将其应用到日常工作中。
28-
2. 记录切换开源软件的过程、问题和解决方案,撰写一篇博客分享。

docs/ch2/sec1/terminology.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
File renamed without changes.
File renamed without changes.

0 commit comments

Comments
 (0)