login register Sysop! about ME  
qrcode
    최초 작성일 :    2003년 06월 23일
  최종 수정일 :    2004년 02월 02일
  작성자 :    Dukyoung (김덕영)
  편집자 :    Taeyo (김 태영)
  읽음수 :    155,020

강좌 목록으로 돌아가기

필자의 잡담~

태오 사이트의 변신을 위한 준비기간....

안녕하세요. 초보자를 위한 ASP 강좌 오늘은 그 6번째 시간입니다. 지난 시간에 우리는 아주 간단한 ASP 페이지를 하나 작성해 보았습니다. 그리고 Now, Hour 같은 함수와 IF ~ THEN 과 같은 조건 구문에 대해서 알아보았는데요. 오늘은 본격적으로 ASP 에서 사용되는 기본 문법에 대해서 살펴보고자 합니다.

오늘 우리가 살펴보고자 하는 내용들은 다음 6가지 내용 정도가 되겠습니다. 본 내용에 들어가기에 앞서 가벼운 마음으로 한번 읽어보시면 좋을 것 같습니다.

선언 및 생성
1. Dim - 변수를 선언. (예: Dim strName)
2. Set - 개체를 생성. (예: Set rs = Server.CreateObject("ADODB.RecordSet"))
논리 구문
3. IF ~ THEN - 만약 ~ 라면. (조건이 적은 경우)
4. SELECT CASE - 만약 ~ 라면. (조건이 많은 경우)
5. FOR ~ NEXT - 순환하면서 실행. (반복 횟수를 정확하게 알고 있을 때)
6. DO WHILE - 순환하면서 실행. (반복 횟수를 정확하게 알 수 없을 때)

좋습니다. 그럼 이제부터 이 내용들을 천천히 한번 살펴보도록 할까요?

 

1. Dim

- Dim 은 '차원'을 의미하는 'Dimension' 의 약자로서, 변수를 선언할 때 사용합니다. 만약 Dim a 라고 한다면, 'a 는 이제부터 변수다' 라는 것을 프로그램에게 알려주는 것이지요. (변수란 쉽게 말해 '변하는 수' 입니다. 그 안에 들어있는 값은 상황에 따라 변하게 되지요.) 그러면 이제부터 a = 5 + 3 과 같은 식으로 사용할 수 있게 되는 것입니다.

여러개의 변수를 선언할 때에는
Dim a
Dim b
Dim c

처럼 하나하나 선언해 주면 됩니다. 그런데 만약 선언할 변수가 많은 경우에는Dim a, b, c 처럼 쉼표를 기준으로 여러개의 변수를 동시에 선언할 수도 있습니다.

하지만 이런식으로 Dim a, b, c... 와 같이 의미없는 변수를 선언하는 것은 좋지 않습니다. 당장은 편해서 좋을 것 같지만, 시간이 흐른 뒤 자신이 작성한 소스를 보게 되었을 때 '이것이 무엇을 의미하는 변수였더라?' 하면서 헷갈릴 수 있기 때문입니다. (만약에 혼자가 아닌 그룹 단위의 작업을 하게 된다면 이것은 더더욱 심각한 문제가 됩니다. 의미 없는 변수는 프로그램을 분석하는 데 상당한 장애 요인이 될 수 있기 때문입니다.)

그러므로 변수의 이름은 '규칙' 에 따라서 의미가 통하는 명확한 이름으로 주는 것이 좋습니다.

제가 사용하고, 또한 추천해 드리고 싶은 방법은 다음과 같습니다. 예를 들어서 '이름' 이 들어가는 변수라면, Dim strName 과 같이 사용하는 것입니다. name 은 이름을 의미하는 단어이고, 앞에 붙는 'str' 이라는 것은 '문자열' 을 의미하는 'string' 의 약자입니다. 즉, strName 이라고 한다면 '이름을 의미하는 문자열' 이 되지요. 만약 번호를 의미하는 변수라면? 그때에는 '정수' 를 의미하는 'integer' 와 번호를 의미하는 'number' 를 합쳐서, intNumber 와 같은 방식으로 사용하면 되겠지요.(정말 기발한 방법이라굽쇼? 이것은 사실 '헝가리안 표기법' 이라는 표기법으로.. 상당히 유명하고 잘 쓰이는 방법입니다. ^^ 근데 왜 니가 개발한 척 하나구요? -_-a)

하지만.. 이것은 권장 사항일 뿐이고, 변수 선언에 강제적인 규칙은 없습니다. 때문에 사람들마다 각각 자신만의 방법대로 변수를 선언하지요. 만약 여러분들께서 어느 회사(또는 동아리 등의 프로그래머들이 모인 집단)에 속해 계시다면, 아마도 그 집단에서는 나름대로의 변수 선언 규칙이 존재하고 있을 것입니다. 그 방식을 따르고 자기 것으로 익히는 것이 가장 좋다고 말씀 드릴 수 있겠네요.

변수 선언에 대한 또 한가지 이야기를 하겠습니다. 대부분의 다른 프로그램(C 나 C++, JAVA 등)에서는 선언하지 않은 변수를 사용하거나, 정확하게 사용되지 않은 변수를 사용하면 오류가 발생합니다. 하지만 ASP 는 조금 특별하게도, 기본적으로 변수 선언을 하지 않고 변수를 사용해도 오류를 발생시키지 않습니다. (물론 오류가 발생하게끔 옵션을 수정할 수도 있습니다만..)

하지만 좋은 프로그래밍 습관을 위해서, 변수는 꼭 선언한 다음에 사용하시기 바랍니다. 잘 알고 계시는 '세살 버릇 여든 간다' 는 속담은.. 프로그래밍 세계에서도 적용됩니다. 조금 귀찮더라도 처음 배울 때 좋은 습관으로 배워 놓으면 두고두고 유용하다는 말이지요. ^^

 

2. Set

- Set 은 '개체의 인스턴스' 를 생성할 때 사용하는 명령어입니다.개체(Object)라... 개체란 과연 무엇일까요? 어렵게 생각하실 것 없습니다. 그냥 여러분들께서 알고 계신 개체의 뜻 그대로입니다. 우리 주변에서 쉽게 접할 수 있는 컴퓨터, 의자, 책상, 핸드폰 등이 모두 개체라는 말이지요. 이 중에서 '핸드폰' 의 예를 들어보겠습니다. 다음 두 문장을 주목해 주십시오.

1. 핸드폰은 다른 사람과 통화를 하기 위한 도구입니다.
2. 내 핸드폰으로는 사진도 찍을 수 있고, 화음도 끝내줍니다. (거짓말입니다. -_-a)

1번에서 말하는 핸드폰과 2번에서 말하는 핸드폰의 의미는 조금 다른데요. 1번에서 말하는 핸드폰이 일반적으로 통칭해서 쓰이는 의미의 핸드폰(보통명사)이라면, 2번에서 말하는 핸드폰은 누구의 것인지 알 수 있는 구체적인 의미의 핸드폰(고유명사)입니다.

우리는 1번에서 말하는 통합된 의미의 핸드폰을 '개체(Object)' 라고 하며, 2번에서 말하는 - 실제로 사용가능한 - 핸드폰을 '개체의 인스턴스(Instance)' 라고 합니다. 즉 개체(Object)는 추상적인 의미이며, 직접 사용할 수는 없는 존재고요. 그에 반해 인스턴스(Instance)는 구체적이며 직접 사용할 수 있는 존재라는 뜻이 되겠습니다.

조금 어렵나요? 사실 개체의 정의를 초보자에게 설명하기는 조금 까다롭습니다. 하지만 개체는 상당히 중요한 개념입니다. 반드시 이해를 해야 하는 개념이지요.

개체에 대한 이야기를 핸드폰의 예를 들어 조금 더 해보겠습니다. 핸드폰이 무엇인지 잘 모르는 어떤 사람이 있다고 가정하고요. 그 사람이 여러분들께 '핸드폰이 뭐지요?' 라고 물어본다면 어떻게 대답하시겠습니까?

'음.. 그러니까 핸드폰이란 전화를 걸 때 쓰는 건데요. 크기는 손바닥보다 조금 작고, 무게는 가볍고요. 아~ 전화를 할때에는 버튼을 눌러야 해요..'

사람들마다 차이는 있겠지만, 대충 이런 대답을 하게 되지 않을까요?

핸드폰을 설명하기 위해서는 핸드폰의 특징에 대해서 이야기를 해야 할 것입니다.

위에서 언급한 대로 색깔, 크기, 무게, 버튼의 갯수, 액정의 유무.. 등을 말이지요. 이런 사항들은 핸드폰이라면 기본적으로 당연히 가지고 있는 항목이라고 할 수 있겠습니다.

이것을 바로 개체의 속성(Property) 이라고 합니다. 이 속성이라는 친구는 '개체의 특정한 면들을 설명하는' 용도로 사용됩니다. 즉, '개체 내에서 사용되는 전용 변수' 정도로 이해하시면 되겠습니다. 또한 속성은 사용될 때에 이름과 값, 한 쌍으로 표현이 됩니다. (잠시 후에 알아보겠습니다.)

개체에 관하여 생각해 보아야 할 내용이 하나 더 있습니다. 우리는 핸드폰으로 어떤 일들을 할 수 있을까요? 네.. 누군가에게 '전화를 걸' 수도 있고, '전화를 받을' 수도 있습니다. (문자도 있군요.)

이처럼 '어떤 개체가 수행할 수 있는 작업' 을 메소드(Method)라고 합니다. 속성과 마찬가지로.. 핸드폰이라면 기본적으로 실행할 수 있어야 하는 기능이지요. 이 메소드라는 것은 '개체 내에서 사용되는 전용 함수' 라고 말씀드릴 수 있겠습니다. 함수이므로 어떤 함수냐에 따라 인자가 필요할 수도 있습니다.

예를 들어 '전화 걸기' 라는 메소드가 있고, '전화 받기' 라는 메소드가 있다고 가정하겠습니다. (전화를 걸고 받는 것은 '작업을 수행' 하는 것이므로 속성이 아니라 메소드가 됩니다.) 전화를 받을 때에는 폴더를 열거나, 통화 버튼만 누르면 되므로 인자가 특별히 필요없습니다만, '전화 걸기' 메소드를 실행하려 할때에는 걸어야 할 '전화 번호' 가 필요하게 됩니다. 이처럼 메소드에서는 인자가 필요할 수도 있고, 필요 없을 수도 있습니다.

자.. 개체에 대한 이야기는 여기서 일단 마무리를 짓겠습니다. 사실 많이 부족하지만, 앞으로 계속 만나게 될테니 그때마다 조금씩 설명을 하도록 하겠습니다.

마지막으로 ASP 에서의 개체 사용 방법을 맛보기로 만나보도록 하겠습니다. 다음 예문은 실제 ASP 에서 작동하는 소스는 아닙니다. 이해를 돕기 위한 예일 뿐입니다. (숫자는 라인을 표시한 것입니다. 실제로 이렇게 숫자를 표시하지는 않습니다.)

Handphone 개체의 사용 방법
1. Dim myPhone
2. Set myPhone = Server.CreateObject("Telephone.Handphone")
3. myPhone.color = "white"
4. myPhone.number = "011-9971-88XX"
5. myPhone.call("02-584-88XX")
6. myPhone.hangup()
7. Set myPhone = Nothing

1번째 줄에서는 먼저 앞으로 사용될 myPhone 이라는 변수를 선언해 놓았습니다. 그리고 2번째 줄에서는 Server.CreateObject라는 특별한 메소드를 사용하여 'Handphone 개체의 인스턴스'를 만들어서 myPhone 이라는 변수에 저장하였습니다. (그러므로 이제 myPhone 이라는 녀석을 Handphone 으로 사용할 수 있게 된 것입니다.)

개체(Object)는 추상적인 의미라는 말씀을 윗 부분에서 드렸습니다. 그렇기 때문에, Handphone 개체를 우리 프로그램에서 직접 가져다 사용할 수는 없고 '인스턴스(Instance)' 를 만들어서 그것을 변수에 저장하여 사용하는 것입니다. 이처럼 '개체의 인스턴스' 를 만들어서 변수에 저장할 때에 사용하는 구문이 바로 Set 구문이 되겠습니다.

3번과 4번 줄은 속성(Property)값을 할당하는 구문이 되겠습니다. 속성은 사용될 때에 이름과 값, 한 쌍으로 표현이 된다는 말씀을 위에서 드렸었는데, 그 내용이 바로 이 부분의 내용이 되는 것입니다. 보시는 것처럼 myPhone 의 color 속성에는 "white" 라는 값을 넣었으며, myPhone 의 number 속성에는 "011-9971-88XX" 라는 값을 넣은 것입니다. (이 구문을 통해 제 핸드폰의 색깔은 하얀 색, 그리고 번호는 "011-9971-88XX" 가 됩니다.)

그리고 5, 6번 줄은 메소드(Method) 를 실행하는 구문이 됩니다. 5번 줄은 call 이라는 메소드를 사용하여 전화를 거는 작업을 수행합니다. 전화를 걸때에는 '전화번호' 가 있어야 하므로, 인자로 "02-584-88XX" 번을 입력했으며, 이 구문을 통해 제 핸드폰은 02-584-88XX 번으로 전화를 걸기 시작합니다. 6번 줄은 전화를 끊는(hangup) 구문이 되겠습니다. 끊을 때에는 특별한 인자가 필요하지 않으므로인자를 넘겨주지 않았습니다.

그리고 모든 작업을 완료한 다음에는 더이상 핸드폰이 필요하지 않으므로, 7번의 Set myPhone = Nothing이라는 구문을 사용하여 개체의 인스턴스인 'myPhone' 을 메모리에서 해제합니다. 'myPhone' 을 더 이상 쓰지 않는다고 알려주는 것이지요.

이쯤되면 초보자 여러분들의 원망이 들리는 듯 합니다. '뭐가 이렇게 어려워! 이게 무슨 초보용이야!' 라고 말이지요. -_-a 하지만.. 잘 이해가 가지 않는다고 해서 벌써부터 좌절하실 것은 없습니다. '개체' 의 개념은 사실 어렵습니다. '개체' 만을 설명하기 위한 책이 따로 있을 정도니까요. 하지만 앞으로 ASP 를 계속 공부해 나가시다 보면 싫어도 별 수 없이 개체를 자주 만나게 되고, 그러다보면 미운정 고운정이 들면서, 슬슬 이해가 가기 시작할 겁니다. ^^

 

3. IF ~ THEN

- IF ~ THEN 구문은 지난 강좌에서 설명드렸던 구문입니다. 반가우시죠? ^^ 오늘은 단지 참과 거짓만이 아닌, 조금 더 많은 경우를 생각해 보려고 합니다. 한가지 예를 들어볼까요? intNumber 라는 변수에 어떤 숫자가 들어있다고 가정하고요. 이중에서 1,2,3 에 대한 경우의 처리가 달라야 한다면 어떻게 할까요? 네. 아마도 다음과 같이 하면 될 것 같습니다.

IF intNumber = 1 THEN
    Response.Write "intNumber 에 들어있는 수는 1입니다!"
ELSEIF intNumber = 2 THEN
    Response.Write "intNumber 에 들어있는 수는 2입니다!"
ELSEIF intNumber = 3 THEN
    Response.Write "intNumber 에 들어있는 수는 3입니다!"
ELSE
    Response.Write "intNumber 에 들어있는 수는 1,2,3 이 아닌 다른 숫자입니다!"
END IF

갑자기 Response.Write 라는 녀석이 나와서 깜짝 놀라셨을 것 같은데요. 이것은 현재 화면에 문자열을 보여주라는(출력하라는) 함수가 되겠습니다. (지금은 우선 이 정도로만 알아두시고, 다음 기회에 조금 더 자세히 알아보도록 하겠습니다.)

위의 조건절이 이해가 가시나요? intNumber 에 들어있는 숫자가 1이라면 가장 위의 조건을 만족하게 되고, 화면에는 두번째 라인에 있는 "intNumber 에 들어있는 수는 1입니다!" 라는 문자열이 출력되게 됩니다. 만약 2라면? 그렇다면 세번째 라인에 있는 조건을 만족하게 되고 화면에는 "intNumber 에 들어있는 수는 2입니다!" 라는 문자열이 출력되게 됩니다. 마찬가지로 3이면 다섯번째 라인에 있는 조건을 만족하게 되고 "intNumber 에 들어있는 수는 3입니다!" 라는 문자열이 화면에 출력되게 됩니다.

그런데.. 1, 2, 3 이 아닌 그 외의 수라면 어떨까요? 그때에는 어느 경우에도 해당되지 않으므로 7번째 라인에 있는 ELSE 조건에 걸리게 되고, 화면에는 "intNumber 에 들어있는 수는 1,2,3 이 아닌 다른 숫자입니다!" 가 보여집니다.

이처럼 몇가지의 조건이 있을 때, 각각의 조건에 따라 다른 과정을 거치게 하고 싶을 때 사용하는 구문이 바로 IF ~ THEN 구문이 되겠습니다.

 

4. SELECT CASE

- 'SELECT CASE' 문 역시 IF ~ THEN 구문과 마찬가지로 '조건 구문' 이 되겠습니다. 하지만 SELECT CASE 는 '조건이 많을 때' 주로 사용합니다. 예를 들어 볼까요? 위에서는 intNumber 라는 변수에 1,2,3 의 숫자가 들어가는 경우에만 다른 처리를 했습니다. 그런데 이번엔 3까지가 아닌 10까지 다른 처리를 하고 싶어 졌습니다. 그러면 어떻게 할까요?

물론 IF ~ THEN 으로도 가능합니다. 하지만 이렇게 조건이 많은 경우에는 보통 SELECT CASE 문을 사용합니다. 다음의 내용처럼 말이지요.

SELECT CASE intNumber
CASE 1
    Response.Write "intNumber 에 들어있는 수는 1입니다!"
CASE 2
    Response.Write "intNumber 에 들어있는 수는 2입니다!"
CASE 3
    Response.Write "intNumber 에 들어있는 수는 3입니다!"
CASE 4
    Response.Write "intNumber 에 들어있는 수는 4입니다!"
CASE 5
    Response.Write "intNumber 에 들어있는 수는 5입니다!"
CASE 6
    Response.Write "intNumber 에 들어있는 수는 6입니다!"
CASE 7,8,9
    Response.Write "intNumber 에 들어있는 수는 7,8,9 중 하나입니다!"
CASE 10
    Response.Write "intNumber 에 들어있는 수는 10입니다!"
CASE ELSE
    Response.Write "intNumber 에 들어있는 수는 1부터 10 사이의 정수가 아닙니다."
END SELECT

SELECT CASE 문의 사용법은 위와 같습니다. SELECT CASE 다음에 조건을 검사할 변수를 위치시키고, CASE 1, CASE 2, CASE 3... 와 같은 방법으로 조건을 확인하는 것입니다. 보시다시피 IF 문보다 훨씬 간결하고 사용이 편리합니다. (별로 어렵지 않지요?) 중간에 나오는 CASE 7,8,9 처럼 콤마(,) 를 사용하여 조건을 중복할 수도 있습니다.

IF ~ THEN 과 SELECT CASE 는 자주 사용되는 구문이므로, 잘 알아두시면 좋습니다.(써놓고 나니까 무슨 전문 입시 학원의 강사같은 발언이군요. ^^)

 

5. FOR ~ NEXT

- FOR ~ NEXT 구문은 동일한 형식의 작업을 반복하려 할 때 주로 사용하는 구문입니다. 예를 들어 1부터 100까지의 숫자를 화면에 보여지게 하라는 명령이 떨어졌을 때, '좋아, 뭐.. 그정도라면' 이라고 생각하며 빠른 타자로 1부터 100까지 입력할 수 있겠습니다. 그런데 만약 1부터 10000까지의 숫자를 화면에 보여지게 하라는 명령이 떨어졌다면... 이제부터는 더이상 농담이 아닌 상황이 발생하는 것입니다. (계산해보니 1초에 숫자 하나씩 입력한다고 해도 얼추 3시간 정도 걸리는 군요.)

이럴 때 유용하게 사용되는 것이 바로 FOR ~ NEXT 구문입니다.

만약에 1부터 10000까지의 숫자를 화면에 출력하라는 명령이 떨어졌을 때, FOR ~ NEXT 구문을 이용하면 다음과 같이 쓸 수 있습니다.

DIM intLoop
FOR intLoop = 1 TO 10000 STEP 1
    Response.write intLoop & "<BR>"
NEXT

이렇게 작성한 후 ASP 페이지를 실행시키면 - 직접 테스트 해보는 것도 재미있습니다 - 1부터 10000까지의 (1씩 증가하는) 숫자들의 나열을 보실 수가 있습니다. 숫자의 뒤에 <BR> 태그를 추가한 것은 '다음 줄로 바꾸기' 위해서입니다. 만약 <BR> 태그가 없다면 한줄로 주욱~ 나열된 - 보기가 꽤 어려운 - 형태가 출력됩니다.

FOR ~ NEXT 구문의 형식은 다음과 같습니다.

FOR 시작 TOSTEP증가
    반복되어 실행될 구문
NEXT

일반적으로 많이 쓰이는 방식은.. 시작 부분에 작은 수, 끝 부분에 큰 수를 넣은 다음 1씩 증가하면서 실행하는 방식입니다. (여기서 STEP 부분은 생략할 수 있고, 생략하게 되면 기본적으로 1씩 증가하게 됩니다.)

그렇게 되면 이 조건(끝 부분)이 만족될 때까지 실행 구문이 반복적으로 실행되는 것이지요. 이처럼 FOR ~ NEXT 구문은 반복 실행해야 하는 횟수를 알고 있을 때 사용하면 편리합니다.

 

6. DO WHILE

- DO WHILE 문도 FOR ~ NEXT 문과 마찬가지로 동일한 형식의 반복 작업시에 사용합니다. 하지만 FOR ~ NEXT 문이 반복 실행 횟수를 정확하게 알고 있을 때 주로 사용한다면, DO WHILE 문은 실행 횟수를 정확하게 모르고 있을 때, 또는 순환할 때마다 조건을 검사해서 계속 순환할 지 여부를 체크해야 할 때 사용하는 것이 유리합니다.

위에서 FOR ~ NEXT 문에서 사용한 예제를 DO WHILE 로 변경해 볼까요? (참고로 아래의 내용은 FOR ~ NEXT 예제의 결과와 완전히 일치합니다.)

DIM intLoop
intLoop = 1
DO WHILE intLoop <= 10000
    Response.write intLoop & "<BR>"
    intLoop = intLoop + 1
LOOP

FOR ~ NEXT 문보다는 약간 복잡해 보이나요? 간단하게 설명을 드리도록 하겠습니다. 두번째 줄에서, 우선 DO WHILE 문을 시작하기 전에 intLoop 변수에 초기값 1을 대입합니다. 세번째 줄이 가장 중요한 부분이 되겠는데요.DO WHILE intLoop <= 10000 이라는 부분의 의미는
'intLoop 변수에 담긴 숫자가 10000보다 같거나 작은 동안에는 계속 실행해라' 는 뜻이 됩니다. (이 내용은 순환할 때마다 매번 검사합니다.)

그리고 5번째 줄에 intLoop = intLoop + 1 이라는 구문이 있는데, 이 부분은 프로그램을 처음 공부하시는 분들께서 가장 혼동하기 쉬운 부분 중에 하나입니다.

이것은 'intLoop 와 intLoop + 1 이 같다' 는 'equal' 의 의미가 아닙니다. (말이 안되죠?) 이 구문의 의미를 해석하면, '왼쪽에 있는 intLoop 라는 변수에다가, 오른쪽에 있는 intLoop 변수의 현재 값에 1을 더한 결과 값을 대입해라' 라는 뜻이 됩니다. ('=' 은 '오른쪽에서 계산된 값'을 '왼쪽의 변수에 대입' 하라는 의미를 가지고 있습니다. 이때 사용되는 '=' 를 '대입 연산자' 라고 부릅니다. 상식으로 알아두시면 좋겠지요?)

두번째 줄에 나온 intLoop = 1 도 마찬가지입니다. 왼쪽에 있는 intLoop 라는 변수에 오른쪽에 있는 숫자 1을 대입하라는 뜻이지요. 그리하여 6번째 줄에 있는 LOOP 를 만나게 되면 다시 3번째 줄로 돌아간 다음, 조건을 다시 검사하고, 조건과 일치하면 구문을 반복하게 되는 것입니다.

순환문을 사용하실 때, 여러분들께서 주의하셔야 할 점이 있습니다.

만약 위의 DO WHILE 문에서.. 5번째 줄을 깜빡 잊고 입력하지 않았다면 어떻게 될까요? intLoop 변수는 증가하지 않으므로 항상 1이 될 것이고.. 때문에 DO WHILE intLoop <= 10000 구문은 항상 참이 되어서 계속 실행될 것입니다. 즉, 이 순환문은 절대로 종료되지 않는 것이지요.

이것을 '무한 루프' 라고 합니다. '무한하게 계속되는 순환문' 이라는 뜻이지요. 무한 루프에 빠지게 되면 컴퓨터를 강제 종료해야 하는 등, 심각한 사태가 발생할 수 있습니다. (권장하고 싶지는 않지만, 궁금하신 분들께서는 위의 DO WHILE 문에서 5번째 줄을 생략하고 실행해 보시기 바랍니다. 아마 컴퓨터 CPU 사용률이 급격히 증가하여 컴퓨터가 느려지고, 심지어 심한 경우에는 먹통이 되어버리는 경우를 목격하실 수도 있습니다.)

자, 오늘은 ASP 에서 사용되는 기본 문법 몇가지에 대해서 살펴보았습니다. 우선, 변수를 선언하는 Dim명령어에 대해서 알아보았고요. 그 다음 개체의 인스턴스를 생성할 때 사용하는 Set 명령어를 알아보았습니다. 그리고 Set 명령어와 연관된 개체와 인스턴스, 속성, 메소드에 대한 이야기를 하게 되었지요.

조건을 검사하는 구문인 IF ~ THENSELECT CASE문에 대해서도 살펴보았습니다. 조건이 적은 경우 IF ~ THEN, 조건이 많은 경우 SELECT CASE 를 사용한다고 했었지요.

그리고 순환문에 대해서도 알아보았는데요. 순환 횟수를 이미 알고 있는 경우 FOR ~ NEXT 구문을, 모르는 경우는 DO WHILE 구문을 사용한다는 것도 배워보았습니다. (반드시 그런 것은 아닙니다. 일반적으로 그렇다는 말이지요.)

짧은 강좌에서 많은 내용을 다루다보니 조금 헷갈리실지도 모르겠습니다만 인내심을 가지고 천천히 읽어보시면 이해가 되리라고 생각합니다. (그러기를 바랍니다. ^^) 만약 이해가 잘 안되는 부분이 있으시다면 '질문과 답변' 게시판에 어느 부분이 이해가 안가는지 올려주시면 성의껏 답변해 드리도록 하겠습니다.

이것으로서 오늘의 강좌를 마치도록 하겠습니다. 다음 시간에는 ASP 에서 사용되는 기본 문법을 조금 더 알아보도록 하겠습니다. 좋은 하루 되십시오.

감사합니다. ^^


authored by


 
 
.NET과 Java 동영상 기반의 교육사이트

로딩 중입니다...

서버 프레임워크 지원 : NeoDEEX
based on ASP.NET 3.5
Creative Commons License
{5}
{2} 읽음   :{3} ({4})