개념 공부/기타6 객체 지향 설계 5원칙 - SOLID SRP - 단일 책임 원칙⭐️ 어떤 클래스를 변경해야 하는 이유는 오직 하나뿐이어야 한다즉 하나의 클래스는 하나의 역할만 해야한다는 의미이다.하나의 클래스가 너무 많은 역할을 맡고 있을 때 객체지향에서는 '나쁜 냄새가 나는 코드'라고 부른다.SRP가 잘 지켜지지 않은 설계의 예시를 보자.✏️ EX 1)사람 클래스가 있고, 이 사람 클래스에 의존하는 여러가지 클래스들(애인, 부모님, 회사 등)이 존재한다고 하자.이 사람 클래스 안에 여러 가지 역할에 해당하는 메소드를 모두 넣는 경우가 SRP가 잘 지켜지지 않은 설계이다. 하나의 클래스가 여러 역할을 하고 있기 때문이다.아래와 같이 역할을 나누어 클래스를 여러 개로 분리한다면 SRP를 잘 지킨 더 좋은 설계가 된다.✏️ EX 2)더 예시를 들어보자. 만약 .. 2024. 10. 14. [Java / Web] 서블릿과 서블릿 컨테이너, 톰캣의 동작 서블릿서블릿이란 클라이언트의 요청을 처리하고 그 결과를 반환하는 Servlet 클래스의 구현 규칙을 지킨 자바 웹 프로그래밍 기술입니다.즉 서블릿은 클라이언트가 어떠한 요청을 하면 그 요청을 받고 그에 대한 응답을 전송해주는 역할을 하는 자바 프로그램입니다.서블릿의 특징클라이언트의 요청에 대해 동적으로 작동하는 웹 어플리케이션 컴포넌트입니다.html을 사용하여 요청에 응답합니다.MVC 패턴에서 Controller로 이용됩니다.Servlet은 javax.servlet.Servlet을 최상위 인터페이스로 가집니다.HTTP 프로토콜 서비스를 지원하는 java.servlet.http.HttpServlet 클래스를 상속받습니다.html을 변경하면 Servlet을 재컴파일해야하는 단점이 있습니다.서블릿의 동작 방식.. 2024. 5. 16. 깃 명령어 gi t ini t : 깃 초기화(gi t생성) gi t b ranch : 로컬브랜치 확인가능 gi t b ranch -r :원격 브랜치 확인 가능 gi t b ranch -a : 모든 브랜치 확인 가능 gi t checkou t "브랜치 이름" : 해당 브랜치 이름으로 이동 gi t b ranch -m "a" "b" :브랜치 이름 a에서 b로 바꾸기 gi t b ranch -d "브랜치 이름" :브랜치 삭제하기 gi t rese t — ha rd HE AD^ : commi t한 이전 코드 취소하기 gi t rese t — sof t HE AD^ : 코드는 살리고 commi t만 취소하기 gi t rese t — me rge : me rge 취소하기 gi t clone "저장소 주소" :깃헙에서 소스를 .. 2020. 8. 18. [Git] 현재 레포를 강제로 리셋하고, 다시 푸시하기 git push -u origin masterTo https://github.com/제 닉넴/MovieLine.git ! [rejected] master -> master (fetch first)error: failed to push some refs to 'https://github.com/제 닉넴/MovieLine.git'hint: Updates were rejected because the remote contains work that you dohint: not have locally. This is usually caused by another repository pushinghint: to the same ref. You may want to first integrate the r.. 2020. 8. 4. [Git] 리포지토리(레포지토리) 관련 명령어 -레포 주소를 바꾸는 명령어git remote set-url origin 레포주소 -현재 레포 주소를 확인하는 명령어git remote -v -현재 레포에 있는 것을 리셋하고, 푸시하기git push --force --set-upstream origin master 2020. 7. 29. [CSS3] 구조적 가상 클래스 선택자 :root문서의 최상위 태그(html)를 선택한다. 태그:nth-child(n)n번째 태그가 일치하면 선택한다. (여기서 n은 수열이다. 예를 들어 2n+1) 태그:nth-last-child(n)뒤에서부터 n번째 태그가 일치하면 선택한다. 태그:nth-of-type(n)일치하는 태그들 중, n번째 태그를 선택한다. 태그:nth-last-of-type(n)일치하는 태그들 중, 뒤에서부터 n번째 태그를 선택한다. 태그:first-chlid첫번째 태그가 일치하면 선택한다. 태그:last-chlid마지막 태그가 일치하면 선택한다. 태그:first-of-type일치하는 태그들 중, 첫번째 태그를 선택한다. 태그:last-of-type일치하는 태그들 중, 마지막 태그를 선택한다. 태그:only-child이 태그가 .. 2020. 6. 28. 이전 1 다음