디시인사이드 갤러리

갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

SOLID 원칙에 관하여(임시저장용)

ㅆㅇㅆ(124.216) 2025.03.01 03:47:44
조회 39 추천 0 댓글 4
														

3dab8168f5dc3f8650bbd58b36837d6fd51b9e

(Robert C. Martin (Uncle Bob))


SOLID 원칙(Principle)이란 무엇인가?


OOP는 사실 SOLID 원칙을 사용하지 않고, 작성할 수 있다.


SOLID 원칙을 무시한 채 클래스,상속or 컴포짓,캡슐화,다형성 만으로도 충분히 프로그램은 동작한다.


그렇다면 왜 SOLID 원칙이 등장했을까? 


SOLID 원칙은 유지보수성, 확장성,결합도 관리를 위해 일종의 가이드 라인이다.


즉 고품질 'OOP' 코드를 작성하는 가이드 라인이 SOLID 원칙인 것이다.



3dab8268efc23f8650bbd58b3684706abaa2

"Agile Software Development: Principles, Patterns, and Practices" (2002)


SOLID 원칙의 시작


SOLID 원칙은 "Agile Software Development: Principles, Patterns, and Practices" (2002) 에서 나온 것이다.


정확히 말해서 각 세부 원칙은 제각기 이전에 존재했지만 SOLID 라고 로버트 C 마틴이 묶고, 마이클 C 페더스가 그 앞 글자들을 따서 S.O.L.I.D라고 제안했다고 알려져 있다.


로버트 C 마틴은 애자일과 클린 코드 등 세계 프로그래머 계에 거대한 족적을 남긴 위대한 프로그래머이다.


우선 이 원칙의 시작을 설명하기 전 우리는 '애자일Agile'을 알아야한다.


그래야 왜 저 책이 혁명적이었고, 성경 취급을 받는지 알 수 있을 것이니까.



3dab832dea9c28a8699fe8b115ef046c8b076ca94010

(애자일 선언문)


2001년 프로그래머는 Agile 선언문을 선언한다. 이는 프로그래밍의 철학적 선언이라는 가치에 무게를 둘 수 있지만


'구체적으로 어떻게 실행할 것인가?' 에 대한 답이 없었다.


로버트 C 마틴은 Agile Software Development: Principles, Patterns, and Practices(2002)에서 그 구체적인 실행 방안을 작성했고,


애자일 '철학'을 '방법론'으로 만든다.


이 결과 Agile이 '이론'에서 '실무 표준'으로 자리잡는데 기여하게 된다.


3dab8468f5dc3f8650bbd58b3685716a7fb2


실제 초판에서는 첨부된 사진처럼 다음과 같이 SOLDI 로 나온다. 여기서 이 원칙들은


Agile 디자인에 대한 방법론으로 묘사되는데, Agile 원칙은 단순히 빠르게 코딩하는게 아닌, 장기적 유지 보수성과 변화에 대한 적응력을 갖춘 설계를 목표로 한다고 설명한다.


즉 SOLID 원칙을 따른다는 것은 기본적으로 애자일 디자인 방법론을 내면화하는데 큰 도움이 된다.


이후에 로버트 마틴(엉클 밥)은 블로그에서 마이클 C 페더스의 제안을 따라 SOLID 라고 이름 명명하며, SOLID Principle이라고 우리가 아는 형태가 된다.








7c82fd72c39f1ff5479ee0bb25da3d6dd870a22b74bc04a1f0972f96fba8fd35db441448f985d9d8df

(이미지 출처:https://www.instagram.com/techwithisha/reel/C1Ws1ZDt8_j/)


SOLID 원칙?


나머지는 자고 일어나서 할 것.


추천 비추천

0

고정닉 0

0

댓글 영역

전체 댓글 0
등록순정렬 기준선택
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 가수에서 배우로 전향 했지만 기대에 못 미치는 스타는? 운영자 25/02/24 - -
공지 프로그래밍 갤러리 이용 안내 [86] 운영자 20.09.28 42005 64
2823915 하루 한 번 헤르미온느 찬양 헤르 미온느갤로그로 이동합니다. 08:06 0 0
2823899 난 그동안 컴퓨터에 돈을 얼마나 썼을까.. 흠. *루비*갤로그로 이동합니다. 07:13 12 0
2823898 오늘은 nginx 설정만하고 약 먹고 자자 *루비*갤로그로 이동합니다. 07:11 10 0
2823893 요거 보고 nginx 설정 중 ㅋㅋ *루비*갤로그로 이동합니다. 06:50 14 0
2823891 트럼프 무역 규제 때문에 한국 주가 폭락하겠군 ㅎㅎ *루비*갤로그로 이동합니다. 06:48 13 0
2823888 내 컴퓨터 6토어, 12스레드 실화냐? *루비*갤로그로 이동합니다. 06:40 17 0
2823878 미제국주의가 나쁜게 아니라 트럼프식 미제국주의가 나쁜거임 사과바나나갤로그로 이동합니다. 06:08 17 0
2823877 트럼프의 친북정책 너무 역겨움. 네오콘이나 자유주의 매파가 옳음 사과바나나갤로그로 이동합니다. 06:08 14 0
2823874 불투명한 부패 곰팡이 집단 국정원 해체하라 발명도둑잡기갤로그로 이동합니다. 06:00 12 0
2823870 모모링 볼따구 빵빵하게 만들어주고 싶당❤+ [1] ♥냥덩이♥갤로그로 이동합니다. 05:51 23 0
2823869 나님 깻당? [1] ♥냥덩이♥갤로그로 이동합니다. 05:51 19 0
2823866 오늘의 소설, 영화 실마리: 자본가의 탐욕을 악마로 형상화한 이야기 발명도둑잡기갤로그로 이동합니다. 05:46 11 0
2823852 "이게 우리가 원한 거냐?" 텅 빈 음원 낸 가수들, 왜 [1] 발명도둑잡기갤로그로 이동합니다. 05:02 24 0
2823851 C++을 할까 Rust를 할까 고민이 되는 데스웅기잇치 ㅇㅅㅇ [1] 강유현갤로그로 이동합니다. 05:00 32 0
2823850 "이게 우리가 원한 거냐?" 텅 빈 음원 낸 가수들, 왜 발명도둑잡기갤로그로 이동합니다. 05:00 13 0
2823848 수구세력의 사면만 없다면 윤석열 사형보다 무기징역이 낫다 발명도둑잡기갤로그로 이동합니다. 04:40 13 0
2823846 자유기업원은 정직한 이름인 독과점기업원으로 개명하라! 발명도둑잡기갤로그로 이동합니다. 04:34 11 0
2823844 오픈소스 소프트웨어 비지니스 모델 책 발명도둑잡기갤로그로 이동합니다. 04:28 17 0
2823841 美國 발명도둑잡기갤로그로 이동합니다. 04:21 15 0
2823839 오픈소스 막장 사건) RHEL vs CentOS/Rocky 리눅스 [6] *루비*갤로그로 이동합니다. 04:19 28 1
2823838 미국이 3·1 운동을 왜곡, 폄하한 이유는? 발명도둑잡기갤로그로 이동합니다. 04:17 17 0
2823836 3.1운동과 5.4운동 발명도둑잡기갤로그로 이동합니다. 04:13 13 0
2823835 오픈소스 비화) mysql vs mariadb 관게도 좀 웃김 ㅎㅎ [12] *루비*갤로그로 이동합니다. 04:11 46 0
2823834 프로그래밍 언어론이란 것도 있었나 ㅇㅅㅇ? [11] 강유현갤로그로 이동합니다. 04:08 60 0
2823832 MBTI T인 사람한테 적합한 예술 발명도둑잡기갤로그로 이동합니다. 04:02 14 0
2823831 자고 먹고 싸고 그러다 하루 다 갔네 ㅎㅎ *루비*갤로그로 이동합니다. 03:59 18 0
2823829 오늘의 출판 기획 실마리: 종교적 폭력 발명도둑잡기갤로그로 이동합니다. 03:56 10 0
SOLID 원칙에 관하여(임시저장용) [4] ㅆㅇㅆ(124.216) 03:47 39 0
2823824 싸우지 않는 대화법 발명도둑잡기갤로그로 이동합니다. 03:47 19 0
2823822 <승리호> 발명도둑잡기갤로그로 이동합니다. 03:42 15 0
2823819 몇 년 전에 초상화 그리기 배우는데 선생님이 연예인 사진 발명도둑잡기갤로그로 이동합니다. 03:35 12 0
2823815 자유오픈소스 개인, 법인 기여자 표시 발명도둑잡기갤로그로 이동합니다. 03:25 17 0
2823812 BSD와 비슷한 보이드 리눅스 발명도둑잡기갤로그로 이동합니다. 03:16 19 0
2823811 2019년 나랑 한국 아치/우분투쪽 사람들과 완전히 결별한 사건 [9] *루비*갤로그로 이동합니다. 03:15 38 1
2823809 20세기말~21세기초 신자유주의적 음악 특징 발명도둑잡기갤로그로 이동합니다. 03:14 28 0
2823806 윤석열 탄핵 만세! 발명도둑잡기갤로그로 이동합니다. 03:06 15 0
2823803 이메일 내용 동의 없이 공개 게시판에 게시할 경우 [9] *루비*갤로그로 이동합니다. 03:00 41 0
2823802 초중고 국악교육 폐지의 악영향 발명도둑잡기갤로그로 이동합니다. 02:54 16 0
2823801 존경하는 마이클무어의 <캐나다 침공 작전> 발명도둑잡기갤로그로 이동합니다. 02:42 13 0
2823799 대규모 리팩토링 중인데 조금 힘들다. 내가 생각하는 구상이 ㅆㅇㅆ(124.216) 02:41 18 0
2823790 프로그래밍 갤러리에 17 들어가는 사용자 두 명 있었다 발명도둑잡기갤로그로 이동합니다. 02:14 33 0
2823784 존경하는 봉감독님의 <미키 17> 봤다 발명도둑잡기갤로그로 이동합니다. 01:57 29 0
2823780 <씨네21> 틸다 트윈턴 팔레스타인 지지 비판 발명도둑잡기갤로그로 이동합니다. 01:36 16 0
2823779 권위주의적 성격 특징이 약한 모습 보이면 바로 버린다는 것 발명도둑잡기갤로그로 이동합니다. 01:31 21 0
2823778 김신영이 들려주는 '설문대할망 이야기' 발명도둑잡기갤로그로 이동합니다. 01:22 16 0
2823777 이번에 트럼프가 R&D 줄였다고하는데 우리나라 윤두창 떠오르노 ㅋㅋㅋㅋ [1] ㅆㅇㅆ(124.216) 01:22 30 0
2823776 자바는 시간이지날수록 돈지랄해도 도태되냐?? 뒷통수한방(1.213) 01:19 26 0
2823775 자바공화국 양키국 급속도로 망해가누 ㅋㅋ 뒷통수한방(1.213) 01:18 26 0
2823774 윤석열, '비동의 강간죄 도입' 막으려 대통령실 감찰까지? 발명도둑잡기갤로그로 이동합니다. 01:15 15 0
뉴스 부모에 5억원 뺏긴 전 축구선수, 35층 아파트서 자살 협박 디시트렌드 02.28
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2