Merge pull request #98 from FallenYing/master

update
This commit is contained in:
camera-2018
2023-08-03 19:33:09 +08:00
committed by GitHub
4 changed files with 17 additions and 9 deletions

View File

@@ -105,7 +105,7 @@ const customElements = [
export default withMermaid({ export default withMermaid({
lang: 'zh-CN', lang: 'zh-CN',
title: "HDU-CS-WIKI", title: "HDU-CS-WIKI",
description: "HDU计算机科学讲义", description: "HDU 计算机科学讲义",
lastUpdated: true, lastUpdated: true,
head: [['script', { async: "async", src: 'https://umami.hdu-cs.wiki/script.js', "data-website-id": "3f11687a-faae-463a-b863-6127a8c28301", "data-domains": "wiki.xyxsw.site,hdu-cs.wiki" }]], head: [['script', { async: "async", src: 'https://umami.hdu-cs.wiki/script.js', "data-website-id": "3f11687a-faae-463a-b863-6127a8c28301", "data-domains": "wiki.xyxsw.site,hdu-cs.wiki" }]],
themeConfig: { themeConfig: {

View File

@@ -7,8 +7,8 @@
本模块将以有趣的任务的形式替你检测是否你已经达到了基本掌握 C 语言语法和一些特性的目的 本模块将以有趣的任务的形式替你检测是否你已经达到了基本掌握 C 语言语法和一些特性的目的
- 该任务模块旨在帮助巩固 C 语言基础知识,传递一些编程思维,入门学习请看 [3.4.4C 语言前置概念学习](3.4.4C%E8%AF%AD%E8%A8%80%E5%89%8D%E7%BD%AE%E6%A6%82%E5%BF%B5%E5%AD%A6%E4%B9%A0.md) - 该任务模块旨在帮助巩固 C 语言基础知识,传递一些编程思维,入门学习请看 [3.4.4C 语言前置概念学习](3.4.4C%E8%AF%AD%E8%A8%80%E5%89%8D%E7%BD%AE%E6%A6%82%E5%BF%B5%E5%AD%A6%E4%B9%A0.md)
- 你可以通过使用 git工具 `git clone https://github.com/E1PsyCongroo/HDU_C_Assignments.git` 获取任务 - 你可以通过使用 git 工具 `git clone https://github.com/E1PsyCongroo/HDU_C_Assignments.git` 获取任务
- 或者访问 https://github.com/E1PsyCongroo/HDU_C_Assignments 学习 - 或者访问 [https://github.com/E1PsyCongroo/HDU_C_Assignments](https://github.com/E1PsyCongroo/HDU_C_Assignments) 学习
## 任务一做前必查 ## 任务一做前必查

View File

@@ -126,4 +126,10 @@ cs61a 绝对是一个挑战,但是我们都希望你学习并且成功,所
3. 如果输入了命令后回车没有任何反应,请试试将测试代码的 python3 变为 python 或者 py 进行操作,如果还没有解决请仔细阅读 61A hw 部分的 Using ok链接一般位于 HW 01 的开头。 3. 如果输入了命令后回车没有任何反应,请试试将测试代码的 python3 变为 python 或者 py 进行操作,如果还没有解决请仔细阅读 61A hw 部分的 Using ok链接一般位于 HW 01 的开头。
4. 如果在解决问题的过程中遇到了问题,那就多读几遍题目吧,题干中或许会给出 `Hint`,这可能很有用 4. 如果在解决问题的过程中遇到了问题,那就多读几遍题目吧,题干中或许会给出 `Hint`,这可能很有用
这是 cs61a 的官网[https://cs61a.org/](https://cs61a.org/)
如果你觉得全英教学对你来说比较困难,可以参考[2.5 以理工科的方式阅读英语](../2.高效学习/2.5以理工科的方式阅读英语.md)
也可以看看我们本地化之后的 cs61a 课程,我们尽可能准确和符合中文阅读习惯地翻译了 textbook但我们保留了作业中的英语绝对不是因为偷懒来锻炼同学们的英语能力
英文学习的痛苦比不上接触国外优秀课程带来的快乐,请保持初心,砥砺前进,祝愿同学们都能有一个有趣的学习体验 🥰 英文学习的痛苦比不上接触国外优秀课程带来的快乐,请保持初心,砥砺前进,祝愿同学们都能有一个有趣的学习体验 🥰

View File

@@ -28,7 +28,7 @@
本文写于 2023 年 4 月2023 年以来AIChatGPT、Copilot、MidJourney正在颠覆每个领域。可能在不远的将来大部分的前后端开发都能通过 AI 自动生成 99% 的代码,然后人工审核、校对、修改剩下的 1%。 本文写于 2023 年 4 月2023 年以来AIChatGPT、Copilot、MidJourney正在颠覆每个领域。可能在不远的将来大部分的前后端开发都能通过 AI 自动生成 99% 的代码,然后人工审核、校对、修改剩下的 1%。
### <strong>步入正题 - 何为前后端-通俗认识</strong> ### <strong>步入正题 - 何为前后端 - 通俗认识</strong>
<strong>前端</strong> <strong>前端</strong>
@@ -40,17 +40,17 @@
为什么有前端?因为光有后端是不行的哈哈哈。 为什么有前端?因为光有后端是不行的哈哈哈。
举个例子,网上有很多软件都可以修改支付宝上的「余额」,如果只有 APP 表面,即前端,那不是人均黑客,人均首 举个例子,网上有很多软件都可以修改支付宝上的「余额」,如果只有 APP 表面,即前端,那不是人均黑客,人均首
所以一个软件的关键数据,肯定不是在用户侧(即前端)的。需要有这么一个东西,来存储数据(存储数据的地方叫数据库),来解析用户的请求,这就是后端。 所以一个软件的关键数据,肯定不是在用户侧(即前端)的。需要有这么一个东西,来存储数据(存储数据的地方叫数据库),来解析用户的请求,这就是后端。
<strong>例子</strong> <strong>例子</strong>
举个详细的例子,购物软件上点了下单并支付,这时候前端就会发送一个网络请求,告诉后端:<em>用户某某某,买了什么东西,价格和数量是多少,收货地址是多少。。。</em> 举个详细的例子,购物软件上点了下单并支付,这时候前端就会发送一个网络请求,告诉后端:<em>用户某某某,买了什么东西,价格和数量是多少,收货地址是多少。。。</em>
后端收到了信息,先解析,然后修改数据库中存储的关键信息,比如新建一个订单信息,把商品的数量-1 等等,再把下单的结果告诉给前端。前端收到信息后,就会渲染页面,提示「下单成功」! 后端收到了信息,先解析,然后修改数据库中存储的关键信息,比如新建一个订单信息,把商品的数量 -1 等等,再把下单的结果告诉给前端。前端收到信息后,就会渲染页面,提示「下单成功」!
### <strong>深入 - 何为前后端-技术剖析</strong> ### <strong>深入 - 何为前后端 - 技术剖析</strong>
在了解了前后端的宏观概念后,我们继续来感受一下背后的技术细节吧! 在了解了前后端的宏观概念后,我们继续来感受一下背后的技术细节吧!
@@ -59,9 +59,11 @@
干讲技术细节实在太无趣了,我们直接上手实战吧! 干讲技术细节实在太无趣了,我们直接上手实战吧!
不要怕,我「实战」,你「感谢」就行! 不要怕,我「实战」,你「感谢」就行!
::: warning 📌 ::: warning 📌
假设我们要做一个「留言板」 假设我们要做一个「留言板」
::: :::
#### 2.3.1 明确需求 #### 2.3.1 明确需求
开发程序前(无论是自己独立开发、还是以后工作),一定要先明确需求。 开发程序前(无论是自己独立开发、还是以后工作),一定要先明确需求。
@@ -83,7 +85,7 @@
比如控制留言的字体、大小、颜色,边框、动画、特效。 比如控制留言的字体、大小、颜色,边框、动画、特效。
要在不同的软件载体上「作画」,需要不同的编程语言/技术,比如网页需要 htlm+css安卓 APP 需要 AndroidJavaIOS 软件是 Swift。 要在不同的软件载体上「作画」,需要不同的编程语言/技术,比如网页需要 html+css安卓 APP 需要 AndroidJavaIOS 软件是 Swift。
<em>(拓展:还有一些技术能够做到跨平台,比如通过某种技术把浏览器包装成一个 APP就能只出同时支持浏览器和 APP 的</em><em>前端</em><em>;比如创建新的第三方前端框架,能把程序员写的代码转换成原生的 IOS、安卓 APP</em> <em>(拓展:还有一些技术能够做到跨平台,比如通过某种技术把浏览器包装成一个 APP就能只出同时支持浏览器和 APP 的</em><em>前端</em><em>;比如创建新的第三方前端框架,能把程序员写的代码转换成原生的 IOS、安卓 APP</em>