관리 메뉴

제뉴어리의 모든것

워크스페이스/프로젝트/패키지/클래스의 개념 및 명명 규칙 본문

JAVA

워크스페이스/프로젝트/패키지/클래스의 개념 및 명명 규칙

제뉴어리맨 2021. 4. 7. 01:09

C에서 JAVA로 넘어오니, 해당 개념이 헷갈려서 정리해봅니다. 이클립스 기준입니다.

먼저 전체적인 구조는 아래와 같습니다. 실제 우리가 코딩을 하는 부분은 모두 "클래스(Class)"입니다. 나머지는 분류를 위한 일종의 카테고리라고 볼 수 있습니다.

 

 

 


 

※ 공통 명명 규칙
- 대소문자 구분이 됨
- 예약어(시스템에서 이미 사용하고 있는 이름)를 사용하면 안됨
- 숫자로 시작할 수 없음
- 특수문자는 '_'(언더바), '$'만 사용가능

 


 

[ 워크스페이스(WorkSpace) ]

  • 하나의 프로그램 단위
  • 규모가 큰(기능이 많은) 프로그램은 여러 실행파일(프로젝트)로 이루어질 수 있음
  • 가장 상위 폴더로 생성됨

 

※ 워크스페이스 명명(이름) 규칙
  - 공통규칙에 따름

 


 

[ 프로젝트(Project) ]

  • 하나의 실행파일 단위
  • 하나의 실행 파일을 생성하기 위한 단위라고 할 수 있음
  • 워크스페이스의 하위 폴더로 생성됨

 

※ 프로젝트 명명(이름) 규칙
  - 대소문자 구분 없이 시작 가능
  - 첫 문자를 비롯해 모든 단어는 대문자로 시작하는 것을 권장

 


 

[ 패키지(Package) ]

  • 클래스를 기능별로 묶어둔 일종의 카테고리
  • 하나의 패키지만 만들 수도 있고 "상위 패키지.하위패키지" 형태로 트리 구조를 만들 수 있음
  • 상위 패키지 폴더 아래 하위 패키지 폴더가 생성됨
  • 소스코드를 저장하는 ".java"파일의 패키지는 프로젝트 폴더 아래 "src"폴더에 저장됨
  • .java파일을 컴파일해서 생성된 ".class"파일의 패키지는 프로젝트 폴더 아래 "bin"폴더에 저장됨

src, bin폴더 저장은 기본 설정일 경우 (변경 가능)

 

※ 패키지 명명(이름) 규칙
  - 단어 갯수 상관없이 소문자로 시작
  - 모두 소문자로 사용하는 것을 권장 (가독성을 위해서는 위반해도 됨)
  - 가급적 한 단어 사용을 권장 (상위 패키지 한단어, 하위 패키지 한단어씩)
  - 여러 사람 또는 기업과 협업할 경우 표준 패턴을 따름 (개인용으로 쓸 때는 무의미)
  - 표준패턴 : com.회사이름(또는 개인이름).프로젝트명.상위패키지.하위패키지.클래스

 


 

[ 클래스(Class) ]

  • 비슷한 유형의 메소드(함수)와 변수를 모아놓은 소스코드
  • 실제로 작성된 가장 하위의 소스코드 파일
  • 이클립스 에디터에 작성하는 코딩은 하나의 클래스를 생성하는 작업임
  • 클래스가 속한 마지막 패키지의 폴더에 저장됨
  • 클래스의 파일명은 클래스의 이름과 동일해야 함

 

※ 클래스 명명(이름) 규칙
- 대문자로 시작
- 명사로 시작
- 두 번째 단어부터는 소문자도 되지만 대문자로 시작하는 것을 권장

 


 

[ 메소드(methods ]

  • 클래스에 정의 되어 있는 함수
  • 하나의 클래스에서 다른 클래스의 함수를 실행할 때 실제로 이 메소드를 실행하는 것
  • 패키지A.패키지B.클래스C.메소드(arguments)의 형태로 불러와서 실행함

아래 예시에서는 "showInputDialog()"라는 메소드를 호출하기 위해 "javax.swing"의 패키지에 들어있는 "JOptionPane" 클래스를 import해주게 됩니다. 기본 제공되는 패키지 말고 다른 사람이 만든 라이브러리(패키지의 집합)를 삽입할 때도 마찬가지입니다.

 

package study.input;

import javax.swing.JOptionPane;

public class InputTest {

	public static void main(String[] args) {

		String id = JOptionPane.showInputDialog("입력해주세요");

	}
}

 

 

※ 매소드 명명(이름) 규칙
  - 소문자로 시작
  - 동사로 시작
  - 두 번째 단어부터는 소문자도 되지만 대문자로 시작하는 것을 권장

 



소문자 시작과 대문자 시작이 강제되는 이유는 패키지.클래스 형태로 가져다 사용하기 때문에 클래스와 패키지를 구분하기 위함입니다. 마지막에 대문자로 시작되는 것을 클래스라고 생각하시면 됩니다. 

 

 

 

결론 :

  • 패키지

1. 소문자로 시작 

2. 웬만하면 한단어로 

3. 만약 여러 단어 쓸 경우 모두 소문자를 추천하지만

가독성을 위해 위반해도 됨.

4. 카멜 표기법쓸것

 

  • 클래스

1. 대문자 시작

2. 명사로 시작

3. 카멜 표기법쓸것

 

  • 메소드

1. 소문자로 시작

2. 동사로 시작

3. 카멜 표기법쓸것

 

 

 

 

출처 : 워크스페이스/프로젝트/패키지/클래스의 개념 및 명명 규칙 (tistory.com)