Skip to content

Commit 0c219b6

Browse files
committed
[feat] update interview/base/day-5.md
1 parent ab1c929 commit 0c219b6

File tree

3 files changed

+121
-0
lines changed

3 files changed

+121
-0
lines changed

docs/interview/base/04-interview.md

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
# 面试复习 Day 4
2+
3+
## 一些手写题目
4+
5+
### 1. 手写 Promise.all
6+
7+
```javascript
8+
function promiseAll(promises) {
9+
return new Promise((resolve, reject) => {
10+
const len = promises.length;
11+
if (len === 0) return resolve([]);
12+
const result = [];
13+
let count = 0;
14+
for (let i = 0; i < len; i++) {
15+
Promise.resolve(promises[i]).then((promise) => {
16+
result[i] = promise;
17+
count++;
18+
19+
if (count === len) {
20+
resolve(result);
21+
}
22+
}, (err) => reject(err));
23+
}
24+
})
25+
}
26+
```
27+
28+
### 2. 手写 两个字符串数字相加,输出字符串
29+
30+
```javascript
31+
function add(str1, str2) {
32+
const str1Len = str1.length;
33+
const str2Len = str2.length;
34+
if (str1Len === '0' || str2Len === '0') return str1 || str2;
35+
36+
const minLen = Math.min(str1Len, str2Len);
37+
38+
const result = [];
39+
let carry = 0;
40+
41+
const str1Arr = str1.split('').reverse();
42+
const str2Arr = str2.split('').reverse();
43+
44+
for (let i = 0; i < minLen; i++) {
45+
const sum = parseInt(str1Arr[i]) + parseInt(str2Arr[i]) + carry;
46+
result.push(`${sum % 10}`);
47+
carry = Math.floor(sum / 10);
48+
}
49+
50+
const restArr = str1Arr.length > str2Arr.length ? str1Arr : str2Arr;
51+
for (let i = minLen; i < restArr.length; i++) {
52+
const sum = parseInt(restArr[i]) + carry;
53+
result.push(`${sum % 10}`);
54+
carry = Math.floor(sum / 10);
55+
}
56+
57+
if (carry) {
58+
result.push(`${carry}`);
59+
}
60+
61+
return result.reverse().join('');
62+
}
63+
```
64+
65+

docs/interview/base/05-interview.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# 面试复习 Day 5
2+
3+
## 一些算法题

docs/interview/base/claude-case.md

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
# Claude与Trae研发提效
2+
3+
最近看 Claude 3.7 Sonnet 很火,之前注册过 Claude 一直没尝试过写代码,索性体验一下,感受AI带来的震撼效果。
4+
5+
## Claude 注册
6+
请参考其他教程「Google 搜索:claude 注册」
7+
8+
## Claude 使用
9+
登陆后,直接看到一个页面,可以直接进行提问。
10+
![客户端对话首页](https://files.mdnice.com/user/15096/6a3a5d1f-e497-4048-a34a-ff33507e643d.png)
11+
例如:“使用React Native新建一个日记APP”;“使用React,写一个天气页面, 显示当前温度,当天气温范围,未来一周气温预测,根据实际天气展示对应的动画,如:下雨天展示一朵云正在下雨的动画效果,大晴天就显示一个太阳带墨镜的动态效果,打雷就显示两朵乌云碰撞摩擦生电的效果,诸如此类”。
12+
13+
### 写 React Native 页面
14+
左侧会有 thinking 过程与解释,右侧会直接生成代码,因为是 React Native 框架,所以需要把代码放在自己的项目中执行看效果。按照 thinking 过程完成必要的第三方包安装「npm、pod」,然后保存重新执行。
15+
16+
![Claude 页面](https://files.mdnice.com/user/15096/e70ec0af-03ac-42c7-807f-46639bb7bd53.png)
17+
18+
![React Native执行效果](https://files.mdnice.com/user/15096/6a4f532a-a4b5-425e-9daf-0db032fade1b.png)
19+
20+
可以看到页面效果还不错,可以根据自己的想法进行调整。
21+
22+
![调整一](https://files.mdnice.com/user/15096/ae62ca5e-2dd2-49c3-9e84-2abff162c0a1.png)
23+
24+
![调整二](https://files.mdnice.com/user/15096/c2e6a48e-c75f-4109-a1b1-249913630965.png)
25+
功能方面需要细化的请详细描述补充,样式问题可以多考虑几点后一起发送让其修改,因为每次都会生成全量的页面代码。
26+
不过多次生成的代码都会有版本存储。
27+
28+
![版本控制](https://files.mdnice.com/user/15096/435e1892-50b0-4eac-83aa-07af8d2af504.png)
29+
30+
### 写 React 天气页面
31+
对于 React 项目,Claude可以直接展示效果,甚至可以把设计稿或者原型图上传进去,然后得到更细致的结果。
32+
33+
![](https://files.mdnice.com/user/15096/8d7fdf0b-079d-409c-a482-d2b01a857485.jpg)
34+
生成的React代码使用了 Tailwindcss,如果有拆分代码的需求,可以让 Claude 帮忙拆分子组件,抽离后放在React业务代码中使用。
35+
36+
使用 Claude 可以帮忙处理一些所见即所得的工作,具体的业务逻辑也可以通过描述进行生成,不过未曾尝试,帐号已被限制至19:00后可用。有需要可以订阅 pro。
37+
38+
## Trae 使用
39+
使用 Trae 有两种模式,一种是 chat,一种是 builder。
40+
41+
![](https://files.mdnice.com/user/15096/654e20f5-95d9-4760-84a8-7de3a9c080f4.png)
42+
43+
builder模式打开一个空白文件夹就可以提出你的诉求,进行项目创建,按照thinking过程中出现的脚本,点击右侧的运行按钮即可在终端执行。
44+
45+
![](https://files.mdnice.com/user/15096/79470b54-3ebe-4045-a38b-516985785466.png)
46+
47+
chat模式下可以随时在项目代码中选中一些片段进行咨询,这种与常规的 copilot 一致。
48+
49+
![](https://files.mdnice.com/user/15096/f0a5fd78-833d-493e-910c-951cb4f581ea.png)
50+
51+
暂未进行复杂项目的研发,一些 demo 案例在 Trae 和 Claude 的配合下很快实现,尝鲜一下。
52+
53+
--- DONE

0 commit comments

Comments
 (0)