command2 Command Pattern 과제 과제 : Command Pattern을 이용하여 버튼을 누르면 동물의 사진을 출력하는 프로그램을 개발하라, undo기능 추가 그리고 기존에 제공한 코드를 @Override public void actionPerformed(ActionEvent e) { for (int i = 0; i < buttonTitles.length; i++) { if (e.getSource() == buttons[i]) { label.setIcon(imageIcons[i]); } } } 다음과 같이 실행할 수 있도록 바꾸어라(Command button 객체가 실행되게끔 설계) @Override public void actionPerformed(ActionEvent e) { if (e.getSource() instanceof Com.. 2019. 12. 31. Command Pattern 1. 정의 1) 요구사항(요청, 명령)을 객체로 캡슐화 시킴. 2) 명령이 객체로 캡슐화 되기 때문에 큐에 넣거나 로그로 남길 수 있고, 작업 취소(undo) 기능 구현 가능 2. 문제 1) 사용하려는 객체(명령)가 많고, API가 서로 다른 경우 예) 홈 리모컨의 경우 차고문, 전등, TV, Stereo, 에어컨 등 사용해야 하는 객체가 너무 많고, 서로 다른 명령들로 구성되어 있음 3. 해결방안 1) 실행과 요청을 분리한다.(decoupling) 예) 리모컨 --> 커맨드 클래스 2019. 12. 31. 이전 1 다음