본문 바로가기

Contents164

2023년 회고 때는 2023년, 여름이었다. 나는 중장기? 계획은 세우지는 않는다. 아주 먼 미래에 어떤 사람이 될 지에 대한 막연한 상상과 그 방향으로 가기 위한 현재 활동 정도만 생각한다. 그리고 오늘 할 일과 먹을 거 정도만 생각한다. 나와 비슷한 생각을 가진 유명한 사람이 있었는데 까먹었다. 회고를 하는 목적도 대단한 이유는 아니고 그냥 지난 1년간 무엇을 했는지 돌아보면서 2024년을 상상하기 위함이다. 취업 준비 상반기 네이버 신입 공채를 시작으로 취준을 시작했던 것 같다. 그러나 개발 환경이 좋고 개발자가 중요한 회사를 찾아보면 채용 공고가 많지 않았다. 알고리즘 테스트를 보는 곳은 2023년을 통틀어 한 손으로 셀 수 있을 정도이고, 과제 테스트와 수시 채용을 포함하여 3년차 공고까지 보더라도 3~40개.. 2023. 12. 30.
[부스트캠프 웹・모바일 8기] 극찬 받은 개발 프로젝트 문서화 시작하기에 앞서 star 구걸을 위한 홍보부터... https://github.com/boostcampwm2023/and04-catchy-tape GitHub - boostcampwm2023/and04-catchy-tape: 야, 너도 가수 할 수 있어! 📼 야, 너도 가수 할 수 있어! 📼. Contribute to boostcampwm2023/and04-catchy-tape development by creating an account on GitHub. github.com 프로젝트 노션 소개 사실 제목은 어그로이고, 극찬까지는 모르겠지만 칭찬을 받은 건 맞다. 프로젝트에 문서에 대해 운영진, 동료 캠퍼, 자문위원(내 기준 유명하신 분), 멘토님께 칭찬을 받았다. 특히 운영진께서 슬랙 채널에 우리 프.. 2023. 12. 20.
[Android] 플러그인을 이용하여 공통 설정 없애기 멀티 모듈 구성에서 build.gradle(.kts)? 코드를 작성하다 보면 gradle에 공통으로 사용하는 코드가 생긴다. 예를 들면 hilt 사용을 위해 kapt(혹은 ksp) 플러그인과 의존성을 추가한다거나, Java 버전을 설정하는 코드 등이 있다. 버전을 한 번에 변경하는 건 buildSrc나 버전 카탈로그(toml)를 이용해 처리할 수 있다. 하지만 많은 모듈에 같은 코드를 추가하거나 삭제해야 하는 상황이라면? 프로젝트가 지속되어도 일관성을 유지할 수 있을까? 이런 고민을 해결하기 위해 플러그인을 사용할 수 있다. 현재 프로젝트에서 사용할 정도로만 학습했기 때문에 지식을 전달한다기보다는 어떤 과정으로 공통 코드를 추출했는지 시간 순으로 이야기할 예정이다. (정확히 이 상황에 맞는 공식 문서 페.. 2023. 11. 21.
[Android] GitHub Actions를 이용하여 자동으로 PR 테스트하기 테스트 자동화를 공부하게 된 동기 위 사진은 PR 페이지 하단에서 확인할 수 있는 단위 테스트 결과이다. 드로이드 나이츠 2023 앱에서 이런식으로 PR에 대해 테스트를 자동화하는 것을 보고 "멋지다"고 생각했다. 이전에도 한 번 따라해 보려 했으나, 테스트 결과의 성공 실패 여부만 나오고 위와 같이 결과 보고서를 만들어주지는 않았다. 내적인 이유는 멋지다였고, 표면상의 이유는 개발 주기에 테스트를 포함함으로써 서비스의 퀄리티를 높이는 것이다. 요즘 단위 테스트에 대해 공부하고 있기도 하니, 이번에 진행중인 프로젝트에서 단위 테스트로 멋지게 작성할 예정이다. GitHub Actions를 이용한 테스트 자동화 이 글에서는 위 사진처럼 GitHub actions를 활용하기 위한 방법에 대해 살펴볼 예정이다... 2023. 11. 15.
[부스트캠프 웹・모바일 8기] 그룹 프로젝트 시작 (안드로이드) https://github.com/boostcampwm2023/and04-catchy-tape GitHub - boostcampwm2023/and04-catchy-tape: 📼 📼. Contribute to boostcampwm2023/and04-catchy-tape development by creating an account on GitHub. github.com 부스트캠프 마지막 과정인 그룹 프로젝트가 시작되었다. 위 리포지토리에서 진행하고 프로젝트 진행 과정을 외부인이 확인할 수 있도록 상세하게 정리될 예정이니 많관부! 문서 공개 학습 스프린트는 규정상 내용을 공개할 수 없었지만, 그룹 프로젝트는 가이드에 따라 GitHub를 프로젝트와 관련된 많은 내용들을 공개해야 한다. 우리 팀은 일정 관리를 .. 2023. 11. 8.
[Android] 네트워크 요청을 처리하는 여러 가지 방법 (Retrofit2, 비동기 처리) 참고사항 : 이 글은 Coroutine 위주로 설명하고 있으며, ReactiveX 라이브러리에 대해서는 설명하지 않는다. Retrofit의 활용 방법 위주로 설명하고 있으며, 코루틴이나 상태 관리 방법에 대해 자세히 다루지는 않는다. 개인적인 의견이 포함되어 있으므로 정답을 찾는다는 생각보다는 참고 코드 정도로 활용하는 것이 좋다. 0. 잡담 "안드로이드 retrofit"이라고 검색하면 약 10번째에 과거에 작성했던 내 글이 나온다. ("android retrofit" 검색은 약 40번째) 해당 글은 응애 시절에 작성했던 글로 적절하지 않은 내용을 소개하고 있다. 부끄럽게도 누적 조회수가 1000을 넘겼다. 그래서 더 정확한 내용을 소개하기 위해 새로 작성하게 되었다. 정확하지 않은 내용을 작성하더라도 .. 2023. 10. 15.
컨퍼런스 참여하고 모은 노트북 스티커 사실 컨퍼런스는 스티커 모으려고 간다 원래 3개월 전에는 위와 같은 상태였는데, 사회적 거리두기가 끝나고 안드로이드 컨퍼런스도 활발하게 열려서 스티커 모을 기회가 많았다. 규칙 없이 붙이다 보니 더 이상 붙일 공간이 없는 상태에 이르렀는데... 몇 개를 떼어 내고 아래 사진과 같이 마이그레이션 했다. 수평으로 붙이려 했으나 기울어진 게 보이거나 글자 위주 스티커 일부를 떼어 냈다. 글자보다는 캐릭터가 더 예쁜 것 같다. 수평으로 붙이고 싶지만 조금만 비뚤어져도 티가 확 나서 붙이기가 쉽지 않다. 굿즈로 받은 라인 스티커와 드로이드 나이츠 스티커가 마음에 든다. 당황해서 땀 흘리는 뒤통수 너무 귀엽지 않나? 사실 네부캠 슬랙에도 자랑하고 싶었는데, 드로이드 나이츠는 화요일에 갔다온 거라 자랑할 수가 없었다.. 2023. 10. 3.
말하는 방식을 바꿔서 학습하기 SW마에스트로에서 멘토님께 들었던 얘기 중 "들은 얘기", "~인 것 같다"는 책임을 회피하는 말이라는 얘기를 들었다. 그때 조금 센 단어를 사용하기는 했는데, 인상에 남기도 하고 도움이 되는 얘기였다. 물론 저 단어를 사용하지 말라는 얘기라고 생각하지도 않고, 저때 어떤 책임이 있던 상황도 아니었다. 정확한 맥락은 기억나지 않지만 단순히 토론하다가 정보의 정확성을 얘기할 때 "~에게 들었다"라고 답한 상황 정도로 생각하면 된다. 저 말을 들은 이후로 비슷한 말을 하게 될 때마다 생각 나는 것 같다. "왜 내가 이 단어를 쓰려고 할까?" "안 쓰려면 어떻게 해야 하지?" 등을 생각했다. 누가 얘기했든 확신이 있었다면 이런 수식어를 붙이지 않았을 것이다. 내가 습득한 정보를 지식으로 만들지 않고, 혹은 내.. 2023. 9. 1.
[Android] Compose를 이용한 애니메이션 ※ 완성되지 않은 코드입니다. 참고만 해주세요. 애니메이션을 넣게 된 계기 넥스터즈에서 비교적 작은 규모의 프로젝트를 진행하게 되어서 디자이너 분께 애니메이션 같은 인터렉션을 넣어도 괜찮다고 말씀드렸다. 그 결과 구현하게 된 UI는 위와 같다. 애니메이션은 대략 위와 같고 디테일은 아직 잡혀있지 않은 상태이다. 코드도 아직 정리되어 있지는 않다. 돌아가는 형태의 UI가 있고, 토글(?) 버튼을 누르면 펼쳐져서 한 번에 많은 폴더를 확인할 수 있다. 토글버튼을 눌렀을 때 확장되는 애니메이션을 제외하고는 사실 그래픽 요소이다. 단계별로 구현하자 아무래도 한 번에 구현할 수 있는 UI는 아니어서 단계별로 나누어 구현했다. 위 사진은 노션에 대충 휘갈겨 놓은 내용으로 나만 알아볼 수 있다. 막상 구현해 보니 어.. 2023. 8. 19.