반복적이거나 기계적인 작업을 좋아하는 개발자는 많지 않을 것입니다. 다행히도 2022년부터 아주 강력한 도구, ChatGPT가 이 “지루한” 작업을 훨씬 더 쉽게 만들어 주고 있습니다.
이번 글에서는 ChatGPT를 활용해 다음과 같은 개발 작업을 손쉽게 처리하는 방법을 소개합니다.
- 파일 생성 및 업데이트
- 메서드/함수 이름 생성
- 다국어(i18n) 파일 생성
- 복잡한 코드 이해
- 데이터베이스 삽입문(insert) 생성
1. 파일 생성 및 업데이트
CSV 파일은 여전히 데이터 입력이나 테스트 데이터로 종종 사용됩니다. ChatGPT를 이용해 손쉽게 CSV 파일을 생성하거나 수정할 수 있습니다.
예를 들어, 고객 목록이 담긴 CSV 파일을 생성하려면 다음과 같은 프롬프트를 사용할 수 있습니다.
1 | 10명의 고객 정보가 담긴 CSV 파일을 생성해 주세요. 각 고객은 다음과 같은 열을 포함해야 합니다: |
세미콜론(;) 구분자를 사용하고 국제 표준 전화번호 형식을 적용하려면 다음과 같이 요청할 수 있습니다.
1 | 쉼표 대신 세미콜론을 사용하고, 전화번호는 국제 표준을 따르도록 해 주세요. |
또한, 시스템이 JSON 형식으로 전환되었다면 다음과 같이 요청하면 JSON 형식으로 변환된 파일을 생성해 줍니다.
1 | CSV 대신 JSON 형식으로 변환해 주세요. |
2. 메서드/함수 이름 생성
메서드나 함수를 개발할 때 이름을 짓기 어려운 경우가 있습니다. 적절한 이름을 찾지 못한다면, 그 함수가 지나치게 많은 작업을 수행하고 있을 가능성이 높습니다. 하지만 이번에는 아이디어가 떠오르지 않거나, 익숙하지 않은 코드를 리팩토링해야 할 때의 상황에 초점을 맞춰 봅시다.
예를 들어, 다음 메서드에 대한 이름을 추천해 달라고 할 수 있습니다.
1 | public void doSomething(Entity entity){ |
ChatGPT는 적절한 메서드 이름을 제안해 주어 코드의 가독성을 높일 수 있습니다.
3. 다국어(i18n) 파일 생성
한 번은 시스템에서 사용하는 레이블의 번역본을 XML 파일로 받았는데, 시스템에서는 i18n 형식이 필요했습니다. XML 파일 예시는 다음과 같습니다.
1 | <data> |
이 XML을 사용해 영어와 스페인어의 i18n 파일을 생성하려면 ChatGPT에 다음과 같이 요청할 수 있습니다.
1 | 주어진 XML 파일을 바탕으로 영어와 스페인어 각각에 대한 i18n 파일을 생성해 주세요. 형식은 다음과 같아야 합니다: |
결과는 다음과 같습니다.
1 | # English i18n file(en.i18n) |
1 | # Spanish i18n file(es.i18n) |
4. 복잡한 코드 이해하기
레거시 코드를 유지보수할 때, 메서드 이름만으로는 코드의 기능을 파악하기 어려운 경우가 있습니다.
예를 들어, 다음 코드가 어떤 기능을 수행하는지 ChatGPT에게 물어볼 수 있습니다.
1 | void methodA(int arr[], int n) { |
ChatGPT는 이 코드가 배열의 요소를 정렬하기 위해 버블 정렬을 사용하고 있음을 설명해 줍니다.
5. 삽입문(insert) 생성
데이터베이스에 데이터를 삽입하는 작업을 자동화할 수 있다면 많은 시간이 절약될 수 있습니다. ChatGPT는 삽입문을 작성하는 데도 도움이 됩니다!
다음과 같은 테이블이 있다고 가정해 봅시다.
1 | CREATE TABLE customer ( |
그리고 다음과 같은 CSV 파일로 데이터를 받았다고 합시다.
1 | customer_id,first_name,last_name,email,phone_number |
이 데이터를 삽입문으로 변환하려면 ChatGPT에 다음과 같이 요청할 수 있습니다.
1 | 주어진 CSV 데이터를 기반으로 삽입문을 생성해 주세요. 테이블 구조는 다음과 같습니다: |
결론
ChatGPT에게 코드를 작성하도록 요청하는 데 회의적일 수 있지만, 반복 작업이나 파일 변환, 테스트 데이터 생성에는 아주 유용하게 사용할 수 있습니다.