본문 바로가기
IOS

[iOS] 첫 코드리뷰를 받은 후 PR 다시 요청보내기 (Not Closed)

by eigen96 2022. 11. 14.
728x90

감사하게도 함께 작업해주셨던 분께서 많은 부분을 리팩토링 해주시고 공부할 방향성을 다시 알려주셨었습니다.

그리고 앞으로는 새롭게 작업한 부분은 바로 merge하지 말고 PR을 보내면 봐주시겠다고 하셨습니다.

그 후  PR을 보냈고 개선이 필요한 부분을 섬세하게 코멘트해주셨고 다시 PR을 보내보려고 합니다.

수업들으랴 외주하랴 동아리하랴 주제넘게 문어발식으로 할일을 늘려놓다보니 제때 작업을 못하였네요...

죄송합니다 ㅠㅠㅠㅠ 속도를 더 내겠습니다. 이제 동아리도 끝이고 외주도 끝입니다

일단 궁금했던 부분이 PR이 거절당한 건 아니고 그대로 Open되어 유지되어 있었기에 여기서 그냥 closed하고 다시 PR을 요청하는건지...

근데 그러면 이전에 받은 코멘트들이 날아가는 거 아닌가? 걷다가 이런 생각이 들더라구요.
마침 저와 같은 고민을 하셨던 분의 글을 찾았습니다ㅎㅎ

 

https://kimtaehyun98.tistory.com/119

 

Git - 이미 올린 Pull request 수정하기

이미 올린 Pull Request 수정하기 2021 OSS 컨트리뷰톤을 진행하면서 두 번째 PR을 올리게 되었다. 첫 번째 PR때는 merge된 커밋들이 뒤섞이면서 잘못된 PR을 했었는데 이번에는 조금 더 신경을 써서 해본

kimtaehyun98.tistory.com

 

Review 받은 내용 수정후 git add 하기
git commit --amend를 통해 최신 commit 덮어쓰기
git push -f origin branch-name

 

 

 


 

item을 요청할때 실패케이스에 대한 return값을 처리해주지 않았습니다. (여러 곳에서 발견됨.)
이러면 서버에 요청은 성공하였지만 유효한 아이템 정보를 받아오지 못하였을 때 무슨 상황인지 알지 못할것 입니다.
실제로 이번에 외주하면서 분명 구현해두었는데 아무 응답이 없다는 QC를 많이 받았는데 제가 많이 하던 실수라는 걸 새삼 느낍니다.

바로 추가해주도록합니다.

 

하드코딩 ㄴㄴ해 ㅎㅎㅎㅎ

안일하게 하드코딩된 걸 그대로 pr올려버렸습니다.

고치도록 하겠습니다.

굳이 옵셔널 처리한 이유가??

아이템이 없는 경우를 생각했었는데 빈 배열로 전달해도 되니까 이부분은 굳이 옵셔널 처리할 필요가 없겠군요... 없애주도록 합니다.

 

리액터(뷰모델)에 만들어준 이 메소드 Service로 옮겨주는 게 좋아보인다고 해주셨습니다.

보여주기 위한 모양을 만들어주는 역할이므로 Adapter Class를 만들어서 처리해주는 게 좋을거라고 해주셨습니다.

 

어답터패턴은 클래스의 인터페이스를 사용자가 기대하는 인터페이스 형태로 변환시키는 것이죠.

어떻게 해야할지 알듯말듯 희미하네요.

모르겠다면 안드로이드 개발자분께 여쭤보면 설명해주실거라고 해주셨었는데 

덕분에 예전에 한창 안드로이드를 공부할때 리사이클러뷰를 사용하면서 본 Adapter클래스가 떠올랐습니다.

 

https://velog.io/@haero_kim/%EC%9A%B0%EB%A6%AC%EB%8A%94-%EC%9D%B4%EB%AF%B8-%EC%96%B4%EB%8C%91%ED%84%B0-%ED%8C%A8%ED%84%B4%EC%9D%84-%EC%95%8C%EA%B3%A0-%EC%9E%88%EB%8B%A4

 

우리는 이미 '어댑터 패턴'을 알고 있다

실생활로부터 Adapter Pattern 이해하기

velog.io

찾아보니 뷰(Client)와 데이터셋(Adaptee)를 연결하여 보여주는 용도로 말씀하신 것 같군요.

말씀대로 나름대로 어댑터 클래스를 만들어주었는데 확신이 서지 않네요.
더 적용해보고 깨달음이 생기면 다시 정리해보겠습니다

 

https://velog.io/@ellyheetov/%EC%96%B4%EB%8C%91%ED%84%B0-%ED%8C%A8%ED%84%B4AdapterWrapper-Pattern

 

어댑터 패턴(Adapter/Wrapper Pattern)

한 크래스의 인터페이스를 클라이언트에서 사용하고자 하는 다른 인터페이스로 변환한다. 어댑터를 이용하여 인터페이스 호환성문제를 해결할 수 있다. 어댑터를 이용하면 호환되지 않는 충전

velog.io

 

https://betterprogramming.pub/implement-the-adapter-design-pattern-in-swift-165ac22bc868

 

Implement the Adapter Design Pattern in Swift 5

Make incompatible interfaces work together

betterprogramming.pub

 

728x90

댓글