안녕하세요저는 금융 SI 폐쇄망 환경에서 일하며, 문제를 해결하고 업무 효율을 높이기 위해 다양한 자동화 도구를 만들고 공유했습니다. SI 프로젝트에서 문서 작성, 개발, 프로젝트 관리 업무 수행 중 다양한 불편함과 문제를 만났습니다.외부 라이브러리나 각종 상용 프로그램을 활용하면 쉽게 해결할 수 있는 문제들이었지만,금융 SI 폐쇄망이라는 특성상 주어진 도구만을 활용해야 했고, 다양한 기술적-환경적 어려움이 있었습니다.처음엔 그것을 핑계 삼아 불평불만만 가득했습니다.하지만 여러 가지 일들을 겪으며 생각을 바꿨고,나를 위해, 팀을 위해 지금 당장 할 수 있는 것을 찾아 시도했습니다.드라마틱한 성과, 깊은 기술적 챌린지, 우아한 해결 방법은 없었습니다. 전부 투박했고, 아주 기본적인 알고리즘의 조합이었지만 ..
1. 이 글을 쓰게 된 계기 테스트를 처음 공부할 때 각 테스트들을 왜 하는건지, 또 종류별로 이름은 왜 이렇게 복잡한지이 모든걸 대체 왜 하는건지 (목적) 어떻게 하는건지 잘 모르고 그냥 막 짜곤 했었다. 시도중인 테스트가 "왜" 필요한 것이고, "왜" 이걸 하고 있는건지 알고 있다면, 좀 더 본질에 맞는 테스트 코드를 작성할 수 있을 것이라고 생각해서 열심히 찾아봤던 기억이 있다. SW 테스트에 대해 모호함을 느끼는 것은 단순히 "열심히 찾아보지 않아서" 때문만은 아니다!SW 테스트들은 종류가 다양하고, 정의가 모호할 때가 있다. 다 비슷 비슷 한거 같고, 같은 용어인데 정의를 서로 다르게 말하는 경우도 많다. (일을 하다보면 그 테스트의 목적이나 개념을 그냥 안 알려주고 그냥 작성하게끔 하는 상황도..
1. Red-Black Tree란레드 블랙 트리란 Balanced Binary-Search Tree로, 모든 노드들을 빨간 색 혹은 검은 색으로 칠해 놓았기 때문에 레드-블랙 트리라고 부른다. 위 글을 보면 Red-Black 트리라는 이름의 어원을 알 수 있다.어이 없지만, 이런 이유로 Red-Black 트리이다! 트리를 처음 고안한 논문의 저자들이 사용할 수 있었던 프린터가 만들어낸 가장 "멋진"색이기 때문이라고 한다. 레드 블랙 트리는, 이런 빨강-검정으로 트리의 노드들을 색칠하고, 색에 대한 규칙을 세워 규칙을 어기는 경우 다시 균형을 맞춰 높이를 낮춘다. 균형을 맞추는 트리들이 균형을 맞추는 이유는 트리 Depth를 줄여 빠르게 탐색하기 위해서이다! 편향된 트리를 보면 알겠지..
- 발표 영상 (글을 추천합니다) : https://youtu.be/tdXd-f7QCnE?si=PidTl2ND8x4NxvdK&t=306 디미터 법칙은 객체의 자율성을 높혀 직접 협력하도록 만들어, 객체간 결합도를 낮추고, 응집도를 높히는 법칙이며, 갭슐화를 위한 구체적인 지침이다. 이름은 디비터 법칙이 처음 제안된 프로젝트의 이름인 "Project Demeter"에서 유래되었다.객체의 자율성이란 무엇일까? 객체간의 결합도와 응집도는 무엇이며,구체적으로 어떻게 결합도를 낮추고 응집도를 높일 수 있는가? 결론적으로 이것은 왜 필요한가? 어디에 좋은가?이를 알기 위해 우리는 먼저 객체지향에 대해 생각해보자. 1. 세상과 객체 01010110111...케이블과 진공관을 활용해 프로그래밍을 하던 시절이 있..