전체 글 427

Visual Studio 프로파일러를 사용한 응용 프로그램 병목 지점 찾기

Visual Studio 프로파일러를 사용한 응용 프로그램 병목 지점 찾기 Hari Pulapaka and Boris Vidolov 이 기사에서 다루는 내용: 성능 병목 지점 파악 응용 프로그램 코드 프로파일링 프로파일링 데이터 비교 성능 보고서 이 기사에서 사용하는 기술: Visual Studio 2008 목차 응용 프로그램 프로파일링 응용 프로그램 최적화 대상 프로파일링 지난 10년 동안 많은 새로운 소프트웨어 기술과 플랫폼이 개발되었습니다. 새로운 각각의 기술에는 뛰어난 성능의 응용 프로그램을 만들기 위한 특별한 지식이 필요합니다. 지금은 블로그와 같은 인터넷 기술 덕분에 응용 프로그램에 실망한 사용자들이 손쉽게 부정적인 의견을 퍼뜨릴 수 있으므로 성능을 가장 중요한 요소로 고려해야 합니다. 계획의..

Azure Services

마이크로소프트의 클라우드 플랫폼인 Azure Services Platform이 작년 10월 처음 공개된 이후 지난 3월 MIX를 거치면서 많은 기능이 추가되었고 5월을 지나면서 몇 가지 추가된 기능들이 있어 소개하고자 한다. 1. Azure Services Platoform은 라이선스를 파는 제품이 아니라 서비스 형태로 제공되는 것이며, 이의 구성 요소 가운데 클라우드 OS에 해당하는 Windows Azure에 추가된 기능으로 배포될 위치를 지정할 수 있는 Geo-Location 지원 기능이 있다. 이는 나의 서비스가 어느 곳에 위치한 데이터센터에 배포되어 서비스를 제공할 것인지를 서비스 생성시에 지정할 수 있는 것으로 현재는 아래 그림에서와 같이 북미 북부 혹은 남부 정도만 선택할 수 있다. 2. 지난..

ASP.NET 2.0 프로젝트의 특정 폴더의 설명

l App_Browsers 폴더 각 브라우저를 식별하고 기능을 확인하기 위해 ASP.NET에서 사용하는 브라우저 정의 파일을 포함합니다. l App_Data 폴더 Microsoft Access 데이터베이스(.mdb 파일), XML 파일, 로컬 파일에 저장된 기타 데이터 등을 포함합니다. 응용 프로그램을 실행하는데 사용되는 사용자 계정(예: 로컬 ASPNET 계정)에는 이 폴더에 대해 파일을 읽거나 쓰고 만들 수 있는 권한이 부여됩니다. 웹 사이트관리 도구와 다양한 ASP.NET 응용 프로그램 기능(예: 멤버 자격 및 역할에 대한 공급자)은 App_Data 폴더에만 사용되도록 구성되었습니다. l Bin 폴더 이전 버전의 Visual Studio와 마찬가지로 컴파일된 코드를 포함합니다. Bin 폴더의 코드가..

.NET Assembly

.NET Assembly 닷넷을 어느정도 공부해본 사람들은 어셈블리(assembly)에 대한 말을 많이 듣게 되는데, 닷넷 어셈블리가 무엇인지, 어떻게 사용하는 것인지 한번 생각해 보도록 합시다. 어셈블리란 무엇인가 1. 어셈블리는 코드들의 논리적인 묶음이다. 2. 어셈블리는 물리적으로 DLL또는 EXE로 존재한다. 3. 한 개의 어셈블리는 한 개이상의 파일을 포함할 수 있다. 4. 어셈블리안에는 어떤 형태의 파일도 포함될 수 있다(예: 텍스트 파일, 이미지파일등) 5. 작성된 소스코드가 어셈블리로 묶여지지 않다면, 다른 어플리케이션에서는 이용할 수가 없다. 6. 어셈블리파일엔 자체정보를 가지고 있는데 이를 어셈블리 메니페스트(Manifest)라 한다. 어셈블리 메니페스트(manifest)에 대해 1. ..

연산자 오버로딩 - 인덱스

class Point { public int x; public int y; public Point(int x, int y) { this.x = x; this.y = y; } public override string ToString() { //(x,y)값 return String.Format("({0},{1})",x,y); } // + 연산자 메서드 public static Point operator +(Point pt1, Point pt2) { return (new Point(pt1.x + pt2.x, pt1.y + pt2.y)); } // - 연산자 메서드 public static Point operator -(Point pt1, Point pt2) { return (new Point(pt1.x - p..

자바스크립트 HTML에서 주석문 달지말자!

흔히 HTML상에서 자바스크립트나 다른 스크립트 언어를 사용할 경우 주석문을 처리해주는 경우가 많다. 물론 다른 스크립트의 경우 충분히 사용할 이유가 있지만 자바스크립트의 경우 그야말로 접근성만 떨어뜨리는 일이다. 사실 HTML에서 주석문으로 처리해준 이유는 자바스크립트를 정상적으로 해석하지 못하는 브라우저들이 스크립트 구문을 그냥 출력해버리는 것을 막기위한 방법으로 사용되어왔지만 현재 사용되는 브라우저중에 자바스크립트가 지원되지 않는 브라우저는 거의 없으며 만약 지원이 되지 않더라도 스크립트가 출력되지는 않는다. 오히려 주석문 보다는 로 스크립트를 감싸줄것을 권한다. 자바스크립트는 해석하지 못하더라도 HTML를 해석할 수 있는 브라우저라면 ( 그것도 해석안되면 그건 웹브라우저 자격이 없을테니 말이다. ..

웹브라우즈별 data URI scheme 테스트

제가 필요해서 몇가지를 테스트를 해 보았습니다. 즉 이미지를 http://cfile21.uf.tistory.com/image/24083B4E56E668962FDD6D"target_resize_image[]" onclick="image_window(this)" style="cursor: pointer;" src="http://cfile29.uf.tistory.com/image/2535F43B56E66896122587" height="100" width="100"> 위의 이미지는 data:image/gif;base64 의 이미지를 src 에 바로 넣어 준 경우 입니다. 위의 경우 사용가능 한 웹 브라우즈는 FF 계열(크롬, 오페라, 사파리 등) IE 8 >= 에서만 가능하였고 그 외 웹 브라우즈에서는 엔팍으..

jQuery Selector 를 이해해 보자.

강력한 jQuery Selector. javascript 의 원래 문법에 비해 너무도 강력한 css style 의 selecting 을 지원한다. 하지만 css 엔진을 이용하는 것이 아니고, 원래의 javascript 접근방식으로 재해석하여 동작하는 것이므로, jQuery 가 어떻게 selecting 해 올지 예상하는것이 필요하다. 그렇지 않으면 모든 dom 객체를 수십번 훑는 막장 코드가 나올지도 모른다. 일단 js 에서 dom 객체를 선택하는 방법을 생각해 보자. document.name getElementById() getElementsByName() getElementsByTagName() getElementsByClassName() getElementsByClassName() 의 경우 최신의 몇..