분류 전체보기
-
2022년 7월 22일 TIL - 하얗게 불태웠어...Today I Learned 2022. 7. 22. 22:34
오늘 이월 5주차 발표를 무사히 마쳤다. 이월이라는 늪에서 다소간은 벗어난 기분이다. 그리고 발표를 끝내고도 찜찜하게 남아있던 금요일 코딩 테스트와 수요일 코딩 도장 문제도 짬을 내서 해치워버렸다. 생각해보니 정신없는 와중에 골든벨 50문제도 다같이 풀었었는데 40문제를 맞춰서 1등도 했었다! 간만에 골든벨 전통의 강호 행세도 할 수 있었다. 오늘 기분 좋은 일이 꽤나 집중적으로 찾아왔다니... 사람이 항상 안 되기만 하는 법은 없는 것 같기도 하다. 이번 주차에는 감정의 기복이 비교적 심했다. 목요일 낮에는 이곳에 발을 들인 후 차마 입 밖으로 꺼내기 두려운 그 단어까지도 머리속에서 맴도는 듯했다. '에이 내가 설마 ㅋㅋ' 했었는데, 현실이 되는 것만 같았다. 다행이 일단은 2번째 레벨 테스트 전까지 ..
-
메가테라 웹 개발자 과정 5주차 (2) 주간 회고주간 회고 2022. 7. 22. 21:33
충격의 Java 8주차 이월을 딛고 마침내 모두가 기초 과정 레벨 테스트를 통과했다. 다만 그 과정은 결코 쉽지 않았고, 지난 8주차 때의 첫 레벨 테스트때보다 험난한 과정을 거쳤다. 인상적이라 생각했던 몇 가지 부분을 되짚어본다. 투지와 실행력 프로젝트 과제가 처음 주어진 토요일부터 월요일 점심까지 만들고자 하는 프로그램의 핵심 가치를 지닌 MVP(Minimu Viable Product)를 제작해 시연하는 과정을 거쳐야 했고, 엄연히 '핵심 가치를 지닌 채 (기준은 다를지언정) 완성되어 작동하는' 프로그램을 짧은 시간 안에 빠르게 만들어야 했기 때문에 구현에 대한 압박이 거셌다. 팀원분들은 고통스러워하면서도 메서드를 찾아가고, 스스로 제시한 문제를 풀고, 더 나은 과정을 거치기 위해 무엇을 해야 하는지..
-
2022년 7월 21일 TILToday I Learned 2022. 7. 21. 23:51
목요일에 끝난 화요일 작업 계획 오늘의 작업 계획은 세 파트로 나뉘었다. 순서대로 1. 수요일에 마치지 못한 계획을 이어서 수행하는 부분, 2. 리팩터링과 디자인 측면, 3. 여유가 있다면 도전해 볼 기능 추가 부분의 세 가지 파트로 구성했었다. 처음에는 계획들을 순서대로 시도하려 했었는데, 뽀모도로 중간중간마다 있는 작업 결과물 공유 자리에서 디자인 작업을 같이 하면서 눈으로 보이는 결과를 만들면서 하는게 좋겠다는 동료들의 피드백이 있어 1번 계획을 진행하면서 2번 계획 중 디자인 부분을 같이 진행했다. 1번 계획과 2번 계획 다이얼로그 창이나 이미지를 불러와 배치하는 식인 작업 결과의 형태가 직접적으로 보여지는 결과물을 만들어내는 작업이여서 다른 날보다는 결과물에 대한 흥미를 갖고 진행할 수 있었다...
-
2022년 7월 20일 TILToday I Learned 2022. 7. 20. 23:58
다른 모든 클래스들에서 최상위 클래스의 멤버에 접근하는 방법 기존의 프로그램은 버튼을 눌렀을 때 출력되는 화면이 새로 생성된 frame에 출력되도록 했었으나, 수정을 통해 하나의 메인 frame에 panel이 들어가 있고, 그 panel을 필요에 따라 교체하는 방식으로 콘텐츠를 출력하도록 수정했다. 전략 패턴을 활용해보는 것은 전략 패턴과 interface의 활용을 자세히 살펴볼 시간이 부족해 포기했다. 계획하고 있는 양에 비해 시간이 많이 부족하기에, 일단 쓸 수 있는 방식을 사용하기로 했다. 프로그램의 구조도를 생각해보면 여러 패널 클래스가 있고, 각 패널 클래스들에서 특정 버튼을 누를 때마다 각 클래스를 생성해서 호출하는 방식이다. 패널이 출력되어야 하는 창은 하나이기에, 어떻게 하면 다른 어떤 클..
-
2022년 7월 19일 TILToday I Learned 2022. 7. 19. 23:56
월요일 아침까지 끝내고 싶었던 MVP가 오늘인 화요일 오후 3시 가량이 되어서야 끝났다. 지금까지는 다른 모든 기능들을 새로운 JFrame에 띄우는 방식을 택했는데, 버튼을 누르면 하나의 화면에서 화면 전환이 이루어지도록 할 계획이다. 어떻게 할 수 있을까? MainFrame에 ContentPanel을 하나 놓고, 버튼을 누를 때마다 ContentPanel에 그 작업을 수행하는 Panel을 인스턴스로 넣어주는 방식을 해볼까? 그러려면 어느 클래스에서든지 ContentPanel에 접근할 수 있어야 할 것 같다. 아니면 프로그램이 시작될 때 일단 모든 패널들끼리 서로 알맞게 add된 상태로 만들어 상속 관계를 형성하고, 패널이 실행되는 시점에서는 getParent나 getComponent로 이렇게 저렇게 할..
-
2022년 7월 18일 TIL - MVP는 '핵심 가치'를 드러내는 '완성된' 제품이다Today I Learned 2022. 7. 18. 23:58
오늘 오후 1시부터 있었던 MVP(Minimum Viable Product) 1차 점검 시간에 있었던 일이다. 당초 시연 때까지 MVP로 만들어내려 했던 수준까지 프로그램이 완성되어 있지 않아 일단 기능하는 부분까지만 프로그램을 시연했다. 당시의 프로그램에는 기능하는 버튼도 있었고, 일단 작동하지는 않고 들어가만 있는 버튼도 추가되어 있는 상태였다. 시연 과정에서 작동하지 않는 버튼에 대한 지적이 이루어졌다. MVP는 제품이 보이려 하는 '핵심 가치'가 무엇인지 파악해 그 부분만을 추려내어 빠르게 구현해 보여주는 '완성된' 제품인 것이므로, 기능하지 않는 부분이 존재한다는 것은 그 제품이 완성된 것이 아니라는 의미였다. 그렇다면 MVP를 잘 완성시키기 위해서는 어떻게 할 수 있을까? 처음부터 다양한 기능..
-
2022년 7월 17일 TILToday I Learned 2022. 7. 17. 23:57
오늘은 내가 무엇을 느꼈고 어떤 액션 플랜을 도출해야 할지 생각할 힘이 없다. 하루를 천천히 돌아본다. 오전 이른 시간인 5시에 일어났다. 어제는 정말 최소한의 모델인 하나의 게시글에 어떤 요소가 들어가야 할 지 정도만 짜놓은 상태였는데, 구상한 모델을 클래스로 정의해 옮겼다. 중간중간 졸고 있는 모습을 발견해 7시 30분부터 1시간 가량을 자고 돌아왔다. 점심 전까지는 어제 짜두었던 MVP 작업 일지 중 수행하지 못했던 여러 개의 게시글 출력 기능을 구현했다. 오후 점심을 먹고 레벨 테스트 안내 페이지의 내용이 다소 바뀐 것을 확인했다. 프로젝트 필수 조건에 게시판 기능이 있어야 한다는 내용이 사라지고, 도메인 모델에 대한 내용이 추가된 것을 확인했다. 추가적으로 MVP의 예시가 추가된 것을 확인했다...
-
2022년 7월 16일 TIL - 반복문의 조건 변수는 고정된 값을 사용하는 것이 좋다Today I Learned 2022. 7. 16. 23:57
이월 4주차 월요일 코딩 도장 문제 문자열 내림차순으로 배치하기를 오늘에서야 풀어서 제출했다. 문자열의 내용을 각 문자의 순서대로 정렬해주는 메서드를 사용하지 않고, 문자 하나하나를 새로운 배열에 넣는데 이미 배열에 들어가있는 문자들과의 순서를 고려해서 어느 위치에 들어가도록 할지 결정하는 방법으로 푸는 것을 시도했다. 월요일 일과시간 동안 문제를 제출했지만 일부 테스트 케이스는 맞고 일부 테스트 케이스는 틀리는 것을 확인했다. 예외 케이스에 대한 처리를 해주지 않았거나, 논리 구조상에 일부 허점이 있을 수 있을 것이라는 생각이 들었다. 오늘 소스코드의 구조를 다시 확인해본 결과 의도하지 않은 동작을 발생시키는 구조를 확인해 해당 부분을 바로잡은 결과 모든 테스트를 통과하는 것을 확인할 수 있었다. 어떤..