먹고 사는 이야기
-
[toby의스프링] 2장 - 테스트
프로그램을 개발할 때 테스트가 얼마나 중요한지에 대해서는 말해봐야 입만 아프다. 하지만 테스트가 얼마나 중요한지 아는 것과, 테스트를 실제로 수행하는 것과는 약간의 차이가 있다. 프로젝트를 진행할 때 당장 코드 써내려가기만도 바빠 죽겠는데 테스트까지 면밀하게 하기가 여간 어렵지 않기 때문이다. 통상적으로 웹프로그램 테스트를 한다고 하면 WEB UI위에 올려 놓고 하는 경우가 많다. 하지만 이는 클래스나 모듈에 대한 단위테스트로는 매우 부적절하다. 프로그램이 오류가 났을 때 이게 지금 개발한 클래스나 모듈의 문제인지, 브라우저의 문제인지, 서버의 문제인지 기타 다른 부분의 문제인지 알기가 쉽지 않기 때문이다. 따라서 작성코드에 대한 단위테스트는 WEB UI가 아닌 실행 가능한 자바 클래스 자체에서 수행해야..
-
[toby의스프링] 1장 - 오브젝트와 의존 관계
클래스간에 의존관계를 주입하는 방법에 대해서 설명하고 있다. 클래스 모델이나 코드에서 각각의 클래스들간의 관계를 직접 지정하게 되면, 향후 클래스나 코드의 변경이 일어날 때 마다 관련된 모든 코드를 손봐야 한다. 이는 소프트웨어 개발 시 높은 응집도와 낮은 결합도를 고려해야 한다는 원칙에 위배된다. 따라서 클래스를 개발 할 때 IoC(Inversion of Control)과 DI(Dependency Injection)을 고려해 개발한다. 사실 뭐 이 정도는 그리 대단한 내용이 아니다. 스프링 아니어도 기존에 개발할 때 마다 늘 하던 일이기도 하다.(xml이나 배열등의 노가다로) 하지만 스프링을 쓰면 이런 작업들을 하나하나 수동으로 하는 대신, 스프링의 특정 기술을 쓰면 된다. 거기에 더해, 싱글톤 레지스..
-
Struts 다국어 지원
사가현 LMS 건으로 다국어 관련 처리를 해야 했다. 요즘의 나는 나홀로 개발 중... 에효 Struts 에서 다국어를 지원할 수 있도록 만드는 message.properties JDK의 native2ascii.exe 를 이용해 간단히 글자를 유니코드로 컨버팅 할 수 있는데.. c:\> native2ascii.exe 원본글자파일명 생성대상파일명 일단 해당 언어의 OS 에서 해야 한다는게 포인트다. 일어를 지원하기 위해서는 반드시 일어 OS에서 해야 제대로 된 아스키코드가 생긴다. 다른 방법이 있을지도 모르겠으나.. 일단은 이렇게 처리. 이때 web-inf 설정은 다음과 같다. Current language setting lang 언어파일명 내 참.. 이걸 몰라서 대체 얼마나 삽질을 했던지...
-
KISA, 침해대응센터 개발 완료
연휴가 끝나고 난 후 지금껏 한국인터넷진흥원의 프로젝트를 마무리 하느라 바빴다. 원래 내가 하던 프로젝트가 아닌데, 어떻게 하다보니.. 엉겹결에 프로젝트를 마무리 하는 일이 내 손에 들어왔지. 남이 하던 프로젝트, 그것도 끝물에, 인수인계도 제대로 못 받고 덜컥 투입된 덕분에 버벅임과 삽질의 연속이었지만.. 어떻든 오늘로 고비는 모두 넘었다. 새벽 3시가 넘었다. 원래 내일 오전까지 일을 마치면 되니 내일 오전에 해도 되는 건데.. 막상 내일 오전이 되면 맘급하고 할 것 같아 밤 늦게까지 작업해 그냥 끝내 버렸다. 이렇게 밤샘을 했으니 내일은 좀 늦게 일어나도 되겠지. 잘했다. 이제 남은 일은 산출물 정리 후 납품, 끝~ ^_^ 이렇게 얼마 안 남은거 다 하고 가면 오죽 좋았을까. 쩝.. * 그래도 참 ..