728x90
금요일을 맞이하여 마이크로소프트가 새롭게 준비중인 Visual Studio 2010 의 Beta 1 버전을 설치했습니다. 따로 개발 적인 측면에서 VS 를 살펴보려는 이유는 아니고, 준비중인 원고에서 Visual Studio 2010 에서 확인할 내용이 몇가지 있어서 임시로 회사 PC 에 설치를 감행(?)했습니다. 워낙에 하드디스크 용량이 부족한 회사 PC 인지라, VS 2010 과 .NET Fx 4 가 올라가면 시스템이 뻗어버리는 것 아닐까 하는 걱정 때문이었지요.

여차저차 설치를 마치고 나니 하드디스크의 용량은 약 400MB 정도 남았습니다. VS2010 의 설치경로를 별도의 Path를 잡아 주었음에도 공통 모듈과 같은 부분들이 윈도우 OS 의 설치 경로에 영향을 받는게 아닌가 싶습니다. 간단하게 설치과정을 보도록 하겠습니다.


셋업 파일을 실행하면 군더더기 없는 푸른색의 깔끔한 인스톨러 화면이 눈에 띕니다. 시간이 지나면서 마이크로소프트가 공급하는 프로덕트들의 인스톨 화면들은 단순함을 추구하는 방향으로 가는 듯 합니다. 가볍에 Next 버튼을 눌러 다음 과정으로 넘어갔습니다.


어제 Visual Studio 2008 과 닷넷 프레임워크 4 의 연계를 먼저 해보려고 시도했던 탓에 이미 설치된 컴포넌트로 구분되어 화면에 출력됩니다. 5가지 항목이 새롭게 설치될 거라는 내용이 보이는데요, 실제로는 더 세세하고 다양한 항목들이 설치 과정중에 제 하드디스크에 침투하는 모습을 볼 수 있었습니다.


간단한 런타임 부터 Visual Studio 의 메인 프로그램까지 즐비한 요소들이 설치를 준비하고 있습니다. 웹 인스톨러를 다운로드 받아 설치를 진행했기 때문에 웹 에서 설치파일 다운로드가 먼저 진행되고 실제 설치는 다운로드가 끝난 다음 진행되는 모습입니다. 사용자가 한눈에 설치 진행상황을 볼 수 있는 좋은 구조입니다.


30분정도 웹서핑을 즐기면서 기다리니 설치가 성공적으로 끝났다는 메세지가 출력됩니다. 아주 일반적인 윈도우 XP 환경에서 설치작업을 진행했는데 큰 문제없이 설치가 마무리 되었습니다. 아마도 닷넷 프레임워크 4 를 같이 설치하는 경우에는 시간이 조금 더 소요될 것 같습니다. 닷넷 프레임워크 3.5 SP 1 도 필요하다는 처음의 메세지로 미루어 볼 때, 미리 이것저것 깔려있지 않다면 1시간 이상 설치시간이 소요되지 않을까 싶습니다.


Visual Studio 2008 의 스타트 업 화면과 비슷한 느낌의 화면이 떠오릅니다. SVN 클라이언트도 지가 알아서 잘 땡겨오는 착한 모습을 보여주고 있습니다. 평가판이니 평가만 하고 재빨리 지워주는게 도리이겠지요? 간만에 설치해본 Visual Studio 였습니다 :-)

- NoPD -
728x90
728x90
* 이 글은 오라클 기술 네트워크(Oracle Technology Network)에 공개된 Joh Paul Cook 의 영문 아티클을 번역 / 의역한 글입니다. 원문은 링크(http://tinyurl.com/m69mvh)를 통하여 확인하실 수 있습니다.

에러 핸들링

에러가 발생하게 되면 닷넷 어플리케이션은 유연하게 에러를 핸들링 해야 하며 사용자에게 의미있는 메세지를 전달해 주어야 합니다. Try-Catch-Finally 에러 핸들링 구조는 닷넷 언어의 한 부분입니다. 아래의 소스코드는 오라클 연계 개발시 Try-Catch-Finally 에러 핸들링 구조를 사용하는 간단한 예입니다.

try
{
    conn.Open();

    OracleCommand cmd = new OracleCommand();
    cmd.Connection = conn;

    cmd.CommandText = "SELECT dname FROM dept WHERE deptno = " + textBox1.Text;
    cmd.CommandType = CommandType.Text;
    if (dr.Read())
    {
        label1.Text = dr["dname"].ToString();
    }
}
catch (Exception ex)
{
    MessageBox.Show(ex.Message.ToString());
}
finally
{
     // 객체 초기화 코드
}
이러한 에러 핸들링 방식은 에러 발생시 무리 없이 에러를 처리할 수 있는 구조이긴 하지만, 사용자 친화적인 방식의 에러 처리라고 보기는 어렵습니다. 이러한 코드상에서 에러가 발생하는 경우 아래와 같이 불친절한 메세지가 사용자에게 출력되게 됩니다.


ORA-12154 와 같은 에러 코드, 에러 메시지는 오라클 DB 관리자(DBA)나 개발자 에게는 굉장히 유용한 메세지 임은 틀림없는 사실입니다만 사용자에게는 전혀 그렇지 못합니다. 보다 나은 에러 핸들링 방법은 추가적인 Catch 구문을 이용하여 주요 데이터베이스 에러 코드를 처리하고 사용자 친화적인 메세지를 출력해 주는 것입니다.

catch (OracleException ex)
{
    switch (ex.Number)
    {
        case 1 :
            MessageBox.Show(" 중복된 데이터를 Insert 하고 있습니다 ");
            break;
        case 12545 :
            MessageBox.Show(" 데이터베이스를 사용할 수 없습니다 ");
            break;
        ...
        ...
        default :
            MessageBox.Show(" 처리되지 않은 데이터베이스 에러가 발생했습니다 : " + ex.Message.ToString();
            break;
        }
}
catch (Exception ex)
{
    MessageBox.Show(ex.Message.ToString());
}
보다 상세하게 처리 로직을 추가한 위의 코드를 보면 catch 문이 2개가 사용된 것을 볼 수 있습니다. 오라클과 관련된 에러를 핸들링하는 catch 구문과 일반적인 에러를 핸들링하는 catch 구문이 그것입니다. 이와 같이 에러 메세지를 처리해 주면 사용자에게 보다 편안한 에러 메세지를 제공해 줄 수 있을 것입니다.

- NoPD -
728x90
728x90
엊그제 실버라이트 2 정식버전이 발매되면서 RIA 관련 개발자, 디자이너들 사이에 많은 포스팅들이 새롭게 올라오고있습니다. 그만큼 오래 기다렸고 기대가 되는 정식버전 발표이기 때문이겠지요. NoPD도 최근 추세(?)에 발맞추어 회사에서 진행되는 많은 프로젝트에 AJAX 를 넘어서 플랫폼 으로써의 RIA 의 역할에 대한 고민을 많이 하고 있는터라 테스트를 해보려고 부랴부랴 서둘렀습니다만...


실버라이트 2 개발도구를 설치하기 위한 기본조건이 Visual Studio 2008 에 서비스 팩 1이 설치된 개발 환경이라야 하는데, NoPD의 개발도구가 SP1이 미처 설치되지 않은터라 부랴부랴 느린 인터넷 속도를 감내해가며 (인도 출장중입니다 ;;) 다운로드 받아서 설치했습니다. 그런데, NoPD가 설치한 SP1 은 한글판! 반면 실버라이트 2 개발도구는 영문과 일본어로만 발매된 상태! 꽥! 실버라이트 2 개발도구의 언어와 맞지 않아서 설치를 진행하지 못하는 문제가 발생한 것입니다 ;;;;;;;;;


여기저기 수소문 해보니 VS2K8 SP1 한글버전 사용자들은 조금 더 기다려야 할 것 같다고 합니다. 다시 베타2를 설치하고 실버라이트 2 를 살펴봐야 하는게 맞는지 한글 버전 출시를 기다렸다가 하는게 더 나은건지 고민이 되는군요. 정식 발표를 하면서 한글 버전을 발표하지 않다니, 조금 실망입니다! 마이크로소프트!

- NoPD -
728x90

+ Recent posts