编程开发新朋友 —— ChatGPT 和 NotionAI 实战

简介: 编程开发新朋友 —— ChatGPT 和 NotionAI 实战

废话少说,本篇带来借助 AI 帮助我们编程开发的 4 种场景实战,分别是:

1、AI 代码释义

2、AI 完善代码

3、AI 修正代码

4、AI 测试代码


问答来源于 ChatGPT 和 NotionAI,相信你一定能感受到 AIGC 的魅力~

喜欢三连,笔芯~


image.png


关联阅读:为什么我更推荐 Notion AI 胜于 ChatGPT ? - 掘金


AI 代码释义



⭐输入:

//解释下以下代码是干嘛的
function calculateDistance(x1, y1, x2, y2) {
  return Math.sqrt(Math.pow(x1 - x2, 2) + Math.pow(y1 - y2, 2));
}


ChatGPT



image.png


输出:

这段代码是计算两个点之间的欧几里得距离的函数。其中,(x1, y1) 和 (x2, y2) 表示两个点的坐标,函数通过使用勾股定理计算出它们之间的距离并返回结果。


NotionAI


image.png


输出:


函数calculateDistance(x1, y1, x2, y2) 用于计算两个点之间的距离,其中x1和y1表示第一个点的坐标,x2和y2表示第二个点的坐标。该函数使用勾股定理计算两点之间的距离,即通过求平方根来计算 (x1 - x2)^2 + (y1 - y2)^2 的值。


⭐输入:

//为以下函数写注释
const debounce = (func, wait) => {
    let timer
    return () => {
    clearTimeout(timer)
        timer = setTimeout(func, wait);
    }
}


ChatGPT 输出:


这是一个 JavaScript 实现的防抖动函数。防抖动函数接受两个参数:"func" 和 "wait"。"func" 参数表示在等待 "wait" 指定的时间后要执行的函数。


防抖动函数返回一个匿名函数,该匿名函数设置了一个计时器。如果计时器已存在,则会使用 "clearTimeout(timer)" 来清除它。然后,使用 "setTimeout(func, wait)" 设置新的计时器,确保即使在指定的时间段内多次调用该匿名函数,也只会在等待时间过后执行一次 "func" 函数。


NotionAI 输出:


// debounce函数用来限制函数调用的频率。

// 它返回一个匿名函数,在指定的等待时间后调用传入的函数,并且清除上一次的计时器。


AI 完善代码



⭐输入:


// 根据以下代码生成新代码
const className = "my-div";
const text = "Hello world!";


ChatGPT


image.png


输出:

const element = document.createElement("div");
element.className = className;
element.textContent = text;
document.body.appendChild(element);


NotionAI


image.png


输出:


// Styling a div with a class
<div class="my-div">Hello world!</div>


AI 修正代码



⭐输入:

// 修正以下代码错误
function List(props) {
  const items = props.items; // error: items is undefined
  return (
    <ul>
      {items.map(item => (
        <li key={item.id}>{item.name}</li>
      ))}
    </ul>
  );
}


ChatGPT


image.png


输出:

// Here is the corrected code:
function List(props) {
  const { items = [] } = props;
  return (
    <ul>
      {items.map(item => (
        <li key={item.id}>{item.name}</li>
      ))}
    </ul>
  );
}


In this code, the props object is destructured to get the items property. If props doesn't have an items property, it will default to an empty array [].

它也给 items 设置了默认值,太强了!


NotionAI


image.png


输出:

function List(props) {
  const items = props.items;
  if (items && items.length > 0) {
    return (
                <ul> {items.map(item => ( <li key={item.id}>{item.name}</li> ))} </ul>
    );
  }
  return null;
}

Notion AI 一样能修复代码,做了条件判断,太强了!


AI 测试代码



⭐输入:

// 给以下代码做测试
const testCases = [
  {length: 2, width: 3, expected: 6},
  {length: 4, width: 5, expected: 20},
  {length: 6, width: 7, expected: 42},
];


ChatGPT


image.png


输出:

Here is a sample code for testing the given test cases:


function testAreaCalculation(testCases) {
  for (let i = 0; i < testCases.length; i++) {
    const { length, width, expected } = testCases[i];
    const result = length * width;
    if (result !== expected) {
      console.error(`Test case ${i} failed: expected ${expected} but got ${result}`);
    } else {
      console.log(`Test case ${i} passed`);
    }
  }
}
testAreaCalculation(testCases);


This code will run through all the test cases and print out "Test case i passed" for each test case that passes and "Test case i failed: expected expectedValue but got result" for each test case that fails.


回答生成了一个健全的代码测试用例;


NotionAI


image.png

输出:

testCases.forEach((testCase) => {
    const area = calculateArea(testCase.length, testCase.width);
    expect(area).toBe(testCase.expected);
});


小结



最后用 Notion AI 为本篇作一个小结:

image.png

TIME.


相关文章
|
6月前
|
人工智能 搜索推荐 大数据
GitHub Copilot Enterprise登场,或将掀起编程界的ChatGPT革命!
【2月更文挑战第13天】GitHub Copilot Enterprise登场,或将掀起编程界的ChatGPT革命!
81 2
GitHub Copilot Enterprise登场,或将掀起编程界的ChatGPT革命!
|
25天前
|
人工智能 计算机视觉 Python
ChatGPT编程省钱、方便小示例——实现PDF转成PNG文件
ChatGPT编程省钱、方便小示例——实现PDF转成PNG文件
28 1
|
24天前
|
人工智能 API iOS开发
ChatGPT编程Python小案例(拿来就用)—解压zip压缩文
ChatGPT编程Python小案例(拿来就用)—解压zip压缩文
31 0
|
24天前
|
iOS开发 MacOS Python
ChatGPT编程实现简易聊天工具
ChatGPT编程实现简易聊天工具
26 0
|
24天前
|
人工智能 iOS开发 MacOS
ChatGPT编程—实现小工具软件(批量替换文本、批量处理图像文件)
ChatGPT编程—实现小工具软件(批量替换文本、批量处理图像文件)
40 0
|
24天前
|
人工智能 iOS开发 MacOS
ChatGPT编程—实现小工具软件(文件查找和筛选)
ChatGPT编程—实现小工具软件(文件查找和筛选)
24 0
|
2月前
|
人工智能 自然语言处理 前端开发
基于ChatGPT开发人工智能服务平台
### 简介 ChatGPT 初期作为问答机器人,现已拓展出多种功能,如模拟面试及智能客服等。模拟面试功能涵盖个性化问题生成、实时反馈等;智能客服则提供全天候支持、多渠道服务等功能。借助人工智能技术,这些应用能显著提升面试准备效果及客户服务效率。 ### 智能平台的使用价值 通过自动化流程,帮助用户提升面试准备效果及提高客户服务效率。 ### 实现思路 1. **需求功能设计**:提问与接收回复。 2. **技术架构设计**:搭建整体框架。 3. **技术选型**:示例采用 `Flask + Template + HTML/CSS`。 4. **技术实现**:前端界面与后端服务实现。
55 1
|
2月前
|
人工智能 API Python
ChatGPT 插件开发
本教程旨在帮助您掌握ChatGPT API的基本使用方法,包括应用开发、代码分析、插件开发及专属领域模型应用等。通过学习,您将为未来的人工智能应用开发打下坚实基础。教程包含官方文档介绍、环境搭建步骤及Python示例代码,助您快速上手。请注意,API调用需收费,初始提供5美元免费额度。
41 3
|
2月前
|
存储 Linux 开发工具
如何进行Linux内核开发【ChatGPT】
如何进行Linux内核开发【ChatGPT】
|
3月前
|
机器学习/深度学习 人工智能 算法
为什么ChatGPT等AI大模型都是基于Python开发?
为什么ChatGPT等AI大模型都是基于Python开发?