게시판 본문 COM / COM+ by VB 6.0 - Read Only

re: 오랜만에 다시 질문을~ ^^
작성자: 송원석
작성일시: 2006-02-06 09:33,  조회수: 3,395
안녕하세요? 송원석입니다. ^_^

먼저 제 게시판에는 검색이 없습니다. 대신 좌측 메뉴의 동그란 녹색 버튼을 클릭하시면 전체 게시판의 데이터를 다운로드 받으실 수 있습니다. 그리고 지난번에 질문하신 뒤로 상당히 많은 시간이 지난 것 같은데 명확하게 의미를 전달해 드리지 못했던 것 같네요. 요점은 이렇습니다. 원리 원칙대로 따진다면 제한된 상황에서 태그 스타일의 개체 정의가 더 성능이 좋습니다. 그러나 현실적으로 그 효과가 그다지 크지 않고 다수의 인원이 작업을 하는 경우라면 개체 변수의 관리가 어려우므로 코드 스타일의 개체 정의를 사용하시라는 것입니다.

다음의 웹 페이지가 바로 말씀하시는 그 문서입니다. 이 문서를 보시면 이런 내용이 있습니다. '<object id=objname> 태그는 개체 이름(objname)을 선언하지만, 그 개체 이름은 해당 메서드나 속성들 중 하나가 처음으로 사용된 후 비로소 만들어집니다.' 태그 스타일의 개체 정의와 코드 스타일의 개체 정의의 차이점은 바로 이 부분밖에 없습니다.

http://www.microsoft.com/korea/technet/IIS/Tips/asptips17_17.asp

그러나 이 내용이 얼마나 성능 향상에 도움이 될까요? 1,000 분의 몇 초쯤? 아니면 10,000 분의 몇 초쯤? 더 엄격하게 말씀드린다면 사실 이 내용은 실행 속도가 빨라진다는 의미도 아닙니다. 개체가 생성되는 시점에 관한 예기입니다. 즉 코드 스타일로 개체를 정의하면 바로 그 순간에 개체가 생성이 되고, 태그 스타일로 개체를 정의하면 메서드나 속성들 중 하나가 처음으로 호출되는 시점에 비로소 개체가 생성된다는 말인데, 이는 거의 무의미하다고 평가할 수 있겠습니다. 그리고 글의 가장 첫 머리에 보면 '모든 코드 경로, 특히 서버 또는 응용 프로그램 범위 개체에 사용되지 않는 개체를 참조해야 할 경우에는...' 이라는 부분이 있는데요, 역으로 이런 경우에는 STA 컴포넌트는 사용하면 안됩니다. 즉 비베로 만든 컴포넌트는 이 경우에 사용하면 안된다는 말입니다. 다음의 두 문서에 그 내용이 나와 있습니다.

http://www.microsoft.com/korea/technet/IIS/Tips/asptips17_04.asp
http://www.microsoft.com/korea/technet/IIS/Tips/asptips17_05.asp

그러면 결론적으로 C/C++ 을 사용하여 MTA 로 작성한 컴포넌트에만 권장될 뿐더러, 세션이나 어플리케이션 범위에서 사용되는 그리 흔치 않은 개체들을 생성할 때만 태그 방식의 개체 선언을 사용해야 하는데, 그러려면 굳이 머리 아프게 이런저런 경우를 따지는 것이 오히려 비효율적이라는 결론입니다. 게다가 실제로 프로젝트를 진행하다보면 동시에 다수의 인원들이 여러가지 작업을 진행해야하는데 누구는 태그 방식을 사용하고 누구는 코드 방식을 사용한다면 관리가 되지 않습니다. 또한 인클루드를 많이 사용하는 경우에는 오히려 독이 되는 경우도 많습니다.

그래서 결론적으로 코드 방식의 개체 생성을 권해드리는 것입니다.

감사합니다.

IP 주소: 203.248.173.43
전체 1 건의 댓글이 존재합니다.

장윤태

이~ 무한한 레퍼런스;; 감동.. 감격.. 언제쯤 발꼬락 끝만큼 이라도 따라갈까;; 존경스럽습니다. ( __)
2006-02-08 02:20
전체 276 건의 게시물, 12 페이지로 구성된 COM / COM+ by VB 6.0 게시판의 5 페이지입니다.
게시물
179

re: 비주얼베이직 초보인데요 ^^ [1]

송원석

2006-04-26 5,580
178

iis5.0의 응용프로그램보호는 ii6.0에서 어떻게 해야 하나여?

궁금이

2006-04-21 636
177

re: iis5.0의 응용프로그램보호는 ii6.0에서 어떻게 해야 하나여? [1]

송원석

2006-04-22 3,103
176

re: iis5.0의 응용프로그램보호는 ii6.0에서 어떻게 해야 하나여?

궁금이

2006-04-23 636
175

re: iis5.0의 응용프로그램보호는 ii6.0에서 어떻게 해야 하나여?

송원석

2006-04-24 3,049
174

정말감사합니다 [1]

궁금이

2006-04-24 541
173

com+ 에서 외부 DLL 참조시 프록시 설치 오류.. [2]

리모트ㅠㅠ

2006-04-13 3,193
172

답변감사합니다. 그럼 한가지 더 질문이 있습니다.

리모트ㅠㅠ

2006-04-11 3,018
171

re: 답변감사합니다. 그럼 한가지 더 질문이 있습니다.

송원석

2006-04-11 2,766
170

re: 답변감사합니다. 그럼 한가지 더 질문이 있습니다.

리모트ㅠㅠ

2006-04-12 3,015
169

re: 답변감사합니다. 그럼 한가지 더 질문이 있습니다.

송원석

2006-04-12 2,889
168

atl com+ 등록후 proxy내보내기...관련해서요.

리모트ㅠㅠ

2006-04-11 3,000
167

re: atl com+ 등록후 proxy내보내기...관련해서요.

송원석

2006-04-11 3,270
166

OpenDSObject 사용에 대하여

궁금이

2006-03-28 3,174
165

re: OpenDSObject 사용에 대하여

송원석

2006-03-28 3,010
164

re: OpenDSObject 사용에 대하여

궁금이

2006-03-28 621
163

re: OpenDSObject 사용에 대하여

송원석

2006-03-28 2,880
162

GetObject 로 사용자 정보 확인

궁금이

2006-03-14 2,950
161

re: GetObject 로 사용자 정보 확인

송원석

2006-03-14 2,980
160

re: GetObject 로 사용자 정보 확인

궁금이

2006-03-15 2,887
159

re: GetObject 로 사용자 정보 확인

송원석

2006-03-15 3,164
158

프로그램 진로에 대한 경력자로서의 조언을 부탁드립니다.

장윤태

2006-02-23 3,645
157

re: 프로그램 진로에 대한 경력자로서의 조언을 부탁드립니다. [3]

송원석

2006-02-23 3,257
156

오랜만에 다시 질문을~ ^^

장윤태

2006-02-05 3,740

re: 오랜만에 다시 질문을~ ^^ [1]

송원석

2006-02-06 3,395