소프트웨어 장인 / 개발 / 산드로 만쿠소
리뷰2025. 6. 20. 01:02소프트웨어 장인 / 개발 / 산드로 만쿠소

📚 읽게 된 계기이 책은 우아한테크코스 추천 도서 목록에서 처음 접했다. 하지만 레벨 2가 끝날 때까지는 책의 존재를 잊고 있었다. 그러다 다른 크루의 강력한 추천을 받고 다시 꺼내 읽게 되었다.📖 읽으며 떠오른 생각들1. 기술에 대한 집착저자는 한때 디자인 패턴에 집착하며, 그것을 능숙하게 활용하는 것이 곧 ‘좋은 개발자’의 기준이라 믿었다. 그러나 어느 날, 선배 개발자의 날카로운 지적이 그의 사고를 뒤바꿔 놓는다.“이 코드가 얼마나 무례한지 알고 있습니까? 많은 팀과 개발자들이 같은 코드베이스에서 아주 큰 시스템을 만들고 있습니다. 모두가 이런 식으로 난해한 코드를 만든다면, 다른 사람이 코드를 이해하기가 얼마나 어려워질지 생각해보셨나요?”이 일침은 저자에게 복잡한 코드가 반드시 좋은 코드가 아..

단 한 번의 삶 / 에세이 / 김영하
리뷰2025. 5. 29. 22:05단 한 번의 삶 / 에세이 / 김영하

📚 읽게 된 계기교보문고를 거닐다가 김영하 작가의 이름이 눈에 들어왔다. 방송에서도 자주 접했고, 예전에 읽었던 『살인자의 기억법』이 꽤 인상 깊었다. 하지만 그 기억만으로 이 책을 집어들진 않았을 것이다.결정적인 계기는 책의 제목이었다.단 한 번의 삶.이 말은 내 삶의 가치관이 출발한 문장이기도 하다. 나는 마치 홀린 듯 이 책을 들었다.📖 읽으며 떠오른 생각들1. 삶, 죽음, 고통, 변화 - 무거운 주제를 가볍게이 책은 삶과 죽음, 고통, 변화 등 묵직한 주제들을 다루지만, 문장은 가볍고 부드럽다. 요가를 하며 머리서기를 시도했던 일상적인 경험, 커피를 볶아 마신 이야기, 부모님과의 에피소드 등 누구나 공감할 만한 소재들을 통해 무거운 철학을 스며들게 한다.처음엔 "이런 주제를 다룬 책은 무거워..

개발/우아한 테크코스2025. 4. 28. 19:54Entity 와 VO, 논리적 식별자 고민

엔티티(Entity)와 값 객체(Value Object)란 무엇인가?Entity와 Value Object 개념은 에릭 에반스의 DDD 책에서 나왔다고 한다.이에 대해 소개한 마틴 파울러의 글이 있는데, 이 글에 따르면 엔티티와 값 객체의 정의는 다음과 같다.Entity: Objects that have a distinct identity that runs through time and different representations. You also hear these called "reference objects."Entity: 시간과 다양한 표현을 거치더라도 식별할 수 있는 고유성(identity) 을 가진 객체. "Reference Object"라고도 부른다.Value Object: Objects t..

삶을 "추상화"하자
생활/가치관2025. 4. 9. 00:15삶을 "추상화"하자

🔍 추상화란?추상화라는 단어를 검색해보면, 위키피디아에서는 이렇게 설명한다:추상화(abstraction)는 복잡한 자료, 모듈, 시스템 등으로부터 핵심적인 개념 또는 기능을 간추려 내는 것을 말한다.이 설명만 보면 조금 딱딱하게 느껴질 수 있지만, 사실 인간은 이미 일상 속에서 자연스럽게 추상화를 수행하고 있다.🪑 우리는 이미 추상화를 하고 있다예를 들어, 우리가 "의자"라는 단어를 들었을 때 떠올리는 이미지를 생각해보자. 네 다리가 있는 나무 의자, 바퀴가 달린 사무용 의자, 바닥에 앉는 좌식 의자 등등. 겉모습은 제각각이고, 엄밀히 따지자면 모두 다른 사물이다. 하지만 우리는 이 모든 것을 "앉는 용도"라는 본질적인 공통점으로 묶어 ‘의자’라는 하나의 개념으로 이해한다.이처럼 인간은 다양한 구체적..

우테코 레벨 1 인터뷰 회고 - 블로그를 쓰자.
생활/우아한 테크코스 7기2025. 4. 8. 21:51우테코 레벨 1 인터뷰 회고 - 블로그를 쓰자.

🔍  레벨 인터뷰란?우아한 테크코스의 과정 중에는 레벨 인터뷰라는 과정이 존재한다.  쉽게 말해서, 모의 면접 이다.  레벨 인터뷰는 해당 레벨 과정을 겪으며  그 속에서 본인이 무엇을 배웠는지 점검하는 시간이다. 🔍  구체적인 진행방식각자 레벨 1 과정 동안 배운 것들을 A4 한 장 크기로 제출한다. 본인들이 제출한 로그를 토대로 코치+크루원들로 구성된 인터뷰이들이 질문을 하면 인터뷰어가 질문에 대한 답을 하는 방식이다.  😂  레벨 인터뷰 진행  일단 인터뷰를 진행하기 전, 너무 떨렸다.  긴장된 마음을 억누르며 나는 인터뷰어로서 인터뷰이들을 마주했다.  내게 들어온 질문들은 상속과 조합, 그리고 인터페이스. 와! 다행히 내가 준비한 주제들이 질문으로 들어왔다. 저 키워드에 대한 것들은 내 머릿..

개발/우아한 테크코스2025. 3. 24. 21:58Level 1 장기 미션 - TDD의 시작점?

TDD와 설계의 순서, 그리고 추상화에“기물은 움직일 수 있다”에서 출발한 고민이번 미션은 장기 구현. korean chess 장기를 페어 프로그래밍으로 구현해야 하는 미션이다. 맨 처음 우리에게 주어진 요구사항은 두 개였다.장기판의 장기말들을 초기화해라.장기판의 말들은 움직일 수 있다.페어와 나는 먼저 1번을 끝내고 그 뒤에 2번 요구사항을 시작할 때가장 작은 단위의 테스트로 “기물은 움직일 수 있다” 를 출발점으로 잡았다. 그렇게 우리의 TDD 여정은 시작됐다.당시 우리는 enum 기반으로 각 기물의 움직임을 구현했고, 이를 중심으로 Piece 코드를 작성해나갔다. 나는 사실 각 기물을 개별 클래스로 나누고 싶었지만, 당장 그렇게 해야 할 명확한 이유를 찾지 못해 설득력 있는 리팩토링 방향을 잡지 못..

Boj-1874번/java/스택과 큐
카테고리 없음2025. 1. 22. 15:49Boj-1874번/java/스택과 큐

생각보다 많이 어렵고 시간을 오래 쓴 문제.  문제를 풀 때는 답이 보이지 않고 너무 어려웠으나  결국 메모장에서 스택의 모습을 대충 작성해보며 관찰하니그동안 내가 잘못 생각해왔던 부분들을 바로 알 수 있었고 금방 고칠 수 있었다.  이런 자료형이나 스택을 쓸 때는 주석이건 메모장이건 활용해서 적극적으로 예시, 가시화를 활용하자.머릿속으로만 생각하니 더 까다로워지는 것은 당연하다.  구체적 한 부분의 스냅샷을 찍어서 그 알고리즘을 직접 관찰하는 느낌으로 진행하는 습관을 기르면 좀 더 금방 풀 수 있을 것 같음. import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.St..

우아한 테크코스 7기 합격 회고
수업/회고2025. 1. 21. 16:06우아한 테크코스 7기 합격 회고

우아한 테크코스 7기에 합격했다. 스스로가 많이 부족하다 느꼈고 아직 배울 게 많다고 생각했기 때문에 더욱 값진 합격 소식이었다.  아직 블로그에 익숙하지 않아 우테코 합격 과정에서 따로 적은 글은 없지만 뒤늦게나마 회고를 작성하며 추후 우테코에 지원할 다른 이들에게 조금이나마 도움이 될 수 있도록 내 경험을 담담하게 적어낼 생각이다. 1. 자기소개서   가장 공을 들였던 부분이다. 왜냐면 나 역시 7기에 합격하기 위해 여러 가지 이전의 사례들을 찾아봤고 어디에서나 이 자기소개서가 매우 중요하다고 했기 때문이다.  자기소개서의 주제는 어느 기수 때나 공통으로 나오는 것 같은 주제가 있다. 그건 바로 몰입 경험..   찾아보니 매 기수에서 구체적 질문의 내용은 조금씩 틀려도 항상 비슷한 형태의 질문을 던졌..

image