si라 유독 더 그런걸까? 액셀이랑 주석다는게 죽겠다.
내가 짠 코드야 주석을 그때그때 갱신해 놓았지만 어느날 그냥 상사가
common 모듈 프로젝트 주석 메서드별로 다 추가하세요
라고 하면 절망의 노가다의 시작이다.
저걸 언제 다 치고 앉아있냐.... 좀 더 빨리 해보자.
준비물: Github Copilot
형식이 대략 아래처럼 있다고 해보자.
메서드 주석
/**
* @method : toTimestamp
* @param dateStr 날짜 문자열
* @param offset 시간 옵셋
* @return 타임스탬프
* @description : <pre>
* 날짜 문자열을 시간 옵셋을 적용하여 타임스탬프로 변환한다.
* </pre>
* @author : jinvicky
*/
클래스 주석
/**
* @packageName : com.jinvicky.test.utils
* @fileName : JSONUtil.java
* @author : jinvicky
* @date : 2024-01-03 06:30:54
* @description <pre>JSON 변환 유틸리티</pre>
* ================================================================
* DATE AUTHOR NOTE
* ----------------------------------------------------------------
* 2024-01-03 06:30:54 jinvicky 최초 생성
*/
인텔리제이에서는 메서드 일부를 긁어서 우클릭 > github copilot > generate doc을 선택하면 주석을 알아서 생성해준다.
이럴때는 copilot chat이랑 1:1로 노가다를 좀 한다. 주기적으로 얘가 수틀린 행위를 해서 git commit 전에 확인을 해야 함.
(주석 복붙)
위 주석 형식으로 아래 코드 /doc 생성해줘
(코드 복붙)
@author
식으로 어노테이션이 앞에 나오잖아?액셀에 프로젝트 모든 클래스명들을 다 타자쳐야 한다. 죽겠다.
인텔리제이 터미널에 가서 원하는 폴더로 이동한다.
예를 들어 src/main/java/jinvicky/~로 이동해보겠다. 그리고 아래 명령어 입력.
Get-ChildItem -Recurse -Filter *.java | ForEach-Object { $_.BaseName }
.java
로 끝나는 녀석들을 출력해준다는 뜻이다.
그럼 아래처럼 출력이 된다. 이거 그대로 액셀에 복붙하면 된다.
다만 단점이 있다. 내부에 폴더가 더 있어도 상관없이 다 나와서
내부 폴더 안 클래스인지 폴더 내 최상위인지 분간 안 가서 잘 봐가면서 해야 함
코딩이 아니기 때문에 ai 다 긁어쓴다.