RacingCar_01
서론
며칠동안 글 작성을 소홀히하여 어떻게 하면 더욱 자발적으로 할 것인가? 생각을 해봤다.
우선 나는 쓰고 싶은 생각들이 하루에 정말 많은데 그 순간 집중을 하고 하루가 흐르고 흐르다 결국 망각속으로 가버리는 아쉬운 상황이 자주 발생한다.
그러므로 좋은 아이디어가 떠올랐다.
우선 순위를 만들었다.
글의 퀄리티, 형식, 디자인 등 그런 것들보다 우선은 쓰자!
오늘 아침 기억의 중요성에 대해서 토론을 듣다가 현대 사람들은 논리적 사고에만 신경을 쓰는데 정작 기억의 재료는 소홀히한다고 얘기를 들었다.
공감이 간다. 어떠한 것을 5가지만 설명해봐라고 할 때 막상 잘 안 떠오르고 본질에 대해서 생각하고 분류를 하고 하는 것이 미래적으로 봤을 때 좋을 것 같다는 판단이 들었다.
그래서 오늘 틈이 날 때 키워드만 적어뒀다.
그렇게 하니깐 마음도 편하고 하루 일과를 마치기전에 이렇게 오히려 가벼운 마음으로 이런저런 얘기들을 작성하고 돌이켜보는 기회도 갖게되어서 아직까지는 좋은 아이디어였다고 생각한다.
키워드들
- iterm2 가 멋져보였다
- 자바 버전, 자바 홈, 쉘, 커밋메세지
- 계층 설계를 할 때 어떤 나만의 절차를 밟을지
- 뷰에 대한 생각
- 객체명에 대한 생각
- 단위테스트 읽고 정리
1. iterm2, 1주차 공통 피드백을 보면서..
강사님의 화려한 터미널을 보고 깜짝 놀래서 알아보니깐 iterm2 라는 Terminal Emuulator 였다.
그렇게 내가 사용하는 쉘이 무엇인지, 지금 껏 bash를 사용하는 줄 알았는데 알고 보니 zsh을 사용 중이었다.
cmd, powershell, bash, zsh 에 대해서 검색을 조금 하였고 앞으로 나는 zsh, powershell 두 가지에 집중을 하려고 우선 마음을 먹었다.
그 이유는 두 가지가 앞으로도 뛰어날 것 같고 맥과 윈도우를 교차해서 사용하다보니 그렇게 결정하게 되었다.
정작 iterm2는 사용은 아직 못했고 oh my zsh 을 설치해서 사용해봤다.
며칠내로 iterm2, wezterm, kitty 를 사용해볼 예정이다.
2. 2주차 과제를 하면서..
시작하기에 앞서 자바 버전을 확인했는데 1주차때처럼 23이 나왔고 프로젝트 설정에는 21로 되어있지만 불안하여 명령어를 이용하여 ~/.zshrc에 path 등록을 통해서 버전 21 고정을 하였다.
할 때마다 명령어들이 기억이 안나고 당황을 하는데 이래서 기록이 중요한 것 같다.
요즘은 그래서 두 번씩 만나거나 처음부터 자주 만날 것 같을 경우에는 노션에 바로바로 붙여넣고 있다.
나도 노션을 이쁘게 다듬는 연습을 해서 포트폴리오나 여러 가지 도움될 곳들에 당당하게 보여주고싶다.
생각을 실천으로 옮기도록 조금씩 꾸준하게 노력하자.
3. MVC 패턴을 보고 난 뒤..
코드리뷰를 하면서 MVC 패턴을 많이 봤고 놀랐다.
생각보다 많은 분들이 사용을 하고 있었기때문이다.
나도 소프트웨어공학을 공부할 때 본 적이 있다.
그치만 자세히 몰라서 이번 기회에 공부를 하는데 나는 아직까지도 실제로 적용하려니 헷갈린다.
근데 시간이 지나면 이 패턴이 너무 편할 것 같은 기분은 든다.
그러므로 열심히 적용해보고 고생을 하고 내 것으로 만들자.
Application, Controller, Service, Domian, Model, View, Util, Constants, Exception, DTO 등 낯선 것들이 많았다.
그래도 하루만에 어제에 비해선 많이 익숙해진 것 같아서 기분이 좋다.
이번 2주차때부터 과할수도 있지만 연습을 위하여 어떻게 할 지 하루종일 고민을 하였다.
결론은 Application, controller(입력 처리 출력), Service(비즈니스로직), Domain(개념관점), View(입출력), Utils(공용유틸리티), Constants(공용상수만)
우선은 이렇게 생각했고 적용을 해보고 어떤지 회고를 통해서 소감을 말해보겠다.
4. 뷰에 대한 생각
키워드를 적을 때만 하여도 고민이 됐었는데 지금은 혼자 정리가 되었다.
어떤 고민이었냐면 사용자 입력을 유도하는 콘솔 출력을 InputView, OutputView 중 누가 담당하게 할까 에서 고민을 했다.
처음에는 당연하게 인풋뷰에서 해야지라고 생각했는데 잠깐만, 메세지 출력인데 아웃풋뷰에서 해야하는 거 아니야? 라고 머릿속에서 서로 싸우기 시작했다.
그렇게 생각을 하다가 이런 생각이 들었다.
인풋뷰는 입력핸들러같이 사용자 입력에 관한 책임으로 생각을 옮기니깐 아,, 나는 그런 개념으로 접근을 해야겠다고 생각하고 사용자 입력에 관한 부분은 인풋뷰에 배정을 했다.
컨트롤러까지 같이 바라보니깐 이것이 맞는 것 같다고 생각이 들어서 그렇게 하였고 시간이 흘러서 다시 읽어보고 어떤 생각이 들지 미래의 나에게 질문을 던져본다.
5. 2주차 질문 디스코드 토론에 올릴 예정..이라고 노션에 적어둔 글
창의적인 네이밍 vs 정형화된 네이밍
처음으로 MVC 패턴을 적용하면서 클래스 이름들이 점점 정형화된 것처럼 느껴집니다. 한편으로는 클래스 이름에 생명체처럼 개념과 관련된, 더 창의적인 이름을 부여하고 싶다는 욕심이 들기도 합니다. 예를 들어 ‘기록관’이라는 이름을 사용하여 게임 기록을 관리하는 객체를 정의하거나, 게임 진행을 맡는 클래스를 ‘게임진행자’라고 부르는 식입니다. 하지만 깔끔하고 협업 시 일관된 이름을 사용하는 것이 좋다는 생각도 들어 두 가지 사이에서 충돌하고 있습니다. 이런 고민을 하는 제가 이상한 걸까요?
프로그래밍은 결국 팀과의 협업이 매우 중요합니다. 패턴에 맞춰 정형화된 네이밍을 사용하는 것이 협업을 위해 바람직하다는 생각이 들었습니다. 예를 들어, MVC 패턴에서는 Controller, Service, Repository와 같은 이름들이 마치 기호처럼 역할을 명확히 드러내죠. 그렇기 때문에 창의적이고 의미가 담긴 네이밍과 협업에서의 일관된 네이밍 사이의 균형을 어떻게 잡아야 할지가 큰 고민입니다.
최근에는 이동 전략을 적용하라는 조언이나 매니저 클래스 같은 일반적인 이름을 사용하라는 피드백을 받으면서, ‘주사위’ 같은 창의적인 이름을 사용하고 싶다는 욕구와 충돌하게 되었습니다. 이러한 고민이 더 깊어졌습니다. 확장성과 유지보수를 고려한 설계가 중요하다는 것은 알지만, 창의적인 이름을 사용하여 코드의 의미를 더 풍부하게 만드는 것도 저에게는 매력적인 부분입니다. 여러분은 어떻게 생각하시나요? 창의성이 느껴지는 네이밍을 적용하고 싶은 욕구와, 협업과 유지보수를 고려한 정형화된 네이밍 사이에서 균형을 잡는 것이 가능한 일일까요? 혹은 패턴에 맞는 이름을 우선적으로 사용하는 것이 더 나은 선택일까요? 이 문제에 대한 다양한 의견을 듣고 싶습니다.
이것도 결국에는 협력을 더 중요시 하게 생각을 했다. 다만 도메인이나 특정 부분들, 패턴이나 계층 외의 것들에 적용을 하기로 생각을 하였다.
그리고 수학을 최근들어서 점점 좋아하게 되는데 수학은 기호논리학이다.
세계 어디서나 수학 기호로 얘기를 나눌 수 있는 것이 좋았다.
우리 소스코드도 마찬가지라고 생각한다.
그러므로 창의적인 것도 좋지만 가독성 좋은 네이밍이 더욱 중요하다고 생각되고 변수, 메소드, 클래스, 패키지 등 앞으로 프로그래밍을 해 나가며 표현법을 익혀 보려한다.
문제는 영어다, 그래서 사실 커밋 메세지 쓸 때마다 영어로 쓰고 싶은데 쉽지가 않다.
이번 생에 한 번 나랑 오랫동안 지지고 볶아보자 영어야 사랑한다.
6. 단위테스트 등 미뤄둔 일들
단위테스트 링크를 아직 못봤다.
기능 목록 작성을 했고 아직 구현에 들어가지 못했다.
AngularJS commit comventions 도 확실하게 이해를 덜 한 것 같다.
오늘 공통 피드백을 보고 오히려 지금 헷갈려지기 시작했고 1주차에 미흡했던 요구사항들, 예를 들어 커밋 메세지, 2주차 단위테스트, 기본 API와 제공된 라이브러리, 포맷팅 등
내일부터 최대한 먼저 작성하며 읽어보고 과제를 들어가야겠다.
클린코드와 실용주의 프로그래밍도 읽고싶어 준비를 해뒀는데 시작을 못해서 아쉽다.
이런 글을 쓸 시간에 책을 보자라는 마인드였었는데 이제는 조금 변했기때문에 한 번 이렇게 자주 글을 쓰면서 생활을 유지해보자.
내 글의 어투들은 비슷하다, 이것도 메타인지처럼 같은 어휘를 다르게 사용하려 해보고 문장 구성도 바꿔보려 노력해야 변할 것 같다.
그럴려면 우선은 글을 꾸준하게 쓰기가 중요하다고 생각한다.
옛날에 읽었지만 살아남은 기억 중 하나인 다독, 다작, 다상량.. 역행자라는 책에서 건져온 키워드이다.
다독! 다작! 다상량! 외치며 오늘 하루를 마무리 해본다.