IBM®
메인 컨텐츠로 가기
    Korea [국가변경]    이용약관
 
 
   
        제품    서비스 & 솔루션    고객지원 & 다운로드    회원 서비스    

한국 developerWorks  >  자바 | 오픈 소스  >

불필요한 코딩을 줄이자!

아파치 Commons Lang 클래스 네 개로 코드 재사용의 이점을 배워보자

developerWorks

난이도 : 중급

Andrew Glover , 필자 겸 개발자

옮긴이 : 김도형 dwkorea@kr.ibm.com

원문 게재일 : 2008 년 12 월 16 일
번역 게재일 : 2009 년 2 월 10 일

튜토리얼 보러가기

아파치 Commons 프로젝트의 Lang 라이브러리에 포함된, 실전을 통해 다듬어진 오픈 소스 유틸리티를 활용해 코딩을 줄여 봅니다. 다른 사람이 작성한 신뢰성 높은 코드를 재사용하면 여러분의 소프트웨어를 더욱 빨리 출시할 수 있고 오류도 줄일 수 있습니다.

이 튜토리얼 내에서

Commons Lang은 자바(Java) 언어를 이용한 소프트웨어 개발의 다양한 측면에 관련된 많은 부 프로젝트를 가진 대규모 프로젝트인 아파치 Commons의 컴포넌트 중 하나다. Commons Lang은 표준 API인 java.lang을 확장하여 문자열 처리 메서드, 기본 수학 메서드, 객체 리플렉션(reflection), 객체 생성과 직렬화(serialization), 시스템 프로퍼티(property) 등을 제공한다. 또한 상속 받을 수 있는 열거형(enum type), 여러 형태의 중첩된 예외(nested exception), java.util.Date에 대한 개선, hashCode, toString, equals 같은 메서드를 구현하는 데 도움이 되는 유틸리티도 제공한다. 나는 Commons Lang이 서로 다른 다양한 애플리케이션 분야에 걸쳐 유용함을 알게 되었다. Commons Lang을 사용함으로써 코딩을 줄일 수 있을 것이고 결과적으로 상용 소프트웨어를 더 빨리 출시할 수 있고 오류도 줄일 수 있다. 이 튜토리얼에서는 몇 가지 Commons Lang 클래스를 사용하는 데 있어 기본 개념을 단계별로 살펴보고, 많은 코드를 직접 작성할 필요가 없도록 해당 코드를 활용해 본다.


목표

  • equals와 hashCode 같이 정해진 규칙에 따라 구현해야 하는 메서드를 구현해 본다.

  • 구현된 메서드의 동작을 검증해 본다.

  • Comparable 인터페이스의 compareTo 메서드를 구현해 본다.

선수조건

이 튜토리얼을 충분히 활용하려면 자바 문법과 자바 플랫폼 상의 객체 지향 개발에 대한 기본 개념에 친숙해야 한다. 또한 리펙터링(refactoring)과 통상의 단위 테스트(unit testing)에도 친숙해야 한다.


시스템 필요조건

이 튜토리얼을 따라가고 예제를 실행해 보려면 다음이 필요하다.

이 튜토리얼을 위해 권장하는 시스템 구성은 다음과 같다.

  • 썬 JDK 1.5.0_09(또는 더 최근 버전)나 IBM JDK 1.5.0 SR3을 지원하고 최소 500MB 이상의 주 메모리를 가진 시스템
  • 이 튜토리얼에서 다룰 소프트웨어 컴포넌트와 예제를 설치하는 데 디스크 공간에 최소 20MB의 여유가 있어야 한다.

이 튜토리얼의 지시와 예제는 마이크로소프트 윈도우(Microsoft® Windows®) 운영체제를 가정한 것이다. 하지만 이 튜토리얼에 소개된 모든 도구는 리눅스(Linux®)와 유닉스(UNIX®) 시스템에서도 동작한다.



기간

한 시간


포맷

html


이 문서 북마킹 하기

mar.gar.in mar.gar.in naver naver eolin eolin del.icio.us del.icio.us



위로


developerWorks 콘텐트를 다른 사이트에 전재하기:
developerWorks 콘텐트에 대한 저작권은 IBM에 있습니다. IBM의 서면 허가나 원본 저자의 허락이 없이는 전재를 금합니다. 저희 콘텐트를 전재하시려면 IBM developerWorks 담당자 에게 문의하십시오.

문서 옵션

JavaScript가 필요한 문서 옵션은 디스플레이되지 않습니다.

영어원문

영어원문


제안 및 의견
피드백

    IBM 소개 개인정보 보호정책 문의