날짜별 글 목록: 2008년 6월 19일

이클립스(Eclipse)에서 ArgoUML 사용하기

ArgoUML을 이클립스(Eclipse)에 설치해서 UML을 사용하는 방법을 살펴보자.

1. 설치

1.1 이클립스 설치

이클립스는 http://download.eclipse.org/eclipse/downloads/에서 다운로드해서 설치한다.

1.2 ArgoEclipse 플러그인 설치

이 플러그인은 이클립스 3.5 이상의 버전에서 동작한다. 설치를 위한 세부 과정은 다음과 같다.
1.2.1 이클립스 Help -> Install New Software 화면에서 New 버튼을 클릭한다.
1.2.2 아래의 정보를 입력해서 설치한다.
– Name: ArgoEclipse
– URL: http://argoeclipse.tigris.org/update_site
eclipse_argouml_installeclipse_argouml_install_2이제 설치를 완료했다.

2. 사용하기

이 플러그인의 사용 방법은 manual에서 확인할 수 있다.  이제 개발 중인 프로젝트에서 New -> Other -> ArgoUML 을 선택해서 프로젝트에 UML 파일을 만들어서 각종 UML 다이어그램을 그리고 저장할 수 있다.
사용자 삽입 이미지

java charset에 대해서..

이기종의 플랫폼과 연동할 이슈가 발생하면, 네트웍을 통한 Byte Ordering과 더불어 스트링의 인코딩/디코딩도 이슈거리입니다.  아래는 자바 API 5의 java.nio.charset.Charset 에 나오는 내용입니다.

표준 캐릭터셋
Java 플랫폼의 구현은 모두 다음의 표준 캐릭터셋를 지원 할 필요가 있습니다. 지원 되고 있는 그 외의 캐릭터셋에 대해서는 구현의 릴리스 노트를 참조하십시오. 그러한 옵션의 캐릭터셋의 동작은 구현 마다 다를 가능성이 있습니다.

캐릭터셋           설명
US-ASCII          7 비트 ASCII (ISO646-US/Unicode 캐릭터셋의 Basic Latin 블록)
ISO-8859-1      ISO Latin Alphabet No. 1 (ISO-LATIN-1)
UTF-8                8 비트 UCS 변환 형식
UTF-16BE        16 비트 UCS 변환 형식, 빅 endian 바이트순서
UTF-16BE        16 비트 UCS 변환 형식, little endian 바이트순서
UTF-16             16 비트 UCS 변환 형식, 옵션의 바이트순서 마크로 식별되는 바이트순서

아래코드는 예제입니다.

class CharSetTest {

    static String aa = “a1”;

    static void testAscii() {
        try {
            byte[] bytes = aa.getBytes(“US-ASCII”);
            for(int i=0; i < bytes.length; i++) {
                System.out.print(bytes[i]);
            }

            System.out.println(“”);
        }catch(java.io.UnsupportedEncodingException e) {
            e.printStackTrace();
        }
    }

    static void testUTF8() {
        try {
            byte[] bytes = aa.getBytes(“UTF-8”);
            for(int i=0; i < bytes.length; i++) {
                System.out.print(bytes[i]);
            }

            System.out.println(“”);
        }catch(java.io.UnsupportedEncodingException e) {
            e.printStackTrace();
        }
    }

    static void testUTF16() {
        try {
            byte[] bytes = aa.getBytes(“UTF-16”);
            for(int i=0; i < bytes.length; i++) {
                System.out.print(bytes[i]);
            }

            System.out.println(“”);
        }catch(java.io.UnsupportedEncodingException e) {
            e.printStackTrace();
        }
    }

    static void testUTF16BE() {
        try {
            byte[] bytes = aa.getBytes(“UTF-16BE”);
            for(int i=0; i < bytes.length; i++) {
                System.out.print(bytes[i]);
            }

            System.out.println(“”);
        }catch(java.io.UnsupportedEncodingException e) {
            e.printStackTrace();
        }
    }

    static void testUTF16LE() {
        try {
            byte[] bytes = aa.getBytes(“UTF-16LE”);
            for(int i=0; i < bytes.length; i++) {
                System.out.print(bytes[i]);
            }

            System.out.println(“”);
        }catch(java.io.UnsupportedEncodingException e) {
            e.printStackTrace();
        }
    }

    public static void main(String[] args) {
        System.out.println(“— Ascii —“);
        CharSetTest.testAscii();
        System.out.println(“— UTF-8 —“);
        CharSetTest.testUTF8();
        System.out.println(“— UTF-16 —“);
        CharSetTest.testUTF16();
        System.out.println(“— UTF-16BE —“);
        CharSetTest.testUTF16BE();
        System.out.println(“— UTF-16LE —“);
        CharSetTest.testUTF16LE();
    }
}

아래 예는 화면결과 입니다.

— Ascii —
9749
— UTF-8 —
9749
— UTF-16 —
-2-1097049
— UTF-16BE —
097049
— UTF-16LE —
970490