添加 README.md
This commit is contained in:
@@ -0,0 +1,450 @@
|
||||
# DailyChallenge_APP
|
||||
|
||||
APP部 2026 纳新每日一题(开发基础 / 命令行 / Git / 微信小程序)
|
||||
|
||||
请克隆仓库以获取每日一题。
|
||||
|
||||
## 学习方式
|
||||
|
||||
每天一个文件夹(`Day_1 ~ Day_7`),**先看教程再动手做**,每天控制在 **30~60 分钟以内**:
|
||||
|
||||
1. 打开当天文件夹的 `README.md`
|
||||
2. 先阅读 `README.md` 中的内容,了解当天需要使用的知识
|
||||
3. 再完成任务,遇到问题时优先尝试查阅文档、搜索或使用 AI 辅助
|
||||
4. 将运行结果、截图或代码提交到**当日工单**评论区
|
||||
|
||||
---
|
||||
|
||||
## 提交方式
|
||||
|
||||
请在对应的每日工单下方“撰写”区域提交你的代码、运行截图或仓库链接,然后点击“评论”。
|
||||
|
||||
如果页面显示“登录 并参与到对话中”,请先点击“登录”并注册你的账户。
|
||||
|
||||
推荐从第一天开始保留自己的练习仓库,例如:
|
||||
|
||||
```text
|
||||
DailyChallenge_APP_你的名字/
|
||||
├── Day_1/
|
||||
├── Day_2/
|
||||
├── Day_3/
|
||||
├── ...
|
||||
└── Day_7/
|
||||
```
|
||||
|
||||
后续会学习使用 Git 管理这些代码。
|
||||
|
||||
---
|
||||
|
||||
## 课程安排
|
||||
|
||||
| 目录 | 内容 |
|
||||
| --- | --- |
|
||||
| `Day_1` | 环境配置:VS Code + 终端 + 微信开发者工具 |
|
||||
| `Day_2` | 命令行基础:目录、文件与路径 |
|
||||
| `Day_3` | Git 入门:clone / add / commit / pull / push |
|
||||
| `Day_4` | 小程序页面基础:WXML + WXSS |
|
||||
| `Day_5` | 小程序交互:事件、data 与 `setData` |
|
||||
| `Day_6` | 页面与组件:列表、页面跳转与简单数据展示 |
|
||||
| `Day_7` | 完成一个简单微信小程序 |
|
||||
|
||||
每个目录包含:当日题目(`README.md`)、学习资料、任务要求、提示以及参考解答。
|
||||
|
||||
> **定位目标:**这一阶段主要帮助零基础同学建立最基本的软件开发习惯,理解文件、终端、Git、页面、数据和事件之间的关系,并能够看懂和修改一个简单的小程序项目。
|
||||
|
||||
---
|
||||
|
||||
## 每日内容简介
|
||||
|
||||
### Day_1:搭建你的开发环境
|
||||
|
||||
完成最基本的开发环境配置:
|
||||
|
||||
- 安装 VS Code
|
||||
- 安装 Chrome / Edge
|
||||
- 安装微信开发者工具
|
||||
- 学会打开终端
|
||||
- 成功打开并运行第一个示例项目
|
||||
|
||||
当天不要求掌握编程知识。
|
||||
|
||||
目标只有一个:
|
||||
|
||||
> **让开发环境真正跑起来。**
|
||||
|
||||
---
|
||||
|
||||
### Day_2:程序员如何操作文件?
|
||||
|
||||
学习最基本的命令行概念:
|
||||
|
||||
```text
|
||||
当前目录
|
||||
文件
|
||||
文件夹
|
||||
绝对路径
|
||||
相对路径
|
||||
```
|
||||
|
||||
以及常见命令:
|
||||
|
||||
```bash
|
||||
cd
|
||||
dir / ls
|
||||
mkdir
|
||||
pwd
|
||||
```
|
||||
这一部分虽然看起来和 APP 开发没有直接关系,但今后使用:
|
||||
|
||||
```text
|
||||
Git
|
||||
Gradle
|
||||
Node.js
|
||||
开发服务器
|
||||
项目脚本
|
||||
```
|
||||
|
||||
都会频繁接触终端。
|
||||
|
||||
---
|
||||
|
||||
### Day_3:第一次使用 Git
|
||||
|
||||
学习最基本的版本控制流程:
|
||||
|
||||
```text
|
||||
工作区
|
||||
↓
|
||||
git add
|
||||
↓
|
||||
git commit
|
||||
↓
|
||||
本地仓库
|
||||
↓
|
||||
git push
|
||||
↓
|
||||
远程仓库
|
||||
```
|
||||
|
||||
主要使用:
|
||||
|
||||
```bash
|
||||
git clone
|
||||
git status
|
||||
git add .
|
||||
git commit -m "..."
|
||||
git pull
|
||||
git push
|
||||
```
|
||||
|
||||
当天任务是:
|
||||
|
||||
> 将自己的练习文件第一次提交到 Git 仓库。
|
||||
|
||||
暂时不要求掌握:
|
||||
|
||||
```text
|
||||
rebase
|
||||
reset
|
||||
cherry-pick
|
||||
复杂分支管理
|
||||
```
|
||||
|
||||
这些会在真正参与项目后逐步学习。
|
||||
|
||||
---
|
||||
|
||||
### Day_4:第一个微信小程序页面
|
||||
|
||||
正式进入微信小程序。
|
||||
|
||||
学习:
|
||||
|
||||
```text
|
||||
WXML
|
||||
WXSS
|
||||
页面结构
|
||||
基础组件
|
||||
文字
|
||||
图片
|
||||
按钮
|
||||
简单布局
|
||||
```
|
||||
|
||||
理解最重要的两个概念:
|
||||
|
||||
```text
|
||||
WXML = 页面结构
|
||||
WXSS = 页面样式
|
||||
```
|
||||
|
||||
当天任务可以完成一个:
|
||||
|
||||
> **APP 部个人介绍页面**
|
||||
|
||||
例如显示:
|
||||
|
||||
```text
|
||||
姓名
|
||||
专业
|
||||
兴趣方向
|
||||
想学习的技术
|
||||
联系方式
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Day_5:让页面“动起来”
|
||||
|
||||
学习小程序中的:
|
||||
|
||||
```text
|
||||
事件
|
||||
data
|
||||
setData
|
||||
bindtap
|
||||
```
|
||||
|
||||
理解:
|
||||
|
||||
```text
|
||||
用户点击
|
||||
↓
|
||||
触发事件
|
||||
↓
|
||||
执行函数
|
||||
↓
|
||||
数据发生变化
|
||||
↓
|
||||
界面更新
|
||||
```
|
||||
|
||||
当天任务:
|
||||
|
||||
> 完成一个简单的计数器或 Todo 页面。
|
||||
|
||||
例如:
|
||||
|
||||
```text
|
||||
当前次数:0
|
||||
|
||||
[ +1 ]
|
||||
[ -1 ]
|
||||
[ 重置 ]
|
||||
```
|
||||
|
||||
重点不是功能复杂,而是第一次理解:
|
||||
|
||||
> **页面其实是数据的一种表现。**
|
||||
|
||||
---
|
||||
|
||||
### Day_6:从一个页面到一个小应用
|
||||
|
||||
学习:
|
||||
|
||||
```text
|
||||
列表渲染
|
||||
wx:for
|
||||
条件渲染
|
||||
页面跳转
|
||||
简单的数据传递
|
||||
```
|
||||
|
||||
当天任务可以完成一个:
|
||||
|
||||
> **校园活动列表**
|
||||
|
||||
首页:
|
||||
|
||||
```text
|
||||
APP 部新人培训
|
||||
程序设计比赛
|
||||
社团招新宣讲
|
||||
```
|
||||
|
||||
点击某一个活动后进入详情页。
|
||||
|
||||
开始建立:
|
||||
|
||||
```text
|
||||
列表页
|
||||
↓
|
||||
详情页
|
||||
```
|
||||
|
||||
这种真实 APP 中非常常见的页面关系。
|
||||
|
||||
---
|
||||
|
||||
### Day_7:综合小测
|
||||
|
||||
最后一天不再学习大量新知识。
|
||||
|
||||
使用前几天的知识完成一个简单小程序,例如:
|
||||
|
||||
## Campus Helper Mini
|
||||
|
||||
可以包含:
|
||||
|
||||
```text
|
||||
首页
|
||||
活动列表
|
||||
活动详情
|
||||
个人页面
|
||||
```
|
||||
|
||||
最低要求:
|
||||
|
||||
- 至少两个页面
|
||||
- 使用 WXML
|
||||
- 使用 WXSS
|
||||
- 至少一次点击事件
|
||||
- 至少一次 `setData`
|
||||
- 至少一次列表渲染
|
||||
- 至少一次页面跳转
|
||||
- 使用 Git 提交代码
|
||||
- 编写简单的 `README.md`
|
||||
|
||||
Bonus:
|
||||
|
||||
- 本地缓存
|
||||
- 表单输入
|
||||
- 搜索 / 筛选
|
||||
- 调用简单的公开 API
|
||||
- 自定义组件
|
||||
|
||||
---
|
||||
|
||||
## 环境准备
|
||||
|
||||
`Day_1` 会详细介绍。
|
||||
|
||||
### 编辑器
|
||||
|
||||
VS Code
|
||||
|
||||
<https://code.visualstudio.com/>
|
||||
|
||||
### 微信开发者工具
|
||||
|
||||
微信官方提供的小程序开发环境。
|
||||
|
||||
后续的 WXML、WXSS、JavaScript 和页面调试都会在这里完成。
|
||||
|
||||
### 浏览器
|
||||
|
||||
推荐:
|
||||
|
||||
- Chrome
|
||||
- Edge
|
||||
|
||||
浏览器的开发者工具也是今后调试 Web 页面、接口和网络请求的重要工具。
|
||||
|
||||
### Git
|
||||
|
||||
用于:
|
||||
|
||||
```text
|
||||
获取代码
|
||||
保存修改记录
|
||||
提交作业
|
||||
团队协作
|
||||
```
|
||||
|
||||
后续 APP 部正式项目原则上都会使用 Git 进行代码管理。
|
||||
|
||||
---
|
||||
|
||||
## 与 Kotlin / KMP 学习的关系
|
||||
|
||||
APP 部目前主要包含:
|
||||
|
||||
```text
|
||||
微信小程序
|
||||
+
|
||||
Kotlin / Kotlin Multiplatform
|
||||
```
|
||||
|
||||
本仓库主要用于技术扫盲和小程序开发启蒙。
|
||||
|
||||
Kotlin / KMP 方向已有独立教程:
|
||||
|
||||
```text
|
||||
From Kotlin to Kotlin-Multiplatform
|
||||
```
|
||||
|
||||
本每日一题主要负责所有方向共同需要的基础能力:
|
||||
|
||||
```text
|
||||
开发环境
|
||||
命令行
|
||||
项目目录
|
||||
Git
|
||||
页面
|
||||
事件
|
||||
数据
|
||||
调试
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 关于 AI
|
||||
|
||||
欢迎使用 AI。
|
||||
|
||||
在现在的软件开发过程中,能够正确使用 AI 本身也是一种能力。
|
||||
|
||||
你可以让 AI:
|
||||
|
||||
```text
|
||||
解释报错
|
||||
解释一段代码
|
||||
寻找某个 API 的使用方法
|
||||
帮助检查代码
|
||||
给出修改建议
|
||||
```
|
||||
|
||||
但不建议直接:
|
||||
|
||||
```text
|
||||
复制题目
|
||||
↓
|
||||
让 AI 完整生成
|
||||
↓
|
||||
不阅读代码
|
||||
↓
|
||||
直接提交
|
||||
```
|
||||
|
||||
换句话说,
|
||||
|
||||
> **AI 生成的代码,我大概知道每一部分是在干什么;修改一个需求时,我知道应该去哪里改。**
|
||||
|
||||
如果你能够做到这一点,本阶段的学习目标就已经基本达成。
|
||||
|
||||
---
|
||||
|
||||
## 最后的目标
|
||||
|
||||
完成这一阶段以后,不要求你能够独立开发一个完整 APP。
|
||||
|
||||
希望你至少能够做到:
|
||||
|
||||
```text
|
||||
看到一个项目
|
||||
↓
|
||||
知道怎么把它 clone 下来
|
||||
↓
|
||||
知道应该在哪个目录运行
|
||||
↓
|
||||
能够阅读基本项目结构
|
||||
↓
|
||||
能够修改一个简单页面
|
||||
↓
|
||||
能够处理点击事件和页面数据
|
||||
↓
|
||||
能够通过 Git 提交自己的修改
|
||||
```
|
||||
|
||||
做到这些,你就已经具备继续学习微信小程序、Kotlin / KMP,以及参加 APP 部真实项目开发所需要的第一层基础。
|
||||
Reference in New Issue
Block a user