게시판 본문 ASP, ASP.NET, IIS & Script - Read Only
re: 정규식강좌중에 질문이 있습니다..(소스질문 아니에요.. ^^) |
---|
작성자: 송원석
작성일시: 2004-10-06 18:38,
조회수: 2,848
|
먼저 말씀드리고 싶은 점은 '정말 기쁘다.' 라는 제 느낌입니다. ^_^;;
갑자기 무슨 얘기냐고 생각하실지도 모르지만 저는 정말 이런 토론을 기다리고 있었거든요. 분명히 제 글에도 오류가 있을 것이고 누군가는 그런 부분들을 발견할텐데 대부분의 분들이 그냥 아무런 말씀도 안해주시고 지나가셔서 내심 아쉬웠었습니다. 업무가 바쁘지 않을 때에는 개인적으로 이런 논의를 정말 기대하고 있습니다. 앞으로도 이상하다 싶으신 내용이 있으시면 주저없이 글을 올려주십시요. ^_^ 말씀하신 부분들에 대해서 제 생각을 말씀드려 보겠습니다. 먼저 한 가지 양해를 드리고 싶은 부분은 지적하신 문서가 사실 2002 년도 03 월 달에 작성된 글이라는 점입니다. 따라서 당연히 이 문서의 내용은 지금의 제 지식과는 어느 정도 차이가 존재하는 내용이 있을 수 있다는 사실을 감안해 주십시요. 게다가 문서들에 내용상 다소 오류의 의심이 간다고 생각되는 부분들이 있더라도 아무말도 없이 그냥 수정해 버리는 것은 올바르지 않다고 생각되어서 치명적인 오류가 아니라면 그냥 내버려둔 제 의도도 있습니다. 이런 점들을 감안해서 문서들을 읽어봐 주십시요. 1. 클라이언트에서의 정규 표현식이 과연 안전하지 않은가?이 문제에 대해서는 상당히 논란의 여지가 있다는 점을 인정합니다. 일단 저 자신부터 클라이언트에서 자바스크립트를 통한 정규 표현식 관련 코드를 많이 작성하고 있으니까요. 제가 이 문서에서 이런 얘기를 한 것은 당시에 제가 PDA 같은 모바일 디바이스에 상당한 관심을 가지고 있던 시기였기 때문이라는 것이 솔직한 고백입니다. 그렇기 때문에 '...클라이언트상의 웹 브라우저의 버전이나 종류, 혹은 Target Device 의 종류 등에 관계없이 언제나 정규 표현식 기능을 일관되게 처리해주기 위한...' 이라는 문장이 사용된 것이죠. ^_^;; 특히나 제가 많은 관심을 가지고 있는 포켓 PC 상의 인터넷 익스플로러에서는 자바스크립트가 거의 쥐약입니다. 그리고 이미 잘 알고 계시겠지만 핸드폰의 WML 이나 HDML 기반에서는 자바스크립트라는 단어 자체가 의미가 없어지니까요. 따라서 문장중의 '클라이언트' 라는 단어를 다양한 디바이스가 아니라 통상의 컴퓨터 기반의 웹 브라우저만을 그 대상으로 얘기한다면 제 얘기는 전혀 해당이 되지 않겠죠. 2. 인터넷 익스플로러상에서 실행되는 자바스크립트는 엄밀히 말해서 JScript 다?이 부분은 엄밀하게 말씀드리자면 zziuni 님의 말씀이 맞다고 생각합니다. SCRIPT 태그에 명시적으로 스크립팅 엔진을 지정했는데도 해당 스크립팅 엔진이 사용되지 않는다면 사실 이는 프로그램 특성이 아니라 버그라고 말할 수 있겠죠. ^_^;; 제가 이 문장에서 하고 싶었던 내용의 핵심은 순수한 자바스크립트, 즉 ECMA 표준의 자바스크립트와 인터넷 익스플로러에서 사용되는 자바스크립트는 다르다는 점을 말하고 싶었던 것입니다. 예를 들어서 가장 대표적인 것이 ActiveXObject 개체죠. 비록 SCRIPT 태그에서 명시적으로 자바스크립트를 사용한다고 지정을 하더라도 로딩되는 스크립팅 엔진에서 구현하는 기능은 사실 표준 자바스크립트가 아니라는 얘기입니다. 이런 인터넷 익스플로러만의 자바스크립트 기능들을 잘 보여주는 항목들에는 다음과 같은 것들이 있습니다. 일단 VBArray 개체를 통해서 VBScript 와 교차 언어 지원을 사용할 때 배열에 안전하게 접근할 수 있는 기능이 있습니다. 그리고 Enumerator 개체, GetObject 개체 등 상당수의 기능들이 표준 자바스크립트의 기능에서 벗어나 있습니다. 그래서 이런 점들을 감안해 본다면 아무리 겉으로는 자바스크립트라고 말은 해도 결국 내부적으로는 JScript 에 다름이 없다는 얘기였습니다. 바로 이런 점들을 말하고 싶었던 것인데 제 글솜씨가 엉망인 관계로 오해를 유발하게 되었던 것 같습니다. ^_^;; 3. 클라이언트에 설치된 스크립팅 엔진의 버전에 영향을 받는다?이 문제는 이런 관점에서 생각을 한 번 해 보았습니다. 편의상 자바스크립트 1.2 버전을 넷스케이프와 인터넷 익스플로러에서 동일 버전에서 구현을 했다고 가정을 해보도록 하겠습니다. 그러나 그렇다고 하더라도 넷스케이프에서 구현된 자바스크립트 1.2 버전와 인터넷 익스플로러에서 구현된 자바스크립트 1.2 버전은 완벽하게 동일하지 않을 것입니다. 왜냐하면 자바스크립트 1.2 버전의 스펙에 맞추어서 각각의 회사에서 독자적으로 개발한 것일 테니까요. 게다가 마이크로소프트에서는 앞에서 말씀드렸던 인터넷 익스플로러에서만 지원되는 ActiveXObject 개체같은 것들이 포함될테니 더욱 더 그렇겠지요. 그렇다면 마이크로소프트에서는 자바스크립트 처리 모듈을 인터넷 익스플로러 안에 제작하여 넣어두었을까요? 그 답은 '아니다.' 입니다. 왜냐하면 스크립팅 엔진을 상당히 많은 윈도우즈 시스템 구성 요소에서 공유하기 때문입니다. 심지어는 IIS 나 오피스에서도 동일한 스크립팅 엔진을 공유합니다. 따라서 인터넷 익스플로러를 설치할 때에도 해당되는 버전의 스크립팅 엔진이 설치되지만 해당 윈도우즈 시스템 구성 요소들을 설치하는 경우에도 스크립팅 엔진이 설치되죠. 그리고 인터넷 익스플로러도 결국은 이 스크립팅 엔진을 공유하여 자바스크립트나 VBScript 를 처리하게 됩니다. 그래서 그런 말씀을 드렸던 것입니다. ^_^ 감사합니다. |
IP 주소: 165.141.121.62
|
전체 2,095 건의 게시물,
84 페이지로 구성된
ASP, ASP.NET, IIS & Script 게시판의
55 페이지입니다.
게시물 | ||||
---|---|---|---|---|
770 | 2004-10-14 | 4,432 | ||
769 | 2004-10-11 | 2,666 | ||
768 | 2004-10-11 | 2,622 | ||
767 | 2004-10-12 | 2,535 | ||
766 | 2004-10-12 | 2,513 | ||
765 | 2004-10-13 | 2,515 | ||
764 | 2004-10-13 | 2,670 | ||
763 | 2004-10-13 | 2,687 | ||
762 | 2004-10-09 | 3,187 | ||
761 | 2004-10-09 | 2,642 | ||
760 | 2004-10-08 | 2,669 | ||
759 |
re: 도움 요청... [3] |
2004-10-08 | 2,581 | |
758 | 2004-10-06 | 3,148 | ||
2004-10-06 | 2,848 | |||
756 |
re: ^^ [1] |
2004-10-07 | 2,463 | |
755 |
한글 분리 성공~ ^^ [5] |
오마르 |
2004-10-06 | 1,003 |
754 | 2004-10-06 | 2,487 | ||
753 | 2004-10-06 | 2,585 | ||
752 |
오마르 |
2004-10-05 | 692 | |
751 | 2004-10-05 | 2,817 | ||
750 |
강수민 |
2004-10-05 | 745 | |
749 | 2004-10-05 | 2,593 | ||
748 |
강좌 잘보았습니다. ^^ [2] |
2004-10-05 | 2,614 | |
747 |
오마르 |
2004-10-04 | 708 | |
746 |
re: 한글 분리.. [2] |
2004-10-04 | 2,854 |