모듈 상단에 Option Explicit 문을 선언 > 기술자료 | 해피정닷컴

모듈 상단에 Option Explicit 문을 선언 > 기술자료

본문 바로가기

사이트 내 전체검색

모듈 상단에 Option Explicit 문을 선언 > 기술자료

ClassicASP 모듈 상단에 Option Explicit 문을 선언

페이지 정보


본문

Explicit는 사전을 보면 '명백한, 명시적인'이란 뜻이 있습니다.
Option Explicit는 말 그대로 선택사항인데, 변수를 명시적으로 선언하겠다는 선택 입니다.

비주얼베이직은 기본적으로 변수를 선언하지 않아도 자동으로 변수를 인식하도록 설계되었습니다. 언듯 매우 편리한 기능인 듯 하지만 실상은 그렇지 않습니다.

비주얼베이직 예약어나 사용자정의 함수외에 알 수 없는 단어는 모두 변수로 인식하는 거지요.


Option Explcit를 사용하지 않았을 때 불편한 점과 문제점이 있는데,

1) 변수의 자료형이 모두 Varient형이 됩니다. 따라서 프로그램이 실행될 때 더 많은 메모리를 요구하겠지요. 즉, 비경제적입니다.  변수의 자료형을 알맞게 설정하면 코딩에 훨씬 도움도 됩니다.

2) 오타로 인해 변수를 잘못 써도 비주얼베이직 인터프리터 또는 컴파일러가 문법적 오류로 인식하지 않는다는 점입니다. 프로그램을 실행시키면 아무런 에러도 없지만 원하는 결과는 나오지 않겠지요.

예를 들어 다음과 같이 XX라고 써야 하는데, 실수로 X라고만 써도 아무런 오류가 발생하지 않지요. 그래서 XX의 결과가 55일거라는 기대를 져버리고, 10이 출력됩니다.

XX=0
For i=1 to !0
      XX = X + i
Next i
Print XX


3) 코딩을 한 후 프로그램을 실행시켰을 때 Option Explicit를 사용하지 않은 경우에 속성이나 메소드를 잘못 입력한 경우 대부분 한 행 전체가 노란색으로 표시되고,  개체가 필요하다는 등의 오류를 출력합니다.  이런 경우 한 행 전체 중 어느 부분인지를 찾기가 어렵겠지요.  물론 경험이 많은 사람이라면 쉽겠지만


Option Explicit를 사용했을 때의 불편한 점
   모든 변수를 명시적으로 Dim 이나 Public 등으로 선언해야 합니다.
   변수를 선언하지 않고 사용하는 것보다 선언하고 사용하는 것이 디버깅에 훨씬 도움이 됩니다. 프로그래밍 작업의 대부분이 디버깅에 소요된다는 점을 생각하면 이 정도의 수고는 ... 하다못해 플래시 액션스크립트에서 조차 변수형을 명시적으로 표현하는 것이 추가된 점도 같은 이유겠지요.

Option Explicit를 사용했을 때 편한 점
   오타로 인한 오류는 컴파일 오류로 바로 표시됩니다. [디버그]버튼을 누르면 오류가 있는 단어를 정확히 표시해 줍니다.
   변수를 명시적으로 선언하면서 대부분 적절한 자료형을 선언할 것이므로 메모리 사용이 효율적이겠지요.
미리 설계해서 변수를 선언하면 좋겠지만 코딩을 하는 중간 중간에 더 필요한 변수가 생기면 그때 그때 선언하면서 사용하면 됩니다.


엄격하게 공부한 프로그래밍 습관이 훗날 나를 편하게 해줍니다.


사용방법
<% Option Explicit %>


참고자료
http://kin.naver.com/qna/detail.nhn?d1id=1&dirId=102020101&docId=66781759

댓글목록

등록된 댓글이 없습니다.


Total 198건 7 페이지
  • RSS
기술자료 목록
78
ClassicASP   11270  2009-01-30 20:17  
열람
ClassicASP   14230  2009-01-28 11:09 ~ 2015-01-31 00:00  
76
ClassicASP   12543  2009-01-23 14:41 ~ 2009-01-23 00:00  
75
ClassicASP   20614  2009-01-22 19:33  
74
ClassicASP   24136  2009-01-22 19:28  
73
ClassicASP   23668  2009-01-20 21:48  
72
ClassicASP   18862  2009-01-20 11:09 ~ 2016-10-21 00:00  
71
ClassicASP   18779  2009-01-20 08:35  
70
ClassicASP   11681  2009-01-19 16:27  
69
ClassicASP   21054  2009-01-16 19:22 ~ 2009-01-29 00:00  
68
ClassicASP   10185  2009-01-13 10:54  
67
ClassicASP   18634  2009-01-05 20:09 ~ 1970-01-01 09:00  
66
ClassicASP   13989  2008-12-31 05:55  
65
ClassicASP   11817  2008-12-11 17:35 ~ 2009-10-08 00:00  
64
ClassicASP   10507  2008-11-29 14:44  
63
ClassicASP   14624  2008-11-29 14:41 ~ 2012-06-09 00:00  
62
ClassicASP   17394  2008-11-26 23:02  
61
ClassicASP   13556  2008-08-25 20:42  
60
ClassicASP   17258  2008-08-25 18:06  
59
ClassicASP   27016  2008-08-02 18:01 ~ 2016-10-21 00:00  

검색

해피정닷컴 정보

회사소개 회사연혁 협력사 오시는길 서비스 이용약관 개인정보 처리방침

회사명: 해피정닷컴   대표: 정창용   전화: 070-7600-3500   팩스: 042-670-8272
주소: (34368) 대전시 대덕구 대화로 160 대전산업용재유통단지 1동 222호
개인정보보호책임자: 정창용   사업자번호: 119-05-36414
통신판매업신고: 제2024-대전대덕-0405호 [사업자등록확인]  
Copyright 2001~2024 해피정닷컴. All Rights Reserved.