전체 글

· Algorithm
알고리즘 공부를 할 때 알아야 하는, 알면 좋은 개념들을 정리해보았다. 지속적으로 추가할 것이다. #include 과 #include "헤더파일" 의 차이점. #include 은 '컴파일러가 설치된 폴더'에서 해당 헤더 파일을 찾으라는 지시이다. #include "헤더파일"은 '현재 소스 파일이 존재하는 폴더에서 해당 헤더 파일을 먼저 찾고 없으면 '컴파일러가 설치된 폴더'에서도 찾는다. 사용자가 만든 헤더파일이나 추가 외부 라이브러리를 포함하고 싶은 경우 사용한다. 정규 표현식(Regular expression) : 특정한 규칙을 가진 문자열의 집합을 표현하는 데 사용하는 형식 언어. 특정한 조건이나 패턴이 있는 문자열을 간단하게 표현할 수 있다. c++ 의 경우 C++ 11부터 사용 가능하다. reg..
· Book Report
5. 책임과 메시지 책임 객체지향 공동체를 구성하는 단위는 자율적인 객체이다. 자율적인 객체 : 스스로 정한 원칙에 따라 판단하고 스스로의 의지를 기반으로 행동하는 객체 객체가 어떤 행동을 하는 유일한 이유는 다른 객체로부터 요청을 받았기 때문이다. 이 요청을 처리하기 위해 객체가 수행하는 행동을 책임이라고 한다. 과도하게 상세한 책임 - 협력의 최종 목표는 만족시킬지 몰라도 객체가 누려야 할 자유를 훼손 자율적인 책임 - 객체가 어떻게(how) 해야 하는가가 아니라 무엇(what)을 해야 하는가를 설명 추상적이고 포괄적인 책임은 협력을 좀 더 다양한 환경에서 재사용할 수 있도록 유연성이라는 축복을 내려준다. 그러나 책임은 협력에 참여하는 의도를 명확하게 설명할 수 있는 수준 안에서 추상적이어야 한다. ..
· Book Report
4장. 역할, 책임, 협력 인간의 행동을 결정하는 것은 타인과의 협력이다. 객체의 세계에서도 마찬가지로 협력이 객체의 행동 방식을 결정한다. 객체지향 초보들이 가장 흔히 하는 실수는 협력을 고려하지 않은 채 객체가 가져야 할 상태와 행동부터 정한다는 것이다. 협력 협력은 한 사람이 다른 사람에게 도움을 요청할 때 시작된다. 요청을 받은 사람은 일을 처리한 후 요청한 사람에게 필요한 서비스를 제공하는 것으로 요청에 응답한다. 협력은 다수의 연쇄적인 요청과 그 응답의 흐름으로 구성된다. 요청과 응답이 가능한 이유는 요청받은 객체가 해당 요청에 응답하는데 필요한 지식과 행동 방식을 알고 있기 때문이다. 그리고 요청과 응답은 협력에 참여하는 객체가 수행할 책임을 정의한다. 책임 객체가 어떤 요청에 대해 해결책을..
· Book Report
당신의 꿈은 무엇인가? 자세히, 생생하게 상상해보라. 시각화하고 느끼고 믿어라. 그리고 그 꿈을 이루기 위해 날마다 노력하라. 대부분의 사람은 현재의 상황에 맞춰 꿈을 제한하고 축소한다. 자신을 제한하지 마라. 자신의 무한한 가능성을 믿어라. Unlimiting : 자신의 잠재력에 대한 제한적인 인식을 버리고 올바른 마인드셋, 동기, 방법으로 한계란 없다는 사실을 수용하는 행위나 과정. 자신의 한계를 뛰어넘어 도약하는 것. 솔깃한 단어다. 누구나 자신의 한계를 뛰어넘고 싶을 것이다. 하지만 한계를 뛰어넘기 이전에 자신이 스스로 한계를 만들고 있다는 사실을 인지하기 해야 한다. 이 책에서 그 방법과 언리미팅을 위한 마음가짐, 방법을 제시한다. 그 내용을 정리해보았다. 이 책에서 제시하는 방법을 무조건적으로..
· Book Report
트렌드(Trend) 한 사회의 어느 시점에서 특정 생각, 표현 방식, 제품 등이 그 사회에 침투 · 확산해 나가는 과정에 있는 상태 요즘 서점이나 전자책 등을 보면 베스트셀러 쪽에 빠지지 않고 등장하는 것이 미래의 트렌드, 주목해야 할 트렌드 같은 트렌드 관련 도서이다. 트렌드를 분석하고 좇는 것은 변화하는 시대에서 살아가기 위해서는 필연적인 행위라고 생각한다. 실제로 과거의 트렌드 도서에서 전망했던 내용 대부분은 형태만 조금 바뀐 채 이미 우리 사회에 녹아들어 있다. 이렇게 기술적 발전 전망이 확실하고 다수가 추종하는 것을 메가 트렌드라 지칭한다. 그 반대로 다수가 아닌 소수에 초점을 맞춘 것은 마이크로 트렌드라 한다. 마이크로 트렌드는 그들만의 정보를 생성하고 공유하며 크기에 비해 상대적으로 큰 영향..
· Retrospect
변경될 가능성이 높지만 현재 예상으로는 6월 초에 전역이다. 남은 100일 정도의 기간 동안 어떻게 시간을 보낼지 정리해보았다. 지금까지는 스프링과 알고리즘을 위주로 공부해왔다. 스프링으로 간단한 crud 게시판을 구현해보았다. 더 나아가 인프런에서 김영한 님의 강의를 완독하고 나만의 웹사이트를 제작하여 배포하자는 목표를 설정했었는데 사지방에서 사용해오던 구름 ide 환경에서는 lombok과 devtools와 같은 라이브러리 사용이 불가능했고 구름 컨테이너 자체에서 픽스한 gradle 버전을 업그레이드할 수 없어서 강의 실습할 때 버전 충돌이 잦았다. 또한 한 번 빌드하는데 몇 분씩 걸려서 많이 답답했다. 스프링을 공부하고 실습하는 시간보다 이런저런 문제를 해결하는 시간이 더 오래 걸렸던 것 같다. 윈도..
· Book Report
NFT : Non-fungible token(대체 불가능 토큰) + Revolution(혁명) 이 책에서는 대체 불가능한 토큰의 개념과 활용 사례, 현재 발전 상황, 취약점 등 NFT에 대한 전반적인 내용을 서술하고 있다. NFT라는 기술을 이해하는 데 많은 도움이 되는 입문서이다. 책의 내용을 참고하고 구글링한 내용을 덧붙여 NFT에 대해 정리해보았다. NFT란? Non-fungible token의 줄임말로 대체 불가능 토큰이다. 말 그대로 다른 것들과 대체 불가능하기 때문에 무언가의 고유성을 입증하는데 활용할 수 있다. 디지털 자산의 소유권을 증명하는 수단으로 주로 활용된다. 디지털 아트와 같은 디지털 자산은 결국 0과 1로 이루어진 데이터이므로 원본과 복제품을 구분할 수 없다. 즉, 원본과 동일한 ..
hyobinside
2023년의 나에게