본문 바로가기

PROGRAMMING72

Layered Architecture - 복잡도를 감추고 의도를 드러내라 페어 블로깅 시리즈 - 스프링 흐름 속으로https://velog.io/@sonomoo/Controller-Service-Repository개요이 글은 레이어드 아키텍처가 왜 존재하는지, 그 구조가 가지는 책임과 의미, 그리고 각 계층이 어떤 역할을 수행하며 어떻게 연결되는지를 정리한 개인적 탐구 기록이다. 혼자 구조를 곱씹으며 끄적이듯 정리한 글이며, 각 계층은 단순히 나누는 것이 아니라, 복잡도를 감추고 의도를 드러내기 위한 추상화의 수단이라는 관점에서 접근한다. 글의 내용은 철저히 스스로의 관점에서 정리한 것으로, 백엔드 아키텍처나 소프트웨어 설계에 대한 전문적인 이해보다는 그저 관찰하고 추론해 본 기록 정도로 읽으면 좋겠다. 심심풀이 겸 정리용 메모 정도로 봐도 무방하다.ControllerCont.. 2025. 6. 4.
나의 글 시리즈에 마무리가 없는 이유 (feat - 까먹음) 책을 다 읽었지만, 뒷 부분이 감흥이 없는 경우신변에 큰 변동이 생겼을 때 (취업 / 이직)개발 성장 방향이 바뀌었을 때 2024. 12. 31.
삶의 지도 학교에 안나가던 청년, 재수생이 되다.오랜기간 학교도 못나간채 외국에 체류하던 어린 청년에게 유일한 낙은, 한때 유행했던 워크래프트3 유즈맵을 제작하는 일이었습니다. 영어라곤 게임 스킬명 밖에 모르던 청년은, 생소한 영단어를 종이 사전으로 뒤져가면서 영문으로 되어있던 맵 에디터를 열심히 뒤적이곤 했죠.놀랍게도 청년의 어릴적 꿈은 바로 과학자가 되는 것이었어요. 어린 시절 친구들이 짱구와 포켓몬스터를 보며 꿈과 희망을 키웠지만, 어린 청년은 오컬트나 원자폭탄을 만드는 방법에 훨씬 관심을 가졌죠. 하지만 학교를 다니지 못하는 시간이 길어질 수록, 해당 꿈은 청년에게서 점점 멀어져만 갔습니다. 청년이 할 수 있는건, 오직 더 이상 할 게임이 없어진 컴퓨터에 새로운 게임을 만드는 것 뿐이었어요."한국으로 돌아가.. 2024. 12. 31.
내가 보려 만든 gradle build 시스템 정리 (kotlin.ver) SettingsDelegate.class 프로젝트의 전체적인 설정을 책임지는 클래스. 내부에 getSettings, include 와 같은 전체적인 프로젝트 구조에 도움을 주는 메서드가 내재되어있다. 유사품으로 ProjectDelegate.class 가 있다. ResolutionsStrategy Defines the strategies around dependency resolution. For example, forcing certain dependency versions, subsitutions, conflict resolutions or snapshot timeouts. eachPlugin , eachDependency 같은 메서드로 특정 모듈의 버전을 고정할 수 있다. 살짝 package.json.. 2024. 1. 5.
Tistory 블로그 글 썸네일 안뜰 때 (대표 이미지) 언제부턴가 위와 같은 현상이 일어났다. 가끔씩 블로그 글을 작성한 후 썸네일 (대표 이미지)를 업로드 하면 이미지가 정상 표시가 되지 않을 뿐 더러, "> 라는 이상한 문자도 뜨기 시작했다. 처음에는 대수롭지 않게 일시적으로 생긴 오류겠거니 하고 넘겼는데, 나중에 동료 개발자가 똑같은 현상을 해당 블로그에서 발견해, 이번 기회에 꼭 수정해야겠다 다짐했다.개발자 도구를 열어 시맨틱 태그에서 문제점을 찾아보도록 했다. 역시나 썸네일 태그 내부의 attributes에 문제점이 있다는 걸 발견할 수 있었다. 필자는 티스토리 블로그 스킨 중 hELLO 템플릿을 사용하고 있는데, 템플릿의 코드문제가 아닌지 의심해보았다.  블로그 스킨의 템플릿은 언제든 자유롭게 편집할 수 있다. 블로그 좌측 사이드 바에 기재되어있는.. 2023. 11. 17.
#3 이상한 나라의 객체 2부 1부 복습 1부에선 심리학 연구를 화두로 객체지향 프로그래밍이 사실상 인간의 기본적인 본능인 인지능력과 매우 깊은 연관이 있다는 걸 알 수 있었다. 객체지향 패러다임은 복잡한 소프트웨어 세계를 인간이 이해하기 쉽게 개념을 쪼개 소프트웨어의 객체를 책임, 역할, 협력 세가지로 설계 할 수 있게 무대를 제공했다. 객체의 상태는 객체의 내부에 캡슐화 되어있고, 스스로의 상태는 반드시 자신의 행동으로 변경할 수 있도록 해야한다. 만약 다른 객체가 상태를 변경하고 싶다면, 객체 간의 협력을 기반으로 상태 변경을 시도하면 된다. 앞서 말한 조건들을 모두 충족시켜줘야 비로소 소프트웨어 속 객체지향 패러다임을 토대로 컴퓨터 세계 속 자원을 다룰 수 있다. 식별자 1부에서도 언급이 되었듯이, 객체는 인간이 인지 능력을 .. 2023. 11. 14.