[Applet] 자바 애플릿(Java Applet)에서 마우스 이벤트 구현하기 [Programming Assignment for Module 5]
·
◎ Java/Applet🧳
- 자바 애플릿(Java Applet)에서 마우스 이벤트 구현하기 1. mouseMoved() 메서드 구현 사용자가 마우스를 움직일 때 이벤트 핸들러에 의해 mouseMoved()가 호출되면 지진 마커의 경우 지진 제목을, 도시의 경우 이름, 국가 및 인구를 표시한다. - EarthquakeCityMap.java /** Event handler that gets called automatically when the * mouse moves. */ @Override public void mouseMoved() { // clear the last selection if (lastSelected != null) { lastSelected.setSelected(false); lastSelected = null;..
[Spring] 싱글톤, 무상태(stateless)로 설계하라! [Singleton 패턴 주의사항]
·
▣ Framework/Spring🍃
- 싱글톤, 무상태(stateless)로 설계하라! 객체 인스턴스를 하나만 생성해서 공유하는 싱글톤 방식은 여러 클라이언트가 하나의 같은 객체 인스턴스를 공유하기 때문에 싱글톤 객체는 상태를 유지(stateful)하게 설계하면 안된다. - 잘못된 설계 : 상태가 유지되는 경우 - StateFulService.java public class StateFulService { private int price; // 상태를 유지하는 필드 public void order(String name, int price) { System.out.println("name = " + name + " price = " + price); this.price = price; // 여기가 문제! } public int getPric..
[Applet] 자바 애플릿(Java Applet)으로 지진 종류 시각화하기 [Programming Assignment for Module 4]
·
◎ Java/Applet🧳
- 자바 애플릿(Java Applet)으로 지진 종류 시각화하기 1. EarthquakeCityMap에서 printQuakes() 메서드 구현 System.out.println()을 사용하여 1회 이상의 지진이 발생한 각 국가와 해당 국가에서 감지된 지진 수를 나열하고, 바다에서 감지된 지진의 수를 출력하여라. - EarthquakeCityMap.java private void printQuakes() { int totalWaterQuakes = quakeMarkers.size(); for (Marker country : countryMarkers) { String countryName = country.getStringProperty("name"); int numQuakes = 0; for (Marke..
[GoF] Prototype 패턴 : 복사해서 인스턴스를 만든다 [인스턴스로부터 다른 인스턴스를 생성하는 패턴]
·
◈ Study/디자인패턴(GoF)🥞
- Prototype 패턴 : 복사해서 인스턴스를 만든다 Prototype 패턴은 복사기로 문서를 복사하는 것처럼, 클래스에서 인스턴스를 생성하는 것이 아니라 인스턴스로부터 다른 인스턴스를 생성하는 패턴이다. Java의 clone 메서드와 함께 학습해보려 한다. - 어떤 경우에 사용할까? 종류가 너무 많아 클래스로 정리할 수 없는 경우 클래스로부터 인스턴스 생성이 어려운 경우 [ ex) 마우스로 그린 도형을 나타내는 인스턴스 ] 프레임워크와 생성하는 인스턴스를 분리하고 싶은 경우 - 예제 코드 패키지 이름 설명 framework Product 추상 메서드 use와 createCopy가 선언되어 있는 인터페이스 framework Manager createCopy를 사용하여 인스턴스를 복제하는 클래스 이름 ..
[GoF] Singleton 패턴 : 인스턴스를 단 하나만 만든다 [인스턴스가 하나만 존재하는 것을 보증하는 패턴]
·
◈ Study/디자인패턴(GoF)🥞
- Singleton 패턴 : 인스턴스를 단 하나만 만든다 Singleton 패턴은 인스턴스가 하나만 존재하는 것을 보증하는 패턴이다. - 어떤 경우에 사용할까? Singleton 패턴에서는 인스턴스 수를 제한하고 있다. 인스턴스가 여러 개면 인스턴스가 서로 영향을 미쳐 뜻밖의 버그를 만들어 낼 수 있으나, 인스턴스가 하나뿐이라는 보장이 있다면 인스턴스 간 영향이 최소화 될 수 있다. - 예제 코드 이름 설명 Singleton 인스턴스가 하나만 존재하는 클래스 Main 동작 테스트용 클래스 - Singleton 클래스 public class Singleton { private static Singleton singleton = new Singleton(); private Singleton() { Syst..