ChatGPT로 코드 작성 없이 자바 오픈소스 라이브러리 만들기

개인 토이프로젝트로 오픈소스 개발 및 배포에 이르는 전 과정을 ChatGPT 가 생성한 내용으로만 처리해 보았습니다.


오픈소스 이름은 "Sub Link Extractor" 이며, https://github.com/revfactory/sub-link-extractor 에서 확인 가능합니다. 또한 아래의 gradle depenency 추가를 통해 프로젝트에서 사용 가능합니다.


implementation 'io.github.revfactory:sub-link-extractor:0.1.1'

* 실험 버전이라 테스트 용도로 사용하시길 권장드려요


1. 목적

입력받은 URL 하위의 모든 URL 을 추출 경로가 /docs 와 같은 기술 문서들을 모두 학습할 때 사용


예를 들어, https://tailwindcss.com/docs 를 입력하면 하위의 모든 기술문서 링크를 반환합니다. 간단하죠?


2. 주요 기능

 - 하위 페이지 탐색 후 하위 모든 링크 추출합니다

 - site robots 설정 체크 및 크롤링 시 블럭을 고려해 크롤링 속도를 제어 합니다.

 - GitHub에서 버전 릴리즈 시 GitHub Action 을 통해 Maven Central 에 배포합니다.

3. 진행 프로세스

아래와 같은 순서로 진행했습니다.


1단계 - 초기 코드 작성 및 배포 프로세스 정립

 - 테스트 코드 작성과 매우 심플한 기능 개발 요청 (1차)

 - 해당 코드 오픈소스화 프로세스 요청

 - 주석, 예외처리 등 룰 정의를 요청하고 그에 맞게 수정 요청

 - Readme 작성

 - Gradle 설정 및 GitHub Action workflow 작성 요청

 - 초기 버전 1차 패키징 및 배포


2단계 - 기능 개선 및 다음 버전 릴리즈

 - 기능 개선 사항 리스트업 요청

 - 추가 기능 결정하고 해당 기능 개발 요청 (2차)

 - 테스트 수행

 - 작성된 코드를 다시 한번 점검하고 수정 요청

 - 수정된 코드 테스트 수행

 - 버전 릴리즈 노트 작성 요청

 - Readme 업데이트 요청

 - 2차 버전 패키징 및 배포

4. ChatGPT가 자동으로 작성해준 부분

 - 주석을 포함한 전체 코드 작성

 - 기존 코드 개선 제안 및 리팩토링

 - 테스트 코드 작성

 - Readme 문서 작성

 - 릴리즈노트 작성

 - GitHub Action workflow 작성

 - Gradle publish를 위한 Gradle 설정 작성

 - 오픈소스 라이선스 처리

5. 휴먼 작업

 - ChatGPT 채팅을 통해 Maven OSSRH 등록 및 인증서 GPG 처리

 - 복사-붙여넣기

 - 코드 개선사항 있는지 물어보기

6. 제한사항

 - 코드가 길어지는 경우 일관성이 떨어지는 문제

 - 잘못된 길로 들어섰을 때 할루시네이션으로 미동작 코드 생성 문제

GitHub - revfactory/sub-link-extractor

GitHub

GitHub - revfactory/sub-link-extractor

다음 내용이 궁금하다면?

또는

이미 회원이신가요?

2023년 10월 6일 오후 2:05

 • 

저장 6조회 3,480

댓글 0

    함께 읽은 게시물

    < 일 잘하는 PM은 문제의 ‘이름’부터 정의한다 >

    1

    ... 더 보기

     • 

    댓글 1 • 저장 14 • 조회 591


    내가 가본 우리나라 - 지도 색칠 사이트

    ... 더 보기

    제가 쓰고 있는 책의 표지가 나왔어요!

    ... 더 보기

     • 

    댓글 1 • 조회 1,057


    전문가의 태도를 배울 수 있는 강의

    ... 더 보기

     • 

    저장 7 • 조회 1,988


    효과적인 경력 기술 가이드

    

    ... 더 보기

    모두에게 성장의 기회를 제공하는 인프런에게 박수를 보낸다

    ... 더 보기