오늘은 타 인터페이스 관련 확인을 많이 했는데
확실히 다른 회사에서 짠 코드들을 보면 상당히 어지럽지만
접해보지 못한 새로운 체계가 있기 때문에 여러가지로 배우게 되는 것 같다.
10일정도 모인 사레를 한번에 정리 후 등록하는데
6일인가 연속으로 야근을 해서 그런지 업무량이 훨씬 많아서
생각보다 사례 정리시간이 오래걸렸다.
어제 완료한 내용에 대한 테스트 문의가 들어왔는데
해결 방법이 없어서 일단 시도해보겠다고 했지만
[{”xxxx”:”yyyy”}] 형태로 들어와야 하는 값이 “yyyy”형태로 들어오는 것이기 때문에
기존 코드, 테스트클래스를 전부 고치지 않는 이상 특정 레코드만 string으로 받는건 이상했는데
이 문제를 우리쪽에서 어떻게 해결할 수 있을까 고민해보니
배열인지 확인을 위해 Contains로 ‘[’를 체크했고
만약 배열이 아니라면 앞에 [{”xxxx”:와 뒤에 }]로 감싸서 배열로 들어온 것처럼 속이는 방식을 선택했다.
해당 방식대로 수정 후 postman으로 발송해보니 정상 인터페이스가 진행됐고
해당 내용을 협업사에 전달한 다음 테스트를 진행하는데
정상적으로 CRUD 기능테스트가 끝나서 다음주에 다시 다음 인터페이스를 진행하기로 헀다.
다른 프로젝트 연결 개체 확인 및 인터페이스를 구경했는데
확실히 팀장님은 본인이 짠 코드가 아니지만 에러코드만 보고 바로 원인을 해결하시는데
SFDC 내부 개체간 구조 이해가 상당히 높으신 것 같아보였고
인터페이스를 위해서는 SFDC 내부 기본 개체들의 관계에 대해 파악하는 시간도 필요할 것 같았다.
(1).백준 23663번 Deja vu of Go Players는 각자 백여개의 말을 가지고
각자 10억까지의 수치를 가지고 있을 때 각자 말을 제거해서 빨간색이 이길 수 있는지를 물었는데
처음에는 각자 말을 동일 양으로 제거해야 하는줄 알고 훨씬 더 복잡하게 진행하고 BigInt 처리를 했는데
오답으로 나와서 설마 이건 아니겠지 싶게 그냥 뭉치 제거라고 생각하고 위아래 줄을 무시하고
각자 덩어리 개수인 각 테스트케이스 첫번째 줄만 비교해서 통과하니 상당히 허탈했다.
굳이 왜 쓸모없는 데이터를 십억단위로 잔뜩 집어넣었는지 모르겠고
번역도 제대로 되지 않아서 문제 이해가 어렵긴 했지만 해결은 할 수 있었다.
const input = `2
3 2
1 1 1
2 2
1 1
4
3`.split('\n').map(el => el.split(' ').map(BigInt))
const result = []
for(let i = 1 ; i < input.length ; i+=3){
const [red, white] = input[i]
result.push(red <= white ? 'Yes' : 'No')
}
console.log(result.join('\n'))
'회고' 카테고리의 다른 글
[개발일지] - 289(주말) (0) | 2024.04.14 |
---|---|
[개발일지] - 288(주말) (0) | 2024.04.13 |
[개발일지] - 286 (0) | 2024.04.11 |
[개발일지] - 285(국회의원선거) (0) | 2024.04.10 |
[개발일지] - 284 (0) | 2024.04.09 |