chatGPT 활용해서 코딩 하는 방법

ChatGPT 와 페어 프로그래밍하면 개발 생산성 10배 향상

  • https://chat.openai.com/

Github 의 copilot, 아직 베타 버전인 AWS 의 codewhisperer
보다 chatGPT 가 더 도움이 많이 됩니다.

코드 품질은 copilot 이 더 좋을지는 모르겠으나

chatGPT 의 장점은 대화형으로 개발자가 원하는 대로 프로그래밍과 방향을 잡아 준다는 겁니다

1단계 개발 방향 잡기

처음에 어떤 방향으로 개발을 할지를 혼자 고민 하지 말고
chatGPT 와 함께 고민 하세요

컨셉을 이야기 해도 됩니다

2단계 개발 프레임 짜기

보일러 플레이트를 짜달라고 해도 되고
기본 폴더 구조를 만들어 달라고 해도 됩니다

어차피 지속적인 리팩토링과 기능이 추가되면서 구조는 바뀌는 거니 부담없이 진행합니다
chatGPT 와 함께라면 리팩토링도 쉬워집니다

  • 보일러플레이트 코드 짜기
    Generate boiler plate code that integrates an external API using Java

  • 라이브러리 비교
    I want to analyze some geo data. I want to compare geopandas vs pltotly. which one is better?

3단계 기능 추가하기

어떤 어떤 기능을 어떤 개발언어로 만들고 싶다고 요청하면 function 이 나옵니다
그게 맞는지 아니면 추가할 내용이 있는 지 판단하시고 추가 요청을 더 하세요

자꾸 자꾸 요구할 수록 더 좋은 코드를 줍니다

엉뚱한 코드가 나오면 그 코드는 아니라고 하세요 chatGPT 는 쿨하게 다시 짜줍니다

  • 표준 추가 적용시
    Can you rewrite the following code using Pep8 standard
    기존 코드 넣기

  • 리팩토링시
    Can you refactor the following code to make it more efficient?
    기존 코드 넣기

Can you make the code more compact and more DRY?
기존 코드 넣기

4단계 테스트 코드

3단계에서 나온 코드는 테스트 코드 만들어 달라고 요청하세요
그럼 만들어 줍니다.

5단계 다른 개발자를 위해

주석 추가 업무도 chatGPT 에 맡기세요
알아서 해줍니다.

  • 주석 추가
    Add comments to the following code
    주석 추가하고 싶은 코드

6단계 유지보수시

짜파게티 기존 소스를 설명해 달라고 하세요
엄청 잘 설명해줍니다.

  • 기존 코드 설명
    What does the following code do?
    기존 코드 넣기

필요하면 여기서 리팩토링을 합니다.

개발 업무 방식도 혁신이 왔습니다

20년 개발자 인생이긴 한데
2022년 12월 기준으로 개발 업무 방식의 특이점이 왔다고 생각됩니다.

개발자 생산성이 비약적으로 발전하겠네요.

AI 와 함께 더 많은 일을 하던지 일자리를 뺏기던지

둘 중 하나가 될 것 같습니다.