1. UML

UML은 Unified Modeling Language의 약자로, 직역 하자면 통합된 모델 언어 
이런 UML을 사용하는 유형에는 아래 3가지 정도가 있다.

- 다른 사람들과의 의사소통 또는 설계 논의
- 전체 시스템의 구조 및 클래스의 의존성 파악
- 유지보수를 위한 설계의 back-end 문서


2.class 다이어 그램

UML은 구조 다이어그램 7개, 행위 다이어그램 7개로 총 14종류의 다이어그램이 있으며, 각 특징은 아래와 같다.

1. 구조 다이어그램 : 시스템의 개념, 관계 등의 측면에서 요소들을 나타내냄(정적) 
2. 행위 다이어그램 : 요소들간의 변화나 흐름, 주고받는 데이터 등의 동작을 나타냄(동적)

이 중 클래스 다이어 그램은 구조 다이어 그램에 해당함.
클래스 다이어 그램은 클래스간의 관계나 의존성이나 구조 등에 대해 명확하게 보여줌.


3. class diagram 표기 형식

 

위 그림에서 최 상단 Person 은 클래스 명 
그리고 그 아래 age, name, sex 는 변수.
그리고 그 아래 eat( ) 과 sleep( ) 은 메서드

그리고 변수와 메서드 앞에 표시된 기호들은 다음을 의미한다.
+ : public 
-  : private 
# : protected

public class Person {    
    private int age;
    public String name;
    public String sex = "female";
    
    public void eat(String food){}    
    private void sleep(){}
}

 


4. stereo Type(스테레오 타입)

스테레오 타입이란 UML에서 제공하는 기본 요소 외에 추가적인 확장요소를 나타내는 것으로 
쌍 꺾쇠와 비슷하게 생긴 길러멧(guillemet, « ») 사이에 적는다. 
스테레오 타입으로 많이 사용되는 것은 «interface», «utility», «abstract», «enumeration» 등이 있다.

 

표현

«interface»

인터페이스 클래스

«abstract»

추상화 클래스

«enumeration»

열거형 타입 클래스

«utility»

인스턴스가 없는 static 메서드만 모아둔 클래스

«create»

생성자

 


«interface»

메소드 밑의 밑줄은 static(정적)필드 또는 메서드를 의미

public interface RemoteControl {    
    /*변수 선언*/
    public int max_volume = 10;
    public int min_volume = 0;    
    /*추상 메소드*/
    public void setMute(boolean mute);    
    /*정적 메소드(자바8 부터)*/
    public static void changeBattery(){
        System.out.println("건전지를 교체 합니다.");
    }
}

 


 

<<abstract>>


Phone(String) 옆의 «create» 는 생성자를 의미

public abstract class Phone {    
    public String owner;
    //생성자
    public Phone(String owner){
        this.owner = owner;
    }
    
    public void turnOn(){
        System.out.println(owner+"님의 폰 전원이 켜 집니다.");
    }
    
    public void turnOff(){
        System.out.println(owner+"님의 폰 전원이 꺼 집니다.");
    }
}

 

<<Utility>>

Utility 클래스는 객체화 되지 않고, 오직 static 함수만 모아놓은 클래스를 의미함

 

 메소드 밑의 밑줄은 static(정적) 필드와 메서드를 의미
 {readOnly}는 여기서 final 키워드를 사용하는 상수를 의미

public class Math {
    
    public static final double PI = 3.14159;
    
    public static double cos(double value){
        return 0;
    }
    
    public static double sin(double value){
        return 0;
    }
}

 

'UML' 카테고리의 다른 글

UML 클래스 관계  (2) 2019.05.18

+ Recent posts