회고

[개발일지] - 616

Happy Programmer 2025. 3. 10. 23:58

오자마자 주말에 집에서 처리한 마이그레이션 레코드들을 확인해봤는데

여러 타입별로 각자 확인했지만 깨진 부분은 없었기 때문에 안심하고 넘어갈 수 있었다.

 

유지보수쪽에서 홈페이지 추가 인터페이스 연동 등 관련 내용에 대해 발송했는데

처리는 가능하겠지만 지금도 평일 야근에 주말 작업까지 하면서 수면시간이 부족한데

이것까지 처리하긴 불가능해보였기 때문에 유지보수쪽 어드민 담당자분에게 전달드렸고

일단 요청사항 정리 및 확인 답신을 보내둔 다음

인터페이스쪽 처리는 내가 진행하지만 나머지 부분은 어드민쪽에서 처리해주시기로 헀다.

 

캠페인쪽 개체 분리 작업을 하려고 필드를 나눴는데

마지막 생성 직전에 요청자분에게 문의드렸더니 이미 처리했다고 하셨고

해당 방법대로 처리했지만 필드 맵핑은 그렇게 진행해서 인터페이스를 해야 한다는 내용으로

내가 인터페이스를 이부분만 하지 않았기 때문에 처리하신 팀장님에게 전달드렸다.

 

캠페인쪽 인터페이스 개체 관련 논의는 아직도 끝나지 않았는데

전반적으로 개체 정리가 마무리되지 않고

필드도 확정되지 않았는데 마이그레이션을 어떻게 진행해야 하는지 진행하기가 어려웠다.

 

일단 유지보수쪽에 답변이 온 내용을 기반으로

요청사항 처리 및 검토요청에 대해서 확인했는데

사용하고 싶다고 요청한 필드는 21년도에 생성되었고

실제로 레코드 생성에도 사용한 기록이 있는 카카오 관련 필드로 보였기 때문에

해당 내역을 공유하고 사용할 수는 있겠지만 목적이 달라서 새로 생성을 권유했다.

 

캠페인 필드 변경 요청 관련해서 apex로 처리하려고 헀지만

맵핑이 제대로 되지 않는 부분이 있어서 다시 문의드렸더니

해당 부분은 어떻게 진행될지 다시 확정되지 않은 상태가 되어버렸고

확정 이후 다시 요청주신다고 해서 그 부분도 다음에 다시 하기로 했다.

 

클레임, 품질정보 관련 마이그레이션 개체 목록을 정리했는데

일반적인 개체 외에 내부적으로 쓰는 필드 등이 많아서 필드 정리까진 오래 걸릴 것 같고

승인프로세스 또한 내부적으로 확실하게 정리되었는지 담당자분에게 문의해야 할 것 같다.

 

이걸 진행하면 할수록 여태 마이그레이션을 이렇게 헀던 기억이 없는데

모든 개발 및 필드 입력이 된 상태에서

개발자들이 본인이 필요한 실제 레코드에서 가져온 샘플을 몇개 만들어두면

그때 연결된 필드들을 확인해서 마이그레이션을 진행하는 방식으로 해야 할 것 같은데

화면 개발자도 모르고 DB쪽에서도 모르는 필드들을

무턱대고 넣을 수도 없고 어디에 어떤 이름으로 존재하는지도 모르기 때문에

인터페이스 업무가 맞는건지 이게 업무능력 향상에 도움이 되는 경험인지도 모르겠지만

일단 이번 프로젝트에서는 할당된 상태에서 시간이 계속 지났기 때문에

이번 주 내에는 되도록 마이그레이션을 마무리 하도록 해봐야겠다.

 

 

(1).백준 2998번 8진수는 2진수를 8진수로 바꿔야 하는 문제였는데

그냥 기본 제공 메서드를 사용하면 바로 해결할 수 있지만 특이한 방식대로 풀어달라고 하니 요청대로 해보기로 했다.

세글자씩 나눠서 해야 했는데 일단 문자열 앞에 0을 추가해서 3자리 단위로 나올 수 있게 만들었지만

for문 역순 진행 후 if문으로 길이를 체크하던지

더 복잡해지더라도 str에서 길이가 3의 배수면 추가하지 않는 방식으로 했어야 했다는 생각이 들긴 했다.

 

어쨌거나 3글자씩으로 분할 후 map에서 꺼내와서 해당 숫자를 각 자리에 넣어 출력해서 해결했는데

처음엔 앞에 0이 들어가서 에러가 발생했고 마지막에 앞에 있는 0을 제거하는 방식으로 해결했다.

 

const input = `00000011001100`
const str = '0'.repeat(3 - input.length % 3) + input
let result = ''
const map = {
    '000' : '0',
    '001' : '1',
    '010' : '2',
    '011' : '3',
    '100' : '4',
    '101' : '5',
    '110' : '6',
    '111' : '7'
}

for(let i = 0 ; i < str.length ; i+=3){
    result += map[str.slice(i, i+3)]
}

console.log(result.replace(/^0+/, '') || '0')