국비지원 복습과정 10차 (싱글톤 디자인 패턴, 패키지)

Park In Kwon·2022년 9월 15일
0

1. Single Ton 디자인 패턴

1-1. 디자인 패턴 이란?

  • 소프트웨어를 설계할 때 특정 맥락에서 자주 발생하는 고질적인 문제들이 발생했을 때 재사용할수 있는 해결책

1-2. SingleTon 디자인 패턴

  • 프로그램 내의 여러 곳에서 반복적으로 사용되어야 하는 객체에 대해 전역적인 범위를 갖도록 객체를 생성하고, 이 객체를 여러 곳에서 공유하기 위한 클래스 작성 패턴
  • 이러한 패턴을 통해 생성된 객체를 싱글톤 객체라고한다.

1-3. SingleTon 객체의 이점

  • 프로그램의 전역에서 활용할 재료로 사용되는 공유 기능을 하나만 생성하여 여러곳에서 재사용함으로 해서 메모리를 효율적으로 사용할 수 있다.
  • 단 한번만 객체를 생성하면 다시 객체를 생성할 필요가 없기 때문에, 해당 기능을 사용할 때마다 객체를 일일이 생성해야 하는 번거로움을 피할 수 있다.
package study.java.helper;

/*
 * 기본적으로 공통 기능들을 묶어 놓은 클래스
 */
public class Util {
	// -- 싱글톤 객체 생성 시작
	
	private static Util util;
	
	public static Util getInstance() {
		
		if ( util == null ) {
			 util = new Util();
		}
		
		return util;
	}
	
	// 객체에 null을 대입하면 메모리에서 삭제된다.
	public static void freeInstance() {
		util = null;
	}
	
	// 기본 생성자를 private 형태로 정의하면 객체 생성자가 은닉처리되어
	// 외부에서 new 연산자를 사용한 객체할당이 금지된다.
	private Util() { }
	
	// --- 싱글톤 객체 생성 끝

2. Package

  • 패키지 -> 클래스에 대한 묶음 단위
  • 클래스를 용도별이나, 기능별로 그룹화 한 것을 말한다. 소스코드는 폴더로
    분류된 형태로 존재하게 된다.
  • 서로 다른 패키지에 속해 있다면 다른 클래스와 이름이 동일하더라도
    충돌이 발생하지 않는다.
  • 패키지 이름은 회사 + 프로젝트의 아이덴티티를 넣는다.
  • com.koreait.shop.article

2-1. 복사된 소스파일

  • 패키지에 소속된 클래스 파일은 첫 번째 라인에서 자신이 소속된 클래스 패키지 이름을 선언해야 한다.
profile
개발자로 진로 변경을 위해 준비하고 있습니다

0개의 댓글