목록분류 전체보기 (64)
CheerUp_Cheers
보호되어 있는 글입니다.
AOP의 특징? 1. 공통적인 처리. 2. 코드의 중복을 막고, 따로 관리가 가능 3. 관리가 용이(흐름의 앞, 중간, 뒤 처리가 가능). # 들어가기전 [1] DispacherSevlet? Servlet 해당 어플리케이션에 들어오는 모든 요청을 핸들링 -> 기존에는 web.xml에 등록 모든 요청을 Contorller로 보내 버리기 때문에, Css, Javasciprt등의 파일마저 가로챔 -> 클라이언트의 요청을 2가지로 분리하여 구분하여 해결 1) /apps의 URL로 접근시 디스패처 서블릿이 담당 2) /resources의 URL로 접근시 담당 X [2] HttpServletRequest(extended ServletRequest) 클라이언트의 요청과 관련된 정보와 동작을 가지는 객체 -> 클라이언..
상속 OOP의 핵심이라 여기는 특성 상속이 없으면 OO언어라고 안보는게 보통. 부모로 부터 어떤 특징을 물려 받는것. OOP의 매우 중요한 특성인 다형성의 기반 -> 상속없으면 어렵다 #OOP에서의 상속이란? 이미 존재하는 캘르스를 기반으로 새클래스를 만드는 방법 새클래스는 기존 클랙스 동작과 상태를 그대로 물려 받음(유전) 새클래스 만의 동작과 상태를 추가 가능(진화) #초기화 순서? 부모 초기화 -> 자식 초기화 1) 메모리 개체 생성 2) 부모 생성자 호출 3) 자식 생성자 호출 #super super은 현개체의 부모 부분을 가르킴 1) 생성자 : super(매개변수) 2) 메소드 : super.
싱글턴 패턴 어떤 클래스에서 만들 수 있는 인스턴스를 하나로 제한 다음과 같은 조건 충족하는 개체에 적합 1) 프로그램 실행중 하나만 있어야함 ex) 프로그램설정, 파일시스템 2) 이 개체에 전역적으로 접근이 가능해야함 #싱글턴 클래스 다이어그램 - private 생성자 - static 메소드를 통해서만 개체 얻음 - 아직 개체가 없는 경우 개체를 생성 후 static 변수에 저장 static 변수에 저장된 개체를 반환 - 이미 개체가 있는 경우 static 변수에 있는것 반환 #싱글턴 예 #어디쓸까 Configuration(구성) - 프로그램 창의 위치와 크기, 파일에 저장하거나 로딩. #싱글턴 vs Static 다 static으로하면 개체도 안만들어도 되고 괜찬지않나? - static으로 못하는 일 ..
디자인 패턴 반복을 통해 정형화된 문제 해결 방법 비슷한 문제들에 반복적 적용 가능 ex) 110v 콘셉트와 220v 콘셉트, 플라스틱만 들어가게하는 쓰레기통과 병만 들어가는 쓰레기통 -> 사람들은 실수로 잘못 사용하는 경우를 예시처럼 제한. #추상적으로 범용적으로 만든것이 디자인 패턴 - 알고리즘 -(추상)-> 베스트 프랙티스 -(추상)-> 디자인패턴 - 완성된 설계가 아니라 곧바로 코드로 바뀌지 않음. #패턴의 장점(학계) 1) 이미 검증된 개발방법이라 개발 속도 향상 2) 공통 용어 정립으로 개발자간의 빠른 의사소통을 촉진 -> 그건 싱글턴으로 해결해 #패턴의 단점(실무) 1) 곧바로 적용할수 없는 참고가이드를 '패턴'이라 할수 없다. 2) 잘못 사용하는 경우 빈번. 3) 다른 추상화 기법과 크게 ..
#모든것이 개체 속에 있어서 불편함 - 단순한 계산도 개체로 만들어서 해야하나? ex) 절대값 구하기 int Math.abs(int); 공백문자개수 구하기 : StringUtils.countSpaces(String str); - 개체 단위가 아니라 클래스 단위에서 뭔가 하고 싶을때는? ex) 이 클래스에서 총 몇개의 개체가 있을까? => 정적(static)이 이런 불편함을 해결해줌(개체 범위가 아닌 클래스 범위) #단순한 계산 시 #정적 메소드만있는 Math클래스는 개체를 못만들게 하면 안되요? 맞는 말임 -> 이런 경우 개체 생성을 못하게 막으면 됨. - 방법 1) 생성자를 private로 막을까? private Math() { } // private로 막고! Math math = new Math();..