공룡호가 사는 세상 이야기

네트웍 인프라가 너무나 좋아지면서, 대충 설계하고 무거운 이미지를 덕지덕지 붙여놓고, 각종 스크립트들로 도배를 해 놓아도, 요즈음은 큰 불편함이 없이 웹서핑이 가능하다. 그러나, Birds-Eye의 2007년도 Broadband Statistics에 따르면 미국 인구의 25%는 인터넷을 사용하지 않고 있으며, 53%는 광대역을 사용하고 있고, 21%는 아직까지도 전화 접속을 사용하고 있다.
내가 설계한 웹 페이지는 www를 통해 전 세계로 공유가 되는데, 광대역 연결을 사용하는 사람들만 고려할 수만은 없다.
developerWorks에 소개되었는데,

1. 좋은 구조 사용하기
2. 레이아웃을 오버로드 하지 않기
3. 이미지로 텍스트 표시하지 않기
4. 쿠키 사용 검사하기
5. 필요없는 JavaScript 코드를 포함하지 않고 가능한 한 외부화 하기
6. 되도록이면 테이블 사용하지 않기
7. 불필요한 항목 제거하기
8. HTTP 압축을 사용하고 항상 소문자 div 및 클래스 이름 사용하기
9. 이미지 크기 설정
10. 스크립트 로드를 지연시키기
11. CSS파일 최적화하기
12. 컨텐츠 배포 네트워크 사용하기
13. 자산 도메인을 이용하여 연결 수 늘리기
14. Google Gear 사용하기
15. PNG 이미지 사용하기
16. 짧고 적절하기 Ajax 호출 유지하기
17. 핵심 Ajax 호출을 만들고 클라이언트 데이터를 로컬에서 처리하기
18. 코드 테스트
19. 사이트 코드 분석
20. JSLint를 사용하여 JavaScript코드의 오류 또는 잘못된 코드 검사하기
21. 분리된 파일 및 누락된 이미지 검사
22. YSlow 확장
23. YSlow를 사용하여 페이지 분석

잊지말아야 할 원칙들. 기억해 두자.
http://www.ibm.com/developerworks/kr/library/wa-speedweb/index.html

프로그램을 하다 보면, 웹페이지로 Redirect 해야 할 필요가 있을 때가 있다.
ShellExecute() 라는 API 함수를 사용하면 간단히 해결 가능하다.
Prototype는 다음과 같다.

HINSTANCE ShellExecute(
    HWND hwnd,
    LPCTSTR lpOperation,
    LPCTSTR lpFile,
    LPCTSTR lpParameters,
    LPCTSTR lpDirectory,
    INT nShowCmd
);

2번째 파라미터는 3가지 값을 가질 수 있다.
"open", "print", "explore" 가 그것인데, 웹 페이지로 Redirect 하기 위해서는 "explore" 를 사용해야 한다.
파라미터 이름에서 볼 수 있듯이 파일이나 폴더를 open하거나 print할 수도 있다.

웹 페이지 주소는 4번째 파라미터로 파일일 경우에는 접근할 파일을 의미한다.
(단 파일은 실행 가능한 파일이어야 한다)
웹페이지를 실행해야 하므로, 웹 페이지의 주소를 넣어 준다.
마지막으로, 디폴트 디렉토리와 실행 상수값을 입력하면 된다.
실행 상수는, 여러 개가 있으나 그 중 일부를 보면 다음과 같다.

SW_HIDE : 실행시 숨긴상태로 실행
SW_SHOW : 그냥 실행
SW_SHOWMAXIMIZED : 실행시 화면에 가득 차게 실행

Example Code
// Webpage-Redirect
::ShellExecute(NULL, _T("open"), _T("iexplore"), _T(http://naver.com), NULL, SW_SHOW);

// Excutable-File
::ShellExecute(NULL, _T("open"), _T("notepad.exe"), NULL, NULL, SW_SHOW);

'프로그래밍' 카테고리의 다른 글

구글 가젯 만들기, Part1  (1) 2007.08.21
Resource Leaking  (6) 2007.08.13
SetTimer()  (0) 2007.05.14
ROBOCODE Master의 비밀!!!  (0) 2007.04.23
우연히 보게 된 코드  (2) 2007.04.19