본문 바로가기

Enum에 Description 확장메소드 추가하기 NUnit 테스트 쪽using NUnit.Framework; [TestFixture] class EnumExtsTests { [Test] public void TestGetDescription_Description문자열가져오기() { Assert.AreEqual("The operation completed successfully.", Windows.ErrorCodes.ERROR_SUCCESS.GetDescription()); } [Test] public void TestGetDescription_Description속성은빈문자열획득() { Assert.AreEqual("", Windows.ErrorCodes.ERROR_INVALID_FUNCTION.GetDescription()); } } public c..
[JVM] PermGen? 자바로 프로그램을 짜다 운영(장시간)하다 보면 PermGen에 OutOfMemory라는 예외를 경험하게 된다.보통 흔히 하는 대처로는 JVM 가동시에 XX:MaxPermSize=256m 같은 옵션을 주어 실행을 한다. PermGenPermGen은 Permanent Generation의 약자이다. 여기에 대해서는 jonthecollector가 2006년(!)에 작성한 글을 읽어보면 된다.=> https://blogs.oracle.com/jonthecollector/entry/presenting_the_permanent_generation요약하면 '클래스의 정의들과 연관된 메타데이터를 위해 사용되는 메모리 공간'정도가 될 것이다. permgen은 힙(young generation 과 tenured gener..
nmap : UDP 검색 SNMP 를 위해 검색이 되나 확인해보니 된다. > nmap -sU -P0 -T Aggressive -F [target] ref. http://seclists.org/pen-test/2004/Aug/32
카카오톡PC 버전 - Themida 패킹을! 친구가 URL을 보내줘서 무슨 내용인가 클릭을 해보았다.기본브라우저로 지정되어 있는 크롬이 열리더니 아래와 같이 회색으로 변해버렸다.처음에는 1.링크의 문제라고 생각을 했으나 모바일브라우저에서는 링크로 연결이 잘 되는 것이었다.두 번째는 2. 크롬 브라우저의 문제라고 생각을 하고 브라우저를 모두 종료하고 주소를 복사하니 연결이 잘 되는 것이었다. 마지막 원인은 3. 카카오톡 링크 이벤트라고 밖에 생각할 수 없었다.링크 클릭시 어떻게 브라우저를 띄우는지 알아보기 위해서 32비트 Procmon.exe을 띄었다.(카카오톡PC버전은 아직 32비트이다)그런데 카카오톡이 크래싱이 되어버렸다. 다시 띄어보니 아래와 같은 메시지가 뜬다. 프로그램을 실행시키려면 네놈이 띄운 Procmon.exe를 얼른닫고 다시 프로그램..
[쉘스크립트] Visual Studio 2008 -> 2005 수정해줄 것이 2가지다. .slnMicrosoft Visual Studio Solution File, Format Version 10.00# Visual Studio 2008을Microsoft Visual Studio Solution File, Format Version 9.00# Visual Studio 2005으로 .vcprojProjectType="Visual C++"Version="9.00"을ProjectType="Visual C++"Version="8.00"로 sed 명령으로 치환을 하면 된다. Git을 까니 윈도우에서 리눅스 명령어를 쓸 수 있었다.없으면 sed for Windows 를 사용한다.@echo off REM Cleandel /s /a *.exe *.suo *.ncb *.user *..
[책] Effective Unit Testing 좀 오래 읽은 테스트 관련 도서이다. 목록기존 이펙티브 시리즈 처럼 항목1, 2, 3 처럼 하지는 않다. 하지만 문제가 있는 테스트의 예를 하나하나 조목조목 들어가며 나열을 하고 있다. 또한 지은이이 '라쎄 코스켈라'가 현직 프로그래머인지 현실에서 벌어질 만한 사례를 들어 설명을 하고 있어서 도움이 된다는 것이다. 역자가 번역을 잘 쓴건지, 원자가 표현력이 풍부한 것인지 재미있는 용어들도 많이 나온다.p.34 끝판왕p.98 일용할 야근p.216 삽질 (yak-shaving) 정오표 또는 개선사항p.56 그림 2-4, 오리의 예로 캠벨 오리, 댕기 오리, 테스트 더블 오리로 나왔는데, 차라리 원앙, 청둥 오리와 같이 한국인에게 익숙한 오리 이름으로 표를 대체가능 했을 것 같다. 번역에 직역이 더 이해하기 ..
[ux] 추가 내용 있음 알림 너무 많은 데이터를 사람에게 한 번에 보여주려면 뇌에 과부하가 걸리게 된다.이럴 때 나오는 반응은 1. 하품 / 그리고 2. 취침이다.이런 것을 인지부하이론에서는 인지 과부하 (Cognitive overhead)라고 부른다. UX 디자이너들은 그래서 '점진적인 표시'라는 개념을 사용한다.즉 지금 즉시 필요한 것만 보여주고, 사용자가 인터랙티브하게 더 보거나 안 보는 선택을 할 수 있게 해주는 것이다.개발자에게 늦은 적재(lazy load)와 비슷한 개념이다. 아마존: http://www.amazon.com/CLR-via-C-Developer-Reference/dp/0735667454북 세부정보(Book Description)을 보면 아래 회색으로 흐려지는 부분이 있고, 아래 "더 보기(Show more)..
[Mac OS X] 램디스크 만들기 SSD가 나왔다고 하나 RAM의 속도에는 떨어진다. 임시로 작업을 위해 만드는 파일은 RAM에 작업해서 사용후에 버릴 것이라면 RAM 디스크에 기록을 해도 성능도 좋고 지울 필요 없어 좋다. (휘발성이라 재부팅 후에는 사라지므로) http://boredzo.org/make-ram-disk/를 쓰던지, 터미널을 띄워(125 MB) > RAMDISK=`hdid -nomount ram://256000' > newfs_hfs $RAMDISK> mkdir ./my_ram_disk> mount -t hfs $RAMDISK ./my_ram_disk > hdid -nomount ram://256000 /dev/disk2> newfs_hfs /dev/disk2 Initialized /dev/rdisk2 as a 125 ..