자바 실천 의 길 (디자인 모델) - 공장 모델 (공장 방법)
실현: 우선 한 회사 의 기능
public interface Factory {
Programmer getProgrammer();
}
java 부서 기능
public class JavaFactory implements Factory {
public Programmer getProgrammer() {
return new JavaProgrammer();
}
}
C \ # 부서 기능
public class CsharpFactory implements Factory {
public Programmer getProgrammer() {
return new CsharpProgrammer();
}
}
기 존의 구 조 는 이미 조정 되 었 으 니, 지금 은 phop 을 아 는 개발 자 를 모집 합 니 다.
public class PhpProgrammer implements Programmer {
public void develop() {
System.out.println("I am develop php softeware");
}
}
이 phop 개발 자 를 새로운 부서, phop 부서 로 구성 합 니 다.
public class PhpFactory implements Factory {
public Programmer getProgrammer() {
return new PhpProgrammer();
}
}
이렇게 해서 제 phop 프로젝트 를 누가 했 어 요.
public static void main(String[] args) {
System.out.println("I want a php programmer");
Factory factory=new PhpFactory();
Programmer programmer=factory.getProgrammer();
programmer.develop();
}
이렇게 하면 나 는 걱정 할 필요 가 없다. 그 가 앞으로 어떤 언어 개발 프로젝트 를 접대 하 든 나 는 이 방법 에 따라 원래 의 직원 들 도 만족 하고 나 도 홀가분 하 다.
며칠 지나 지 않 아 나 는 또 하나의 프로젝트 를 받 았 는데, 고객 이 ruby 로 개발 하 겠 다 고 말 했다.원래 부서 의 그 직원 들 이 모두 바 쁜 것 을 보고 나 도 더 이상 말 하고 싶 지 않다.루비 를 찾 아서 루비 부 서 를 만들어 서 이 걸 맡 도록 하 겠 습 니 다.
public class RubyProgrammer implements Programmer {
public void develop() {
System.out.println("I am develop ruby softeware");
}
}
public class RubyFactory implements Factory {
public Programmer getProgrammer() {
return new RubyProgrammer();
}
}
조업 을 시작 하 다
public static void main(String[] args) {
System.out.println("I want a ruby programmer");
Factory factory=new RubyFactory();
Programmer programmer=factory.getProgrammer();
programmer.develop();
}
하하, 간단 하고 편리 하 다.
한동안 득의양양 했다.서서히 회사 의 규모 가 커지 면서 각 방면 의 실력 이 증가 하고 있다.그래서 나 는 몇 명의 영업 사원 을 찾 아 스스로 제품 을 팔 려 고 한다.원래 의 설계 에 따라 문 제 를 발견 하 였 다.
원래 회 사 는 개발 만 하 는데 판매원 이 들 어 오 는 것 과 원래 의 구 조 는 틀림없이 크게 다 를 것 이다.회 사 는 아직 조정 이 필요 하 다.
다음 기의 추상 적 인 공장 모델 로 이 문 제 를 해결 하 기 를 기대 하 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Is Eclipse IDE dying?In 2014 the Eclipse IDE is the leading development environment for Java with a market share of approximately 65%. but ac...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.