분류 전체보기92 [소프트웨어 설계] 커네이선스 1. 공부하게 된 계기소프트웨어 구조에서 응집도와 커플링에 이어, "커네이선스(Connascence)"라는 용어를 접하게 되었습니다.커플링보다 더 세밀하게 모듈 간 의존 관계를 분석할 수 있는 개념이라는 점에서 흥미로웠고,좋은 설계 판단 기준으로 활용할 수 있을 것 같아 정리해보게 되었습니다.2. 핵심 요약커네이선스(Connascence)는 두 코드 요소가 서로 변경에 얼마나 민감하게 연결되어 있는지를 표현하는 개념입니다.총 9가지 유형으로 나뉘며, 낮은 커네이선스 → 높은 커네이선스 순으로 코드 결합의 강도가 강해집니다.커네이선스를 인식하고 줄이는 것은 유지보수성과 리팩토링 안정성을 크게 향상시킵니다.3. 개념 정리커네이선스란?두 코드 요소(예: 클래스, 함수, 변수)가 변경 시 함께 변경되어야만 하는.. 2025. 6. 30. [소프트웨어 설계] 응집도 1. 공부하게 된 계기커플링 개념을 공부하면서 자주 같이 등장하던 ‘응집도’가 눈에 들어왔습니다.설계 원칙 중 “커플링은 낮게, 응집도는 높게”라는 말은 많이 들었지만, 응집도에 대해 정확히 이해하고 있지는 않았습니다. 따라서 응집도가 구체적으로 뭔지, 어떻게 구분하고 판단해야 알기 위해좋은 구조와 나쁜 구조를 비교하며 응집도에 대한 개념을 정리해보게 되었습니다.2. 핵심 요약응집도(Cohesion)는 모듈이나 클래스가 얼마나 하나의 책임에 집중하고 있는지를 나타내는 지표입니다.응집도가 높을수록 모듈이 명확한 목적을 갖고 재사용성, 유지보수성이 좋아집니다.응집도는 총 7단계로 나뉘며, 기능적 응집(Function Cohesion)이 가장 이상적입니다.3. 개념 정리✅ 응집도란?클래스나 함수 같은 모듈이 .. 2025. 6. 28. [소프트웨어 설계] 커플링(Coupling) 1. 공부하게 된 계기프로젝트를 리팩토링하면서 작은 변경에도 연쇄적인 수정을 해야 하는 구조에 부딪혔습니다. 그 원인을 파고들다 보니 모듈 간의 높은 커플링이 문제였고, 이를 개선하기 위해 커플링의 개념과 종류를 깊이 있게 공부하게 되었습니다.2. 핵심 요약커플링(Coupling)은 모듈 간 의존성을 나타내며, 느슨한 커플링(loose coupling)이 바람직합니다.커플링은 종류에 따라 낮은 커플링(데이터)부터 높은 커플링(콘텐츠)까지 여러 단계로 나뉩니다.설계 시 커플링을 의식적으로 낮추면 유지보수성, 재사용성, 확장성이 좋아집니다.3. 개념 정리✅ 커플링이란?하나의 모듈(또는 클래스)이 다른 모듈에 얼마나 의존하고 있는지를 나타내는 설계 개념입니다.커플링이 높을수록 변경에 취약하고, 시스템이 복잡해.. 2025. 6. 28. [GitHub] Personal Access Token을 활용한 API 권한 인증과 설정 방법 GitHub Personal Access Token을 활용한 API 권한 인증과 설정 방법1. 개요GitHub API를 통해 리포지토리를 읽거나 이슈를 생성하거나 액션을 트리거하려면 반드시 인증이 필요합니다. 이때 가장 일반적으로 사용되는 인증 방식이 바로 Personal Access Token (PAT) 입니다.이 글에서는 다음 내용을 다룹니다:GitHub Personal Access Token이란 무엇인가?토큰을 생성하고 설정하는 방법토큰을 사용해 API 요청을 인증하는 코드 예시권한 범위를 설정할 때 주의할 점2. Personal Access Token(PAT)이란?PAT는 사용자의 GitHub 계정 권한을 대신하여 API 요청을 보낼 수 있는 비밀번호 같은 문자열입니다.OAuth 앱 또는 GitH.. 2025. 6. 19. 이전 1 2 3 4 5 6 ··· 23 다음 반응형