ChatGPT — это мощный инструмент, который может значительно повысить производительность и эффективность разработчиков программного обеспечения и специалистов по работе с данными. Несмотря на его возможности, многие специалисты в этих областях не в полной мере используют ChatGPT в своей работе.
Чтобы помочь вам воспользоваться преимуществами, которые предлагает ChatGPT, я выделил 4 ключевые функции, которые можно использовать в повседневной работе для повышения скорости и качества. Используя эти функции, вы можете оптимизировать рабочий процесс и добиться большего успеха в своих проектах. Давайте изучим эти функции вместе.
1. Генерация каркаса кода
ChatGPT — ценный актив при запуске новых проектов с нуля. Благодаря возможности генерировать скелет кода на основе указанных вами технологий, фреймворков и версий, он может сэкономить значительное количество времени и усилий. Кроме того, это помогает поддерживать порядок и актуальность документации. Использование ChatGPT похоже на дополнительного члена команды, который помогает с рабочей нагрузкой.
Например, при работе с внешним API ChatGPT может набросать исходную структуру кода, экономя время и силы в процессе разработки.
Создайте шаблонный код, который интегрирует внешний API с помощью JavaScript. Ответ генерируется ChatGPT
const axios = require('axios'); const API_URL = 'https://api.example.com'; const getData = async () => { try { const response = await axios.get(`${API_URL}/data`); return response.data; } catch (error) { console.error(error); } }; const postData = async (data) => { try { const response = await axios.post(`${API_URL}/data`, data); return response.data; } catch (error) { console.error(error); } }; const putData = async (data) => { try { const response = await axios.put(`${API_URL}/data`, data); return response.data; } catch (error) { console.error(error); } }; const deleteData = async (dataId) => { try { await axios.delete(`${API_URL}/data/${dataId}`); } catch (error) { console.error(error); } }; module.exports = { getData, postData, putData, deleteData };
Этот код использует библиотеку axios для выполнения HTTP-запросов к внешнему API. Функции getData
, postData
, putData
и deleteData
обрабатывают соответствующие типы запросов. URL-адрес API определяется в верхней части кода и может быть легко изменен по мере необходимости. Код также включает обработку ошибок для регистрации любых проблем, которые могут возникнуть во время вызовов API.
Или я могу даже попросить скелет для очистки LinkedIn с помощью Selenium, и ChatGPT выдаст мне следующий результат.
const webdriver = require('selenium-webdriver'); const {By, until} = webdriver; const driver = new webdriver.Builder() .forBrowser('chrome') .build(); const loginToLinkedIn = async (username, password) => { await driver.get('https://linkedin.com/login'); await driver.findElement(By.id('username')).sendKeys(username); await driver.findElement(By.id('password')).sendKeys(password); await driver.findElement(By.xpath('//button[text()="Sign in"]')).click(); await driver.wait(until.titleIs('LinkedIn'), 5000); }; const searchForProfiles = async (searchTerm) => { await driver.get(`https://www.linkedin.com/search/results/people/?keywords=${searchTerm}`); const searchResults = await driver.findElements(By.css('.search-result__info')); return searchResults.map((result) => result.getText()); }; const logOutFromLinkedIn = async () => { await driver.findElement(By.xpath('//*[@data-link-to="viewAccount"]')).click(); await driver.findElement(By.xpath('//*[text()="Sign out"]')).click(); }
2. Понимание кода
Понимание новой кодовой базы может быть непростой задачей, особенно если она плохо организована или плохо написана. Это может привести к разочарованию и потере времени, пытаясь понять, как работает код. Однако с ChatGPT понимание нового кода никогда не было таким простым. Просто попросив ChatGPT объяснить функциональность кода, я могу быстро понять назначение и структуру кода, не тратя часы на его расшифровку.
Например, предположим, я наткнулся на фрагмент кода, который должен прокручивать страницу с предложениями работы в LinkedIn. Вместо того, чтобы часами пытаться понять код, я могу просто попросить ChatGPT объяснить его мне. Таким образом, я могу быстро понять цель кода, как он работает и как я могу использовать его для достижения своих целей парсинга.
Что делает следующий код? [вставьте код в ChatGPT]
const webdriver = require('selenium-webdriver'); const {By, until} = webdriver; const driver = new webdriver.Builder() .forBrowser('chrome') .build(); const loginToLinkedIn = async (username, password) => { await driver.get('https://linkedin.com/login'); await driver.findElement(By.id('username')).sendKeys(username); await driver.findElement(By.id('password')).sendKeys(password); await driver.findElement(By.xpath('//button[text()="Sign in"]')).click(); await driver.wait(until.titleIs('LinkedIn'), 5000); }; const searchForProfiles = async (searchTerm) => { await driver.get(`https://www.linkedin.com/search/results/people/?keywords=${searchTerm}`); const searchResults = await driver.findElements(By.css('.search-result__info')); return searchResults.map((result) => result.getText()); }; const logOutFromLinkedIn = async () => { await driver.findElement(By.xpath('//*[@data-link-to="viewAccount"]')).click(); await driver.findElement(By.xpath('//*[text()="Sign out"]')).click(); } const main = async () => { await loginToLinkedIn('username', 'password'); const searchResults = await searchForProfiles('software developer'); console.log(searchResults); await logOutFromLinkedIn(); await driver.quit(); }; main();
И ChatGPT сразу отвечает действительно подробным объяснением кода выше.
3. Добавление комментариев к нашему коду
ChatGPT также может помочь в повышении качества и ремонтопригодности нашего кода, предоставляя подробные объяснения каждой строки кода. Попросив его добавить комментарии, мы можем убедиться, что наш код правильно задокументирован и легко понятен другим.
Например, давайте возьмем предыдущий код, который интегрирует внешний API с помощью JS. Мы можем попросить ChatGPT добавить комментарии к каждой строке кода, чтобы лучше объяснить его функциональность и назначение. Это улучшает читабельность, ремонтопригодность и облегчает другим понимание и работу с нашим кодом.
Давайте представим, что в предыдущем коде вообще не было комментариев. Мы можем просто попросить ChatGPT добавить комментарии прямо к нему.
Добавьте комментарии к следующему коду [вставьте сюда код]
// Importing the necessary modules const axios = require('axios'); // Defining the baseURL for the API const baseURL = 'https://api.example.com'; // Function to make a GET request to the API const getData = async (endpoint) => { try { // Making the GET request to the API const response = await axios.get(`${baseURL}/${endpoint}`); // Returning the data from the response return response.data; } catch (error) { // Logging the error message console.error(error.message); } }; // Function to make a POST request to the API const postData = async (endpoint, data) => { try { // Making the POST request to the API const response = await axios.post(`${baseURL}/${endpoint}`, data); // Returning the data from the response return response.data; } catch (error) { // Logging the error message console.error(error.message); } }; // Example usage of the functions const data = await getData('users'); console.log(data); const newUser = { name: 'John Doe', email: '[email protected]' }; const createdUser = await postData('users', newUser); console.log(createdUser);
4. Переписываем наш код в каком-то стиле
Мы также можем использовать ChatGPT для улучшения качества и удобства сопровождения нашего кода, попросив его соответствовать определенным стандартам и соглашениям по кодированию. Например, если мы хотим, чтобы наш код соответствовал стандарту Pep-8, мы можем попросить ChatGPT автоматически реорганизовать его, чтобы он соответствовал этим рекомендациям.
Это помогает обеспечить согласованность всей нашей кодовой базы и экономит наше время и усилия при работе с другими разработчиками или командами. В целом, ChatGPT — это мощный инструмент, который может повысить качество и удобство сопровождения нашего кода.
Можете ли вы переписать следующий код, используя стандарт Pep8
const webdriver = require('selenium-webdriver'); const {By, until} = webdriver; const driver = new webdriver.Builder() .forBrowser('chrome') .build(); const login_to_linkedin = async (username, password) => { await driver.get('https://linkedin.com/login'); await driver.find_element(By.id('username')).send_keys(username); await driver.find_element(By.id('password')).send_keys(password); await driver.find_element(By.xpath('//button[text()="Sign in"]')).click(); await driver.wait(until.title_is('LinkedIn'), 5000); }; const search_for_profiles = async (search_term) => { await driver.get(https://www.linkedin.com/search/results/people/?keywords=${search_term}); const search_results = await driver.find_elements(By.css('.search-result__info')); return search_results.map((result) => result.get_text()); }; const log_out_from_linkedin = async () => { await driver.find_element(By.xpath('//[@data-link-to="viewAccount"]')).click(); await driver.find_element(By.xpath('//[text()="Sign out"]')).click(); } const main = async () => { await login_to_linkedin('username', 'password'); const search_results = await search_for_profiles('software developer'); console.log(search_results
Основные выводы
Я надеюсь, что после этой статьи вы поймете, что ChatGPT может помогать нам быть более продуктивными и создавать еще более качественные результаты. Я знаю, что легко попасть в ловушку, думая, что ИИ может в конечном итоге взять на себя нашу работу, но правильный тип ИИ может быть мощным активом, который можно использовать в наших интересах. сильный>
Однако важно помнить, что критическое мышление по-прежнему является ключевым фактором при работе с ИИ, как и при работе с нашими коллегами-людьми.
Поэтому, прежде чем вы броситесь внедрять ответы, сгенерированные ИИ, обязательно сначала найдите время, чтобы просмотреть и оценить их. Поверьте, в конце концов это того стоит!
Сообщите мне, если ChatGPT удивит вас другими полезными функциями. Я прочитаю вас в комментариях!