본문 바로가기

분류 전체보기

(872)
[책] 테스트 주도 개발로 배우는 객체 지향 설계와 실천 이 책은 부제에 '테스트 주도 개발'이 들어 있어서 단순한 객체 지향에 대한 책으로 오인 할 수 있다.하지만 이 책은 철저히 TDD에 대해 다루는 책이다. 동작하는 골격을 대상으로 테스트하라 등의 원칙 등은 실제 실무에서 유용하게 쓰고 있다.하지만 책이 Java언어를 너무 깊이 들어가다 보니 닷넷 위주의 개발을 하고 있는 나에게는 약간 산으로 가는 듯한 느낌도 들고 코드가 눈에 잘 들어오지 않는 단점이 있었다.결국 3부 동작하는 예제에서 너무 늦어서 우선 3부 중간에서 읽기를 멈추었다. 후반부에 있는 4부 지속 가능한 테스트 주도 개발에 엄청 기대하고 있는 중에 3분에서 도중 하차를 해서 아쉽지만 머리에 잘 들어가지 않는 상황을 방치하는 것도 못할 일인 것 같아서 우선 그렇게 결정했다.
[책] .NET 예제로 배우는 단위 테스트 단위 테스트 혹은 테스트주도개발 관련 서적으로는 예전에 읽었던 책이다.국내 자바에 대한 책에 비해 닷넷에 대한 책은 드문데, 더구나 닷넷 환경에서 단위 테스트에 대한 책은 반가웠다. 또한 저자 Roy Osherove 가 Typemock이라는 상용 mock 프레임워크의 수석 아키텍트이다보니 테스트 더블(스텁, 더블 같은 테스트 수행시 대체 객체, Effective Unit Testing에 나온 신조어)에 대해 여러 장에 걸쳐 설명한다. 특별히 맘에 들었던 부분은 8장인데, 제목이 '단위 테스트의 조직 내 통합'이다.단위 테스트를 사용하고 있지 않던 조직에서 도입을 하려고 하면 여러가지 난관에 봉착하게 되는데 그런 것들 - 예. 단위 테스트가 도움이 된다는 증거가 있나요? 관리자를 확신시키기 등 - 에 대해..
RFC문서는 왜 txt를 유지할까? 지금은 고전이 된 실용주의 프로그래머(The Prgmatic Programmer)란 책에 보면 3장에 일반 텍스트의 힘이라는 제목으로 일반 텍스트(Plain Text) 파일에 대해 다루고 있다. 참고 이를 반증이라도 하듯, RFC 문서형식은 txt이 유일하다. 물론 인쇄하기 쉽게 pdf로 변환해놓은 경우도 있지만 결국 txt가 원본이다. 이 문서를 보다보면 대단하다고 생각하는데 심지어 그림조차도 ASCII로 그렸다. 어떻게 저걸 그렸나 싶다. RFC 3261에 11쪽을 보면 (txt / pdf) 아래와 같은 그림이 있다. 이것의 그래픽 버전은 아래와 같다. 확실히 텍스트 보다는 아래 그림이 보기에 편할 것이다. 또한 RFC 908 (txt/pdf)을 보면 3개의 그림이 있다. 두 번째 그림은 인터넷에 대..
Windows XP 지원종료를 알림 희안한 자동업데이트가 떴다. 이름하여 Windows XP 지원 중단 알림.KB2934207번까지 붙어 있다. 영문명은 A notification about the end of Windows XP support 이다.http://support.microsoft.com/kb/2934207 Windows에 대한 보안 업데이트를 계속 받으려면 Windows XP SP3(서비스 팩 3)을 실행해야 합니다. 서비스 팩 3을 포함하는 Windows XP에 대한 지원이 2014년 4월 8일 중단됩니다. 지원이 중단된 이후에 SP3(서비스 팩 3)을 포함하는 Windows XP를 실행하는 경우, Windows에 대한 모든 중요한 보안 업데이트를 받으려면 Windows 8과 같은 최신 버전으로 업그레이드해야 합니다.이런 ..
[엑셀] 랜덤 낱말 만들기 살다보면 임의의 낱말 목록이 필요할 경우가 있다.나의 경우를 보자면 데이터베이스를 테스트하기 위한 데이터 집합 등이 예가 된다.필요에 따라서는 데이터 크기가 커지게 되는데 이럴 경우 일일이 데이터를 타이핑하는 것은 시간이 많이 걸린다. 하지만 컴퓨터의 힘을 빌어 일부 자동화를 할 수 있다면 지혜로운 방법이 될 수 있다.여기서는 엑셀을 이용하는 법을 정리한다. 1) 로우 데이터를 획득한다.인터넷에는 이미 충분하게 데이터가 널려있다. 데이터를 만들기 전에 인터넷에서 찾아보자. 바퀴를 재발명할 필요는 없지 않는가? 만약 찾을 수 없다면 자동화해서 만들 수 있는 데이터를 이용한다.나의 경우는 사전 데이터를 이용했다. 구글에서 dictionary.txt 라는 검색어로 검색하면,http://www.math.sjsu..
[C#] 애플리케이션 경로 윈도우 API에 보면 현재 디렉토리의 경로를 구하는 함수가 있다.MSDN GetCurrentDirectory 함수 : http://msdn.microsoft.com/en-us/library/windows/desktop/aa364934(v=vs.85).aspxC#에서는 Directory.GetCurrentDirectory 메서드가 그 역할을 수행한다. 사실 이 경로보다 exe의 경로가 더 알고 싶을 경우가 있다. 예를 들면 서비스 애플리케이션의 경우 시스템이 실행을 시켜주기 때문에 현재 디렉터리나 상대 디렉터리를 사용하게 되면 엉뚱한 SYSTEM 폴더 경로를 참고하게 되기 때문이다. 이럴 경우에는 GetModuleFileName 함수를 이용하면 된다.MSDN GetModuleFileName 함수 : htt..
[C#] WinForm - Drag & Drap 구현하기 (아이콘 변화) DragEnter라는 이벤트가 발생할 때 인자로 넘어온 DragEventArgs의 Effect 속성을 부여해주는 것으로 구현 가능하다. 처음에 보이는 기본 뼈대는 아래와 같다.private void MainForm_DragEnter(object sender, DragEventArgs e){} 여기에 e.Effect에 DragDropEffects.Copy 라는 지정을 하면 아래 그림처럼 아이콘이 바뀐다.private void MainForm_DragEnter(object sender, DragEventArgs e){e.Effect = DragDropEffects.Copy;} DragDropEffects 열거형은 Scroll, All, None, Copy, Move, Link의 6가지 경우가 있다.파일을 드..
[이럴수가] 바이트 배열을 숫자로 바꾸다 발견한 점 우선 퀴즈, 다음 코드를 실행했을 때 어떤 글자가 화면에 출력될까?class Test {public static void main(String[] args) {byte b = (byte)0xe9;int i1 = b;int i2 = b & 0xff;System.out.println(i1);System.out.println(i2);}} 정답은 아래에서 확인해보고... 아래서 확인한 내용과 머리로 생각했던 결과가 다르다면 이 글을 읽어보아라. 이런 현상은 왜 나타나게 된 것일까?byte 배열을 정수로 바꾸는 기능을 java.nio.ByteBuffer를 이용해서 구현을 했다.import java.nio.ByteBuffer; class ByteToInteger {public static int ToInt(byte..