Введение

Всем привет 👋. Надеюсь, у вас все хорошо. Недавно я опубликовал статью о том, как использовать ChatGPT для повышения эффективности разработки. Недавно я познакомился с Bito AI и поражен его способностью помогать разработчикам повышать свою эффективность. Сегодняшняя статья познакомит вас с Bito AI и продемонстрирует, как вы можете использовать его, чтобы стать 10-кратным разработчиком или, по крайней мере, сэкономить пару часов в день. Давай начнем.

Что такое Бито ИИ 🤔

Bito AI — это помощник на основе искусственного интеллекта, интегрированный прямо в ваш редактор. Он использует ChatGPT под капотом. Но он специально обучен на миллиардах и миллионах кода, чтобы получить лучший ответ на ваш вопрос, просто невероятно, что Bito AI может помочь вам сделать без поиска в Интернете. Он имеет следующие возможности:

  • ☝️ Синтаксис команды
  • 🥇 Тестовые случаи
  • 🔑 Объяснить код
  • 🔥 Сгенерировать код
  • ✍️ Метод комментариев
  • ⚡ Улучшить производительность
  • 🔒 Проверить безопасность

ИИ-помощник Бито похож на швейцарский армейский нож, который может делать так много вещей — и делает вас неуловимым 10-кратным разработчиком! Он работает прямо в вашей любимой IDE (мы поддерживаем Visual Studio Code и все IDE JetBrains, такие как IntelliJ, PyCharm, GoLand и т. д.), а также доступен в виде расширения для Chrome.

Этот продукт был запущен недавно. Разработчики постоянно работают над его улучшением. Недавно они добавили кучу вариантов быстрого доступа и сочетаний клавиш. Они также много сделали для быстрой разработки, чтобы дать вам лучший ответ без каких-либо усилий с вашей стороны.

Теперь давайте поговорим о том, как использовать этот инструмент для повышения производительности.

Как можно использовать Bito AI для повышения производительности разработчиков?

Bito AI работает аналогично ChatGPT, но интегрирован непосредственно в вашу IDE. Так что вы можете оставаться сосредоточенным. У меня есть это в моей настройке кода VS. Я придерживаюсь трехколоночного макета в своем редакторе VS Code, что делает использование этого инструмента чрезвычайно приятным.

Если вы открыли Bito AI, теперь он доступен в вашем контекстном меню.

Давайте рассмотрим некоторые из них один за другим, чтобы дать вам демонстрацию.

🔥 Сгенерировать код

Вы можете задать Bito любой технический вопрос, и он ответит на него, одновременно написав код. Я спрошу, как использовать nodemailer для отправки писем в nodejs. И вот какой ответ я получил.

// To send an email using the nodemailer module in nodejs, you will need to install the nodemailer package first. After that, add the following code to your nodejs app:const nodemailer = require("nodemailer");
let transporter = nodemailer.createTransport({
  service: "gmail",
  auth: {
    user: "[email protected]", // REPLACE WITH YOUR EMAIL ADDRESS
    pass: "your-password", // REPLACE WITH YOUR PASSWORD
  },
});
let mailOptions = {
  from: "[email protected]", // REPLACE WITH YOUR EMAIL ADDRESS
  to: "[email protected]", // REPLACE WITH RECIPIENT'S EMAIL ADDRESS
  subject: "Your Subject Line",
  text: "Your message goes here!",
};
transporter.sendMail(mailOptions, function (err, data) {
  if (err) {
    console.log("Error occurs");
  } else {
    console.log("Email sent!");
  }
});

Это оптимальное решение заданного мною вопроса. Это сэкономило мне много времени и предоставило наиболее точное решение, пока я был в своем редакторе.

🪜 Объясните шаги

Бито может объяснить процедуру вашего кода. Все, что вам нужно сделать, это просто выбрать часть вашего кода, которую вы хотите объяснить пошагово, а затем нажать Explain Steps, как показано на предыдущем снимке экрана. Для простого примера я попрошу объяснить этот код ниже:

const handleToggleAnswer = () => {
  if (label === "") return;
  if (["MCQ", "TRUE-OR-FALSE"].includes(type)) {
    form.setFieldValue("answers", [label]);
  } else if (type === "CHECKBOXES") {
    // if the answer is already included in the list remove it
    // otherwise add it. just like how checkboxes work
    if (answers.includes(label)) {
      const filteredAnswers = answers.filter((answer) => answer !== label);
      form.setFieldValue("answers", filteredAnswers);
    } else {
      form.setFieldValue("answers", [...answers, label]);
    }
  }
};

Вот какой ответ я получил:

1. The code is defining a function named handleToggleAnswer.
2. It is using an if statement to check if the label is an empty string. If it is, the function will return.
3. The next if statement is using the Array.includes() method to check if the type is either "MCQ" or "TRUE-OR-FALSE". If it is, the form's field value of answers will be set to the label.
4. If the type is "CHECKBOXES", the code will use the Array.includes() method to check if the answers array includes the label.
5. If it does, the code will use the Array.filter() method to create a new array with all the answers except for the label. This filtered array will be set as the form's field value of answers.
6. If the label is not in the answers array, the code will use the spread operator to add the label to the answers array and set it as the form's field value of answers.

Отличный и понятный ответ. Мне очень понравилась функция подсветки синтаксиса, которую они выпустили несколько дней назад.

✍️ Создать комментарий

Bito AI также может генерировать комментарии для вашего кода. Я использую эту функцию всякий раз, когда заканчиваю писать функцию и хочу ее задокументировать. Давайте попробуем сгенерировать комментарий для того же кода, который мы только что написали:

const handleToggleAnswer = () => {
  if (label === "") return;
  if (["MCQ", "TRUE-OR-FALSE"].includes(type)) {
    form.setFieldValue("answers", [label]);
  } else if (type === "CHECKBOXES") {
    // if the answer is already included in the list remove it
    // otherwise add it. just like how checkboxes work
    if (answers.includes(label)) {
      const filteredAnswers = answers.filter((answer) => answer !== label);
      form.setFieldValue("answers", filteredAnswers);
    } else {
      form.setFieldValue("answers", [...answers, label]);
    }
  }
};

Вот ответ, который я получил:

// This function handles the toggle of the answer when a user interacts with the form. If the label is empty, no action is taken. For MCQ and TRUE-OR-FALSE types, the label is set as the answer. For CHECKBOXES types, the label is added or removed from the answers array based on whether it is already included or not.

Отличный!

⚡ Проверка производительности

Я написал функцию, которая принимает число n и возвращает сумму всех чисел от 0 до n.

function sum(n) {
  let result = 0;
  for (let i = 0; i < n; i++) {
    result += i;
  }
  return result;
}

Чтобы улучшить производительность кода, мы могли бы использовать математическую формулу. Давайте посмотрим, сможет ли Bito AI разобраться и исправить производительность этого кода. Вот ответ:

Code Performance Issues:
1. This code is inefficient because it uses a loop to add all the numbers from 0 to n. This is a time-consuming process that can be improved by using a mathematical formula.
 Rewritten Code:
function sum(n) {
  return n * (n + 1) / 2;
}

Должен сказать, что я более чем впечатлен Bito AI! Это спасло меня от многих головных болей прямо в моем редакторе!

🔒 Проверка безопасности

Вы можете устранить потенциальные проблемы безопасности в своем коде, используя Bito. Давайте проверим статус безопасности функции, которую мы написали ранее. Вот ответ:

Code Security Issues:
1. No input validation: The code does not check if the input given is valid or not.
 Rewritten Code:
function sum(n) {
  if (n < 0 || typeof n !== 'number') {
    return 'Please enter a valid number';
  }
  let result = 0;
  for (let i = 0; i < n; i++) {
    result += i;
  }
  return result;
}

Выполнение проверки входных данных очень важно для написания безопасного кода без ошибок. Бито сделал это за меня.

Краткое содержание

В целом, Bito — отличный инструмент для разработчика. Он может делать то же, что и ChatGPT. Но как разработчик, иметь его прямо в своем редакторе намного продуктивнее и экономит много времени. Я показал вам функции, которые мне нравятся. У него гораздо больше возможностей, чем это. У них есть удивительные возможности для команд. Скоро они появятся с разным представлением IDE. Таким образом, вы можете сравнить выбранный вами код с кодом, исправленным Bito, а затем автоматически принять изменения. Я настоятельно рекомендую вам загрузить их расширение кода VS и запачкать руки Bito. Я уверен, что вам понравится. Дайте мне знать, что вы думаете об этом инструменте 👇.

Заключение

Это все на данный момент. Надеюсь, вы получили пользу от этой статьи. Если вы это сделали, убедитесь, что вам это нравится. Подпишитесь на меня в Твиттере, чтобы получать ежедневные обновления. Большое спасибо за чтение, и я увижу вас в следующем. ✌️

Подписывайтесь на меня в соц 🌐

👤 Минхазур Рахман Ратул