Dev 119

C# Web Service -> REST

Web Service(WSDL), REST 어떤 방식으로 서비스를 만들면 좋을것인가 고민을 한적이있다. 그런데 왜 난 꼭 REST 방식을 웹페이지로 따로 만들어야 된다고 생각을 했을까? 그냥 아래와 같이 Web Service에 대해서 GET, POST 방식을 같이 노출하면 같이 사용할 수 있는데.. Web Service 의 인터페이스 메쏘드의 Input 파라미터에 대해서 Complex Type을 쓰지 않고 기본 타입을 쓰고, web.config 에 아래와 같이 GET, POST 방식을 노출 해주면 끝. 하지만 Basic Type 을 쓰면 Strong한 타입 체킹을 할 수 없다는 단점이 있긴하다..

Dev/.NET 2009.08.09

C++0x Lambda

아래 링크의 글 중 Herb Sutter 의 Lambda 예제 및 설명에 관한 리플.. http://herbsutter.wordpress.com/2008/03/29/trip-report-februarymarch-2008-iso-c-standards-meeting/ []와 []안에 들어가는 내용에 대해서 명쾌하게 설명을.. Herb Sutter Re binders: Okay, I give! I’ll use a better example next time. (no name) asked: "How are local variables captured?" You have to specify whether it’s by copy or by reference. So this example is illegal beca..

Dev/C++ 2009.05.20

C++ Refactoring

기 작성되어 있던 C++ 컴포넌트에서 한개의 함수에 너무 많은 코드로 인해, 컴파일러 내부 오류를 경험하고 해당 코드에 대해서 리팩토링을 결심!! 관련된 작업은 Extract Method 이며 자동으로 해당 부분을 추출하여 Method를 만들어 주는 툴을 중심으로 알아 보았다. 이것 저것 알아보던 중 2개의 후보가 눈에 띠었다. 대상은 "Refactor! For Visual C++ 2005"와 "Visual Assist X" 에서 지원하는 Refactoring 에 관련된 기능이다. 결론부터 얘기하면 "Refactor! For Visual C++ 2005"의 기능이 쓸만 하였고 Visual Assist X 의 리팩토링 기능은 간단한 기능을 제외하고는 그다지 유용하지 못하였다. Visual Assist X ..

Dev/C++ 2009.04.14

ATL Com Project VC++ 6 에서 VC++ 8 변환(업그레이드)

VC++ 6 에서 ATL Com Project 만들어진 프로젝트를 VC++ 8 로 업그레이드를 할 경우 몇가지의 문제가 발견 되었다. 1. LINK : fatal error LNK1104: 'mtxguid.lib' 파일을 열 수 없습니다. 확인 해보니 더 이상 VC++ 8 버전에서는 'mtxguid.lib'가 존재 하지 않는다. 다른 lib 로 바이너리들이 통합 된것으로 보이며 링커 옵션에 추가 되어 있는 'mtxguid.lib' 를 지우면 된다. 추가적으로 main을 못찾는다는 링크 에러가 발생하면 "ATL에서 CRT 사용 최소화" 옵션을 사용 하지 않는다. 2. GetObjectContext 링크 에러 링크 옵션에 "comsvcs.lib" 를 추가 하면 된다. 3. def 파일의 심볼에 서수 지정 경..

Dev/Windows 2009.03.27

유니코드(UNICODE), C++

유니코드 (네이버 백과사전) 국제표준으로 제정된 2바이트계의 만국 공통의 국제 문자부호 체계(UCS: Universal Code System)를 말한다. 애플컴퓨터·IBM·마이크로소프트 등이 컨소시엄으로 설립한 유니코드(Unicode)가 1990년에 첫 버전을 발표하였고, ISO/IEC JTC1에서 1995년 9월 국제표준으로 제정하였다. 공식 명칭은ISO/IEC 10646-1(Universal Multiple-Octet Coded Character Set)이다. 유니코드는 전세계 문자코드를 정의하기 위해서 만든 놈이다 그럼 이전에는 어떻게 표현 했는가? 이전에는 알파벳틱한 애들은 1바이트에서 7비트 내로 표현하고(Ascii) 그외에 확장적인 문자가 코드 127 위로 표시되고, 한글과 같이 더 많은 바이..

Dev/Windows 2008.10.16

SQL Server CLR - 레지스트리 읽기

SQL Server 2005 버전 부터 기존 Native 확장프로시저의 개념으로 .net 환경의 CLR 코드의 통합을 제공한다 기본 네이티브 확장프로시저는의 문제점은 위험한 코드로 인해 SQL Server 자체의 보안이나 실행에 영향을 줄수 있다는것인데 2005 부터 지원되는 CLR의 경우 SQL Server와 실행의 완벽한 분리로 리스크를 최소한으로 줄였다고 한다. 이번에 SQL Server 암호화 모듈을 위해 Native 확장프로시저및 CLR 코드로 만들어 비교해 봤는데 CLR 의 압승이었다 Native의 경우 crypto++ 이라는 라이브러리로 래핑을 하였고 CLR의 경우 System.Security.Cryptography 의 라이브러리를 사용해서 만들었다. 대강의 느낌은 CLR 쪽이 3배 이상 빠..

Dev/SQL 2008.10.10