java(31)
-
[JAVA] 변수의 선언 위치
변수의 선언 위치 변수의 선언 위치에 따라 변수의 접근 가능 범위가 달라진다 작성형식 내용 1. 인스턴스변수(instance variable)클래스 영역에 선언되며, 클래스의 인스턴스를 생성할 때 만들어진다. 그렇기 때문에 인스턴스 변수의 값을 읽어 오거나 저장하기 위해서는 먼저 인스턴스를 생성해야한다. 인스턴스는 독립적인 저장공간을 가지므로 서로 다른 값을 가질 수 있다. 인스턴스마다 고유한 상태를 유지해야하는 속성의 경우, 인스턴스변수로 선언한다. 2. 클래스변수(class variable)클래스 변수를 선언하는 방법은 인스턴스변수 앞에 static을 덧붙이기만 하면 된다. 인스턴스마다 독립적인 저장공간을 갖는 인스턴스변수와는 달리, 클래스변수는 모든 인스턴스가 공통된 저장공간(변수)을 공유하게 된다..
2016.12.06 -
[디자인패턴] 중재자패턴(Mediator Pattern)
중재자패턴(Mediator Pattern) 프로그램의 상호작용을 해야 하는 개체들이 서로 복잡하게 관계를 맺고 있을 경우에 상호작용에 관련된 행동을 별도의 형식으로 정의하여 중재를 맡는 개체를 두게하는 패턴 작성형식 내용 프로그램을 작성하다 보면 상호작용을 해야하는 경우 객체들 간의 결합도가 증가하고 유연성이 떨어지는 경우가 발생하게 됩니다. 중재자 패턴에서는 서로 명령을 주고 받을 수 있는 형식이 있다고 했을 때 서로 명령을 주고 받는 부분을 중재하는 형식을 정의를 하게 됩니다. 그리고, 원래 서로 명령을 주고 받았던 개체들은 중재자 개체를 알게 하고 중재자 개체는 이들 개체를 알게 합니다. 이제 특정 개체가 명령을 내릴 필요가 있으면 중재자 개체에게 전달하기만 하면 됩니다. 중재자는 해당 명령을 자신..
2016.11.30 -
[디자인패턴] 옵저버패턴(observer pattern)
옵저버패턴(observer pattern) 옵저버들의 목록을 객체에 등록하여 상태 변화가 있을 때마다 메서드 등을 통해 객체가 직접 목록의 각 옵저버들에게 통지하도록 하는 디자인 패턴 작성형식 내용 옵저버 패턴을 우리 생활에 적용해 보자면 우리가 홈페이지나 멤버쉽을 가입 후 유용한 정보를 이메일 혹은 문자메시지로 받기를 원하는지 체크하는 항목을 봤던 기억들이 있을 것이다. 아니면 마트나 백화점등 행사에 참여하기 위하여 작성했던 개인 정보 및 홍보성 정보에 수신을 동의하겠다는 체크 박스 이러한 것들이 우리가 이번에 보고자 하는 옵저버 패턴이라고 보면 되겠다. 옵저버 패턴에 특징이라고 할 수 있는 느슨한 결합은 여러 가지 장점을 가지게 한다.청취를 할 observer를 언제든지 새로 추가 할 수 있다.새로운..
2016.11.25 -
[디자인패턴] 퍼사드패턴(facade pattern)
퍼사드패턴(facade pattern) 어떤 서브시스템의 일련의 인터페이스에 대한 통합된 인터페이스를 제공퍼사드에서 고수준의 인터페이스를 정의하여 서브시스템을 좀 더 쉽게 사용 가능 작성형식 [출처]http://egloos.zum.com/brogram/v/8990201 내용 [출처]https://ko.wikipedia.org/wiki/%ED%8D%BC%EC%82%AC%EB%93%9C_%ED%8C%A8%ED%84%B4퍼사드는 클래스 라이브러리 같은 어떤 소프트웨어의 다른 커다란 코드 부분에 대한 간략화된 인터페이스를 제공하는 객체이다.퍼사드는 소프트웨어 라이브러리를 쉽게 사용할 수 있게 해준다. 또한 퍼사드는 소프트웨어 라이브러리를 쉽게 이해할 수 있게 해 준다. 퍼사드는 공통적인 작업에 대해 간편한 메소..
2016.11.24 -
[디자인패턴] 책임사슬패턴(Chain of Responsibility pattern)
책임사슬패턴(Chain of Responsibility) 결합을 느슨하게 하기 위해 고안된 패턴한 개의 요청에 대하여 여러 객체에게 처리할 수 있는 기회를 주도록 한 디자인패턴 작성형식 내용 책임사슬패턴은 어떤 하나의 문제가 발생했을 경우 그 문제를 처리를 담당하는 다수의 처리기를 두고 순서대로 처리를 해 나가는 것이라고 보면 된다. 자바에서 책임사슬패턴을 찾아 보면 try - catch - finally 가 해당된다. try 블럭 안에서 코드를 실행 중에 Exception이 발생하게 되면 catch 블럭으로 이동을 하게 되는데 발생한 Exception이 무엇이냐 따라서 어느 catch 블럭이 실행 되는지 결정이 되는데 이 과정이 책임사슬패턴을 이용한 구현 방식 중 하나이다. catch 블럭에서 자신이 ..
2016.11.24 -
[디자인패턴] 방문자패턴(visitor pattern)
방문자패턴(visitor pattern) 알고리즘을 객체 구조에서 분리 시키는 패턴멤버변수와 메서드를 다른 클래스로 분리하여 서로 간의 호출하게 함으로써 추후 메서드 추가를 자유롭게 한다 작성형식 내용 방문자 패턴은 컴포짓패턴과 같이 쓰는 경우가 많다. 위 사진에서 보면 좌측에 element를 구현하는 클래스를 다룰때 컴포짓 패턴을 이용하여 개별 객체와 그 객체들을 목록 형태로 가지고 있는 상위 객체를 구현하여 방문자 패턴을 구현하게 된다.일반적인 경우에 OOP에서는 객체 안에 멤버변수와 메서드를 같이 작성 하도록 하지만 방문자 패턴에서는 변수와 메서드를 분리하여 작성 하도록 하고 있다. 이와 비슷한 패턴 형식으로는 전략패턴, 커맨드패턴등이 있다. 이 패턴들과 차이점은 전략 패턴은 하나의 객체에 대하여 ..
2016.11.23