.NET에서 오류를 캐치하기 위한 방법으로 'Debug.Assert'과 'throw Exception' 이렇게 두 가지가 있습니다. 이 두가지의 차이와 활용방법을 알아봅시다. 1. Debug.Assert 'Debug.Assert'는 조건이 펄스(false)일 때 동작하는 메소드 입니다. 이 동작이 중요한데 'Debug.Assert'의 용도는 '확인'에 있으므로 거짓일 때 동작한다고 생각하면 됩니다. 'Debug.Assert'가 동작하면 메시지 상자가 표시됩니다. Debug.Assert([비교값], "[출력할 메시지]"); 'Trace.Assert'도 같은 동작을 합니다. 디버그는 디버그 모드에서만 동작하고 트레이스는 모두 동작합니다. (참고 : 디버그(Debug) 클래스와 트레이스(Trace) 클래스) ..
디버그(Debug) 클래스와 트레이스(Trace) 클래스는 비슷한 기능을 가지고 있는 클래스입니다. 이 클래스들의 차이를 알아봅시다. 1. 디버그(Debug) 클래스 디버그 클래스는 조건부 컴파일 기호가 'DEBUG'일때만 동작하는 클래스입니다. 닷넷을 처음 배우면 'Debug.WriteLine("Hello World")'를 찍어보는 코드를 보는 경우가 많아서 익숙한 코드죠. 디버그 모드에서만 표시해야 하는 로그나 편의 기능들이 들어 있습니다. 자세한 내용은 MSDN을 참고하는 것이 좋습니다. 참고 : MSDN - Debug 클래스 'Assert'와 같이 메시지가 표시되는 기능들은 중단점 처럼 사용할 수 있습니다. 2. 트레이스(Trace) 클래스 조건부 컴파일 기호와 상관없이 동작하는 클래스입니다. 많..
Asp.Net MVC에서 뷰와 컨트롤러의 데이터를 전달하는 방법 중 모델을 전달하는 방법 말고 3가지 방법이 더 있는데 뷰 백(View Bag), 뷰 데이터(View Data), 템프 데이터(Temp Data)가 있습니다. 각각을 어떻게 사용하는지 알아봅시다. 1. 각각의 용도 각각의 큰 특징은 다음과 같습니다. 1) 뷰백(ViewBag) 다이내믹(Dynamic) 오브젝트로 되어 있습니다. 직관적으로 사용할 수 있습니다. 자동으로 변수형을 유추하기 때문에 사용 시 형 변환이 필요 없습니다. 닷넷 프레임웍 3.5부터 사용할 수 있습니다. 2) 뷰데이터(ViewData) 딕셔너리(Dictionary) 콜랙션으로 되어 있습니다. 뷰백에 비해 속도가 빠릅니다. 값(Value)이 오브젝트로 나오기 때문에 형 변환..
구글 비전 API는 머신비전(Machine Vision) api입니다. 머신 비전이라는 것은 컴퓨터의 눈처럼 시각정보(사진, 동영상 같은 것들)를 인식하고 처리하기위한 기술입니다. 구글의 비전 API는 웹에서도 체험할 수 있습니다. 참고 : 구글 클라우드 플랫폼 - CLOUD VISION API 이미지 넣고 결과를 기다리면 이미지를 분석한 정보를 보여 줍니다. 이 API를 등록하고 사용 방법을 알아보겠습니다. 연관글 영역 1. 구글 비전 사용 구글 클라우드 플랫폼의 콘솔로 들어가서 'Google Cloud Vision API'를 찾습니다. 해당 API를 찾지 못했으면 아래 링크로 들어가 주세요. 참고 : Google Cloud Platform - Google Cloud Vision API '사용 설정' ..
다른 회사의 서비스도 마찬가지지만 구글의 API를 이용하려면 '사용자 인증 정보'가 필요합니다. 구글은 API키, OAuth 2.0, 서비스 어카운트 키(Service account key) 이렇게 3가지방식을 지원합니다. 구글 API의 '사용자 인증 정보'는 어떻게 생성하는지 알아봅시다. 생성한 '사용자 인증 정보'를 활용하는 방법은 이 포스트에서 다루지 않습니다. 연관글 영역 0. 사용자 인증 정보 찾기 구글 클라우드 플랫폼에서 프로젝트를 생성하였다면 콘솔화면에서 아래와 같은 메뉴를 확인할 수 있습니다. API 관리자 > 사용자 인증 정보 를 선택하면 아래와 같이 '사용자 인증 정보'를 추가할 수 있는 페이지가 나옵니다. 1. API 키 만들기 API 키는 미리 생성된 키에 권한을 설정하여 사용하는 ..
구글 클라우드 플랫폼은 구글이 제공하는 API를 사용하고 관리하기 위한 플랫폼입니다. 일종의 개발자 센터 같은 곳입니다. 구글 계정이 있다면 쉽게 가입할 수 있습니다. 연관글 영역 1. 가입하기 아래 주소로 들어가 오른쪽 위에 있는 '로그인'을 선택합니다. 참고 : Google Cloud Platform 구글 계정으로 로그인니다. 오른쪽 위에 있는 콘솔을 누릅니다. 콘솔을 누르면 아래와 같은 페이지가 표시됩니다. 여기서 '무료 평가판 신청'을 누릅니다. 국가를 '대한민국'으로 바꾸시고 서비스 약관에 동의해 줍니다. 그러면 아래와 같이 개인정보 입력 페이지가 표시됩니다. 계정 유형을 '개인'(기업이면 그대로 둡니다.)으로 바꾸고 개인정보를 입력합니다. 한국어로 입력하셔도 됩니다. 여기서 신용카드 정보를 입..
경력이 쌓여도 가끔 초보적인 실수를 하게 되는데...... 이 오류가 대표적인 실수로 인한 오류입니다. 1. 오류 오류의 내용은 다음과 같습니다. 파일이나 어셈블리 '[네임스페이스]' 또는 여기에 종속되어 있는 파일이나 어셈블리 중 하나를 로드할 수 없습니다. 지정된 파일을 찾을 수 없습니다. 이 오류가 나는 대부분의 경우는 네임스페이스와 클래스(혹은 인터페이스 같은 것들)의 이름이 겹치는 경우입니다. 물론 무조건 겹친다고 에러가 나진 않습니다. 그래서 'ASP.NET'는 빌드타임 에러가 아닌 런타임에러가 나는듯합니다. 2. 해결 방법 이름을 바꾸면 됩니다. 끝. .... ..... 너무나 당연한 이야기지만 일반적인 설계에서는 오브젝트 이름과 네임스페이스 같은 것들이 겹치게 하지 않습니다. 이 오류 자체..
앵귤러2를 새로 받아야 해서 npm을 돌려봤는데.... index.js:2 const spawn = require('child_process').spawn; ^^^^^ SyntaxError: User of const in strict mode. 어떤 명령어를 날려도 이 에러가 뜨면서 진행이 되지 않습니다. 1. 일반적인 해결방법 일반적으로는 npm을 업데이트하거나 캐쉬를 날린 후 다시 설치하면 됩니다. 업데이트 명령을 아래와 같습니다. Set-ExecutionPolicy Unrestricted -Scope CurrentUser -Force npm install --global --production npm-windows-upgrade npm-windows-upgrade 다시 설치하는 명령은 아래와 같습니..
비주얼 스튜디오 2015(Visual Studio 2015)에 앵귤러js2를 받아서 넣긴 했는데.... 종속성 복원이 안 되고 다음과 같이 표시됩니다. npm - 설치되지 않음(not installed) UI에서 어떤 것이 실패했는지 알 수 없으므로 한땀한땀 찾아보니..... 'fsevents'가 설치되지 않았습니다. (패키지 명으로 찾으시길 바랍니다.) 이제 오류의 내용을 알았으니 해결방법을 찾기만 하면 됩니다! 1. 방법1 - 외부 도구 지정하기 이것에 관해서 대표적인 해결방법은 npm을 글로벌 버전으로 연결하라는 것입니다. (참고 : SCOTT HANSELMAN - Visual Studio 2015 - Fixing "Dependencies npm not installed" from fsevents ..
유니티UI에서 UI를 만들고 인스팩터(Inspector)을 확인해보면 랙트 트랜스폼(Rect Transform)이 추가된 것을 알 수 있습니다.랙트 트랜스폼에는 앵커 프리셋(Anchor Presets)이라는 것이 있습니다.(참고 : 유니티 매뉴얼 - 기본적인 레이아웃 ) UI가 유동적으로 배치되야 할 때(여러 해상도에 대응한다든가 하는 상황) 어떻게 배치돼야 하는지를 설정하는 값입니다.이 포스팅에서는 앵커 프리셋을 어떻게 다루고 사용하는지 알아보겠습니다. 1. 앵커를 찾아라! UI 패널(GameObject > UI > Panel)을 하나 생성합니다.생성된 패널의 인스팩터를 확인하면 랙트 트랜스폼이 있습니다.랙트 트랜스폼의 첫줄 왼쪽에 상자가 있습니다.이것이 앵커 프리셋입니다. 씬(Scene)화면에서는..