본문 바로가기
  • 장원익 기술블로그

더 좋은 개발자 되기/🔥 나의 개발론 🔥16

책임 주도 설계(RDD) 와 단일 책임 원칙(SRP) 에서 말하는 책임은 다르다 들어가며 최근 우연한 기회에 객체지향의 사실과 오해 와 오브젝트라는 책을 쓰신 조영호님과 객체지향에 대한 간단한 토론을 할 수 있는 자리가 생겨 그 자리에서 oop 의 다양한 것들에 대해서 이야기를 나누었다. 회사 동료이자 내가 있던 팀의 리드 개발자였던 분의 블로그 글인 조영호님과의 객체지향에 대해서 이야기하기, happy-coding-day.tistory.com 에서 나온 몇가지 주제중 한가지에 대해서 이야기해보려 한다. 조영호님과 객체지향에 대해서 이야기하기 트레바리에서 (전) CTO님 덕분에 오브젝트 저자 조영호님과 티타임을 가질 수 있는 기회가 생겼습니다. 티타임 자리에서 물었던 질문에 대해서 기록을 남깁니다. 아쉽게도 사진은 찍지 못했지만, happy-coding-day.tistory.com .. 2023. 1. 8.
왜 자바는 반복에 있어 repeat 대신 iterate 라고 할까? 를 통해 알아보는 캡슐화와 메시지 글을 시작하며 먼저 이야기하고싶은 것은 이번 글이 자바의 Iterator 나 Iteratable 인터페이스에 대해서 동작 원리에 다루지 않는다. 단지 자바가 왜 이러한 용어를 채택하였는지를 내가 배웠던 객체지향을 통해서 알아본다. 객체지향의 캡슐화와 메시지에 대해서 초점을 맞추어 이야기해보도록 하겠다 들어가며 java 나 kotlin 에는 iterator 라는 인터페이스가 존재한다. iterator 는 특정 컬렉션이나 엔티티의 순서를 나타낼 수 있으며, 순차적 접근을 할 수 있도록 하는 책임을 수행하는 인터페이스이다. 실제 구현된 코드를 봐보자. 이 글을 이해하는데 중요한 것은 아니지만 아래의 코드는 int type 의 iterator, IntIterator 의 구현체 중 하나인 ArrayIntItera.. 2023. 1. 6.
백엔드 개발자로 밥벌이 1년을 축하하며 2022년의 회고를 드디어 내가 개발자로 밥벌이를 한지 1년이 되어가는 시점이 왔다. 매년 내가 스스로 성장해가는 것이 느껴질 만큼 항상 난 뭔가를 많이 해왔고 돌아보면 그것들이 매우 가치있는 것들이었다. 올해 2022년도 마찬가지로 한 해를 돌아보면 정말 많은 것들을 했다는것을 느꼈다. 개발자의 꿈을 품었던 지난 2019년도와 공부에 미쳐있던 2020년, 2021년도와 비교도 되지 않을만큼. 우선 큰 이유는 바로 내 취업이다. 첫 취업과 이직을 포함한 전반적인 2022년도 난 2019년 첫 개발을 시작할 때 부터 꼭 네이버, 카카오, 라인이 내 첫 직장이 될 것이고 그것만이 유일한 option 이라고 스스로 세뇌를 시키면서 살았다. 그래서 대부분의 나의 취준 커리어나 학습 방향 및 목표가 흔히 말하는 네카라에 맞춰져 있었.. 2022. 12. 29.
나는 개인적으로 CQRS 를 이렇게 정의내리고 이렇게 생각한다. 이번 글은 100% 저의 경험과 시야에만 의존하기에 주관적이며 부적절할 수 있습니다. 또한 몇가지 가설을 세우며 가설에 대한 반박과 이유를 '개인적인 해석'에 따라서 흘러갑니다. 또한 CQRS 에 대한 기본적인 이해가 없다면 글을 읽는데에 있어 공감이 없을 수 있습니다. CQRS 에 대한 자세한 이야기는 CQRS 패턴에 대한 오해 풀기 글에서 확인할 수 있습니다 고민의 시작 나는 종종 개발자 모임에 참여해서 내 이야기를 하고 그들의 이야기를 듣는 것을 즐긴다. 네트워킹도 하며 부족한 부분들을 찾아가며 내가 잘 하는 것들을 이야기하며 건강한 대화들이 오가는 이 모임을 좋아한다. 평소와 다름이 없던 모임에서 나는 커리어에 대한 이야기를 하다가 다른 선배 개발자로부터 이런 이야기를 듣게 되었다. 지금 연차에 .. 2022. 12. 6.
[Testing] Test Double, 테스트 더블-테스트 환경을 제어하는 다양한 방법 목차 서론 테스트 더블이란 테스트 더블의 종류 Test Stub Fake Test Spy Mock Dummy 결론 서론 이 블로그의 여러 포스팅에서 Test Double 이라는 표현이 자주 등장한다. 이를테면 제어 불가능한 것을 제어하자 (1) - static method 를 mocking 하기 힘든 이유 같은 글에서 말이다. 오늘은 이 테스트 더블에 대해서 알아보려 한다. Test Double, 테스트 더블이란 영화나 드라마에서, 무술 장면이나 실제 배우가 출연하기 힘든 위험한 장면을 촬영할 때 그 분야에 전문적으로 숙달되어 있는 사람을 고용하는데, 이들을 스턴트맨 혹은 스턴드 더블이라고 부른다. 스턴트 더블은 특정 영상 촬영분을 위해 최적화된 전문가가 대신해서 연기를 수행하는 것이라고도 생각할 수 있.. 2022. 9. 25.
오버엔지니어링 하지 않기 내가 아는 거의 대부분의 개발자는 자기계발을 정말 열심히 한다. 최근 컨퍼런스에서 들었던 어떤 세션에서 재미난 말을 들었는데, 자바 스프링 진영에서 굉장히 유명하신 어떤 시니어 개발자분께서는 이런 말씀을 하셨다. “하루 3시간씩 공부하는 것을 시스템화 합니다”. 이외에도 많은 많은 개발자들은 퇴근 후 개발을 계속하며 주말에도 스터디를 진행하곤 한다. 그만큼 배우는 것도 많고 보고 직접 해보는 것도 많다. 나 역시도 그렇다. 어제는 정말 기억에 남는 하루였다. 꽤 오랜 시간동안 고민했던 문제를 드디어 이해했던 역사적인 날이고, 문제가 해결되니 그 외의 다른 것들도 술술 이해가 가던 날이었다. 그리고 월요일인 오늘 뿌듯한 마음을 유지한 채로 출근하여 업무를 하던 중, 어제 내가 한달동안 고민했던 문제와 정확.. 2022. 8. 29.