잡탕1 - IT2009. 3. 31. 13:38

String format(String str, int length, int alignment) {
    int diff = length - str.length();

    if(diff < 0) return str.substring(0, length);

    char[] source = str.toCharArray();
    char[] result = new char[length];

    for(int i=0; i < result.length; i++)
        result[i] = ' ';

    switch(alignment) {
        case CENTER :
            System.arraycopy(source, 0, result, diff/2, source.length);
            break;
        case RIGHT :
            System.arraycopy(source, 0, result, diff, source.length);
            break;
        case LEFT :
        default :
            System.arraycopy(source, 0, result, 0, source.length);
    }

    return new String(result);
}

length 크기의 result 라는 char 배열을 생성해서 공백으로 채운 다음 System.arraycopy() 를 이용해서 문자열 str의 내용이
담긴 char배열 source를 복사해 넣는다



출처) 'JAVA의 정석' p465, 예제11-60

Posted by pearl짓거리전문
잡탕2 - 칼럼2009. 3. 19. 15:34
* 이글의 모든 의견은 제 개인적인 생각임을 미리 밝혀 둡니다


인간이 갈구하는 욕망 중에 '미래의 예측' 만큼 인류 역사에 많은 기록과 염원이 담긴건 없을 것이다
고대에는 농사, 사냥을 위해서 내일의 날씨를 알고 싶어 했으며
현대에 이르러서도 앞으로 펼쳐질 사회의 모습, 인류의 존속, 부의 방향을 알고 싶어하는 열망은 계속되고 있다

그런 예측(or 바램) 관련 시각으로 바라 볼때 IT 관련 산업이 앞으로 어떻게 발전할지는 프로그래머로써 초유의 관심이 된다
무엇보다 생활과 직결되기 때문일 것이다
내가 알고 있는 지식, 내가 할 수 있는 것이 무용지물이 되고 퇴보되고 없어지기 전에
새로 탄생한 언어를, 발명된 장비를, 만들어진 기술을 빨리 익혀야 하기 때문이다
IT 관련 산업은 그 발전 속도가 가히 초광속이고 오늘의 기술이 내일이면 과거가되어 필요 없어지는 일이 다반사로 일어난다

지금까지 소프트웨어의 발전은 하드웨어의 발전과 동반됐다
새로운 하드웨어가 발명되면 그에 따른 소프트웨어가 눈부시게 개발됐고
새 하드웨어의 성능으로 말미암아 할 수 없었던 부분을 넘어설 수 있게 되므로써
새로운 발견이라해도 무방할 만한 기술들이 넘쳐나게 된다

초기 컴퓨터 프로그래밍의 목표라면 산업자동화의 컨트롤러 였다
장비를 통제하고 정밀한 작업을 계산해서 실행하게 해주는 도우미 같은
즉, 하드웨어 컨트롤이 그 목표였던 것이다
물론 지금도 그 분야가 없어진게 아니고 중요한 비중을 차지하고 있지만
'인터넷' 의 등장으로 말미암아 온라인 부분은 IT 에서 핵심으로 자리매김하게 된다

현대는 인터넷이 없으면 아무것도 할 수 없는 세상이 되었다
모두가 이메일은 한두개씩 가지고 있으며, 홈페이지, 블로그 등을 가지고 있어서
온라인에 자기 영역을 가지고 있으며, 정보 얻기, 광고, 기업서비스 등..
현대를 살아가면서 해야하는 일들 중 상당한 비중을 차지하고 있는 것이다

이러한 상황에서 '웹프로그래밍'의 발전은 어떻게 될까?
앞으로 어떤 언어가 소위 대세로 자리매김할까?

(2편에 계속)

postscript
가끔 코딩을 하다가 뻘생각이 들곤 한다
18세기 산업혁명이란 이름아래 수많은 노동자들이 현장에서 땀을 흘리고
그 존재가치도 어필해 보지 못하고 무엇을 위해 일을 해야하는지도 모른채 그냥 그렇게 사라져간 이름 모를 혁명원들..
나도 그런 이름없는 프로그래머가 아닐까?
단순히 생활의 영위만을 위한 프로그래밍이 아니라면 내가 하고 있는게 과연 무엇일까?


Posted by pearl짓거리전문