컬럼 제목 : 글 의 삭제 및 doPostBack 함수 의 비밀 
 최초 작성 일 : 2003 년 10 월 29 일 
 최종 수정 일 : 2003 년 10 월 29 일 
 읽 음 수 : 54 , 185 회 
 남 아 일언 중천금 . ... 이 옵 니다만 . ... ㅠ _ ㅠ . . 그렇게 되 었 습니다 . 죄송 하 다는 말씀 밖에 는 . .. 
 ( 슬그머니 ) 자 . 이제 Content . aspx 페이지 의 나머지 부분 들 을 마저 채워 보 도록 하 겠 습니다 . 그러니깐 , 이번 강좌 에서 진행 해야 할 것 은 말 입니다 . 글의 [ 수정 ] 과 [ 삭제 ] 이 지요 ^^. 그렇 습니다 . ( 옅 은 미소 를 띄우 며 ) 그럼 이번 강좌 에서 는 저번 강좌 에서 남긴 부분 들 을 하나 씩 하나 씩 마무리 를 지 어 보 도록 하 겠 습니다요 . .. 
 ( 약간 뜸 을 들이 는 듯 하 다가 . .) 아 참 . . 그 전 에 개인 적 인 사담 하나 올리 겠 습니다 . 요즘 제 가 개인 적 으로 많 은 분 들 을 만났 는데요 . . 그 분 들 중 많 은 분 들 이 제게 이런 말씀 을 하 시 더군요 . . 
 " 태 오 사이트 는 요즘 업데이트 가 너무 늦 는 것 같 아 . 정신 좀 차려야 하 지 않 겠 어 ? 먹 고 사 는 게 바빠 ? ? 
 그리고 , 강좌 가 올라와도 언제나 초급 적 인 강좌 만 올라오 는 것 같 아 . .. 
 이제 는 태 오 사이트 도 중급 적 인 강좌 가 좀 올라와야 하 지 않 나 ? 
 설계 적 인 부분 이나 컨설팅 과 관계 된 이야기 들 말 야 . ... 
 언제 까지 나 겉 핧기 식 의 내용 만 다룰 수 는 없 지 않 아 . ... 뭔가 변화 되 는 모습 을 보여 줘야지 . .. " 
 라고 말 입니다 . 지당 하 신 말씀 입니다 . ... 해서 , 한 말씀 드리 면 . .. 그러 한 시도 를 서서히 준비 해 나가 려고 합니다 . ( 관중 들 믿 지 못하 는 눈빛 을 보낸다 . 이 때 , 필자 당황 스러워 하 며 , 뭔가 변명 거리 를 찾 는다 . 말 을 더듬거리 며 ) 지 . . 지 . . 지금 은 1100 여 페이지 나 되 는 두꺼운 원서 를 번역 하 고 있 어서 . .. 사 . . 사 . . 사실 힘 이 많이 부치 는 형편 이 라 . .. 말 한 것 을 자주 못 지키 고 는 하 지만 요 . .. 조만간 . ... 태 오 사이트 의 ASP . NET 버전 을 비롯 하 여 . . 많 은 것 들 을 새롭 게 시도 하 려 하 오니 . . 부디 . .. 너무 실망 하 지 마시 고 . .. 지켜봐 주 셨 으면 합니다 . .. ^^ 감사 합니다 . ( 관중 들 약간 믿 는 듯 한 분위기 로 돌아선다 ) 
 ( 지긋히 눈 끝 을 올리 며 ) 그럼 이제 본격 적 으로 본래 의 강좌 내용 을 시작 해 볼까요 ? ?? 
 ( 발음 을 굴리 며 ) 물론 , 썸 바리 ( somebody ) 가 슬며시 어떤 비밀 번호 를 입력 했 을 때 , 우연히 그 비밀 번호 가 원래 의 비밀 번호 와 일치 하 여 그 썸 바리 가 여러분 의 글 을 수정 하 거나 삭제 할 가능 성 도 없 진 않 습니다만 . .. 그런 경우 는 드물 고 , 또한 그렇게 되 는 경우 는 쉬운 비밀 번호 를 지정 한 원본 글 작성자 에게 도 상당 부분 책임 이 있 기 에 . .. 이 강좌 에서 그런 부분 까지 는 어떻게 해결 할 수 가 없 을 것 같 네요 . .. 해서 , 보다 보안 적 으로 데이터 를 관리 하 고 싶 다면 , 회원 가입 및 로 긴 을 받 아서 . .. 글 을 작성 한 사용 자 만 이 글 을 수정 하 거나 제거 할 수 있 게 하 는 것 이 바람직 할 것 입니다만 . .. 지금 은 . . 보편 적 인 게시판 을 제작 하 는 것 이 니 , 비밀 번호 로 만 검증 과정 을 끝내 도록 하 겠 습니다 . 다른 일반 적 인 게시판 들 이 그러 하 듯이 말 입니다 . 
 ( 뭔가 발견 한 것 처럼 강조 하 면서 ) 어쨌든 , 글 을 읽 다 보 니 . .. [ 수정 ] 과 [ 삭제 ] , 두 작업 모두 비밀 번호 의 일치 여부 를 무엇 보다 먼저 검사 해야 한다는 공통 적 인 부분 이 있 는 것 을 알 수 있 었 습니다 . 
 ( 이 시점 관중 들 은 괄호 로 표현 되 는 이러 한 개그 에 싫증 을 느끼 기 시작 한다 . 필자 는 자제 모드 로 돌입 한다 ) 
 해서 , 그 부분 즉 , 비밀 번호 의 일치 여부 를 검사 하 는 로직 을 별도 의 함수 로 분리 하 여 처리 해 보 도록 하 겠 습니다 . 그러면 , 이 함수 를 [ 수정 ] 작업 및 [ 삭제 ] 작업 에서 간단히 빌려다가 사용 할 수 있 을 테 니 말 입니다 . 
 함수 의 역할 은 매우 명확 하 죠 ? 그렇 다면 , 우선 적 으로 필요 한 것 은 무엇 일까요 ? 그렇 습니다 . 비밀 번호 의 일치 여부 를 검사 하 는 프로시저 일 것 입니다 . 글 의 seq 값 과 pwd 컨트롤 에 입력 된 비밀 번호 를 인자 로 하 여 . .. 실제 비밀 번호 가 일치 하 는지 를 확인 하 는 프로시저 말 입니다 . 해서 작성 해 본 프로시저 는 다음 과 같 습니다 . 
 CREATE PROC UP _ IS _ PASSWORD _ VALID 
 @ pwd varchar ( 20 ) 
 SELECT seq FROM ThreadBoard 
 쿼리 는 매우 간단 합니다 . 단지 , 인자 로 넘어온 seq 값 과 pwd 값 에 부합 하 는 레코드 가 있 다면 그 레코드 의 seq 값 을 얻 어 오 는 것 이 전부 입니다 . 왜 하필 이 면 seq 컬럼 값 을 얻 어 오 냐구요 ? ??? 사실 , 그것 은 별 의미 가 없 습니다 . 이 프로시저 는 단지 해당 seq 및 pwd 에 일치 하 는 레코드 가 있 느냐 없 느냐 를 알아내 는 것 이 목적 일 뿐 이 니까요 . ... 프로시저 를 실행 해서 , 그 결과 로 레코드 가 있 다면 비밀 번호 가 일치 하 는 것 이 고 , 레코드 가 없 다면 비밀 번호 가 일치 하 지 않 는 것 입니다 . 
 이제 , 프로시저 를 위 와 같이 작성 하 셨 다면 , [ 쿼리 분석기 ] 로 이 를 실행 해 주 세요 ~~ 그러면 , 뚜 ~ 둥 하 면서 . ... UP _ IS _ PASSWORD _ VALID 프로시저 가 만들 어 질 것 입니다 . 
 쿼리 가 준비 되 었 으니 이번 에 는 해당 함수 를 작성 해 보 도록 할께요 . . Content . aspx 의 코드 비하인드 페이지 에 다음 과 같 은 함수 를 추가 해 보 도록 해요 ~~ 
 코드 에서 는 사실 한 가지 를 빼 면 그다지 주목 할 만 한 부분 은 없 어 보 입니다 . 그 외 의 부분 들 은 다 들 이미 공부 가 된 부분 들 일 것 이 고 , 기존 의 SELECT 명령 의 처리 방법 과 사실 거의 동일 하 니까요 . .. 그렇 담 , 주목 할 만 한 그 한 부분 은 어디 일까요 ? 그것 은 Command 매개변수 중 seq 값 을 지정 하 는 부분 입니다 . .. 그 부분 이 왜 주목 할 만 한지 그 설명 을 들 어 보 실까요 ~ 
 Command 매개변수 중 seq 값 을 지정 하 는 부분 이 중요 한 이유 는 그 값 을 지정 하 기 위해서 , ViewState 에 저장 되 어 져 있 는 값 을 사용 하 고 있 기 때문 입니다 . 비밀 번호 일치 여부 를 검사 하 는 작업 은 언제나 Content . aspx 페이지 에서 [ EDIT ] 나 [ DELETE ] 버튼 이 클릭 될 경우 , 포스트 백 을 통해서 만 일어나 는 작업 입니다 . 이 부분 이 중요 합니다 . 포스트 백 작업 으로 일어난다는 것 말 입니다 . 
 사실 , seq 나 기타 값 들 은 그 값 을 어떤 별도 의 저 장소 에 담 아 두 지 않 는 한 , 페이지 요청 간 에 그 데이터 를 유지 할 방법 이 없 습니다 . 이미 아 시 는 이야기 이 겠 습니다 만 , 그것 이 바로 Http 의 단점 이 지요 . 해서 , 필요 에 따라서 는 Session 이나 Cache 를 사용 해야 하 구요 . .. 만일 , 동일 페이지 간 에서 의 데이터 유지 라면 좀 더 성능 에 좋 은 ViewState 를 사용 하 곤 하 지요 . 그러 한 이유 로 이전 강좌 에서 제 가 seq 나 thread 값 등 을 ViewState 에 넣 어 둔 것 입니다 . ^^. 그러면 , 지금 과 같 은 포스트 백 상황 에서 도 그 값 을 불러 와서 사용 할 수 있 을 테 니까요 ^^ 
 자자 . .. 어쨌든 비밀 번호 일치 여부 를 확인 하 기 위해서 , 위 의 코드 는 해당 프로시저 를 seq 인자 와 사용자 가 입력 한 pwd 값 을 가지 고 준비 한 다음 , 실행 하 고 있 습니다 . 실행 시 에 는 ExecuteScalar ( ) 메서 드 를 사용 하 고 있 는데요 . 재미있 는 것 은 만일 , 비밀 번호 가 일치 하 지 않 는 경우 에 는 , 반환 되 는 레코드 자체 가 없 을 것 이 기에 , ExecuteScalar ( ) 메 서드 의 결과 자체 는 null 이 될 것 이 라는 점 입니다 . 
 이제 , 비밀 번호 일치 여부 를 알아내 는 별도 함수 가 완성 되 었 으니 , 한번 테스트 를 해 보 도록 할까요 ? 
 웹 폼 에서 [ DELETE ] 이미지 버튼 을 더블 클릭 해서 , 해당 버튼 의 Click 이벤트 처리 기 코드 작성 구역 으로 가 보 도록 합시다 ~~~ 이 , 이벤트 는 사용 자 가 비밀 번호 를 입력 하 고 btnDelete 버튼 을 클릭 할 경우 에 서버 에서 반응 하 는 이벤트 처리 기 라는 것 은 이미 아 시 죠 ? 네 . . 그렇 습니다 . 그렇 다면 , 이 구역 에 다음 과 같 은 코드 를 작성 해 보 아요 ~~~ 
 private void btnDelete _ Click ( object sender , System . Web . UI . ImageClickEventArgs e ) 
 자 . 위 와 같이 작성 하 시 고 . .. 페이지 를 한번 실행 해 보 도록 하 겠 습니다 . 물론 , 페이지 의 실행 은 list . aspx 부터 해야 하 겠 죠 ? Content . aspx 는 List . aspx 에 종속 적 인 페이지 이 니까요 ^^ 
 다음 그림 은 비밀 번호 가 일치 할 경우 와 일치 하 지 않 을 경우 각각 의 그림 입니다 . 제대로 lblError 컨트롤 에 메시지 가 출력 되 는 것 을 확인 하 실 수 있 을 겁니다 . ^^ 
 [ 비밀 번호 일치 시 ] 
 [ 비밀 번호 불 일치 시 ] 
 제대로 잘 도 동작 하 고 있 네요 . .. 글 쵸 ? ??? 그렇 다면 , 이제 제대로 된 btnDelete _ Click 코드 를 작성 해 보 도록 해요 ~~~ 자 . 그럴라면 , 먼저 btnDelete _ Click 에서 어떤 처리 를 수행 해야 할지 를 한번 알 아 봐야 하 겠 죠 ? 그렇 습니다 . btnDelete _ Click 에서 는 비밀 번호 가 일치 할 경우 , 해당 레코드 를 삭제 하 는 작업 을 수행 해야 합니다 . ^^ 그러 합니다 . .. 
 그렇 다면 , 이 시점 에서 그렇게 특정 레코드 를 삭제 하 기 위한 저장 프로시저 도 필요 하 겠 네요 . 맞 쑴니다 . 마 꾸 요 ~~~ 바로 그것 이 필요 합니다 . 두둥 ----- 
 CREATE PROC UP _ DELETE _ BOARD 
 DELETE ThreadBoard 
 역시 삭제 를 위한 프로시저 는 간단 하 죠 ? ? ^^ 
 자 , 그렇 다면 이 프로시저 를 사용 하 는 Delete 로직 을 만들 어 보 도록 하 겠 습니다 . 근데 요 . 뭐 반드시 그래야 하 는 것 은 아닙니다만 . . 코드 의 가독성 을 높이 는 차원 에서 요 . .. 이 삭제 로직 은 btnDelete _ Click 이벤트 처리 기 내부 가 아닌 별도 의 함수 로 작성 해 보 려 합니다 . 다시 말씀 드리 지만 , 반드시 그래야 하 는 것 은 아닙니다 . 그냥 그렇게 하 는 게 경험 기반 적 으로 낫 기 때문 에 추천 드리 는 것 이 랍니다 . ^^ 
 해서 , 저 는 그러 한 별도 함수 를 다음 과 같이 작성 해 보 았 습니다 . 
 여기 까지 의 코드 구성 이 다 되 었 다면 , 그럼 한 번 실행 하 고 결과 를 보 도록 할까요 ? ?? 먼저 , 비밀 번호 를 틀리 게 입력 하 였을 경우 는 예상 한 대로 다음 과 같 은 결과 가 나타날 것 입니다 . 
 그리고 , 비밀 번호 가 올바르 게 입력 이 되 는 경우 는 글 이 삭제 되 고 , List . aspx 페이지 로 이동 하 게 될 것 이 구요 . 
 __ doPostback 메 서드 의 비밀 ! ! 
 이하 의 내용 은 최신 ASP . NET 버전 ( 아마도 2 . 0 이상 ) 에서 는 올바로 동작 하 지 않 을 수 있 습니다 . 
 자 . 그럼 어떻게 하 면 그러 한 중간 Confirm 을 삽입 할 수 있 는지 알아보 도록 하 겠 습니다 . 
 그런데 , 자바 스크립트 를 사용 할 경우 에 는 , 서버 컨트롤 의 서버 측 이벤트 핸들러 를 호출 하 기 가 난감 하 다는 문제 가 있 습니다 . 기존 에 우리 가 사용 한 ASP . NET 서버 컨트롤 들 의 서버 측 Click 이벤트 의 수행 은 ASP . NET 의 기반 상 에서 모든 내부 적 인 처리 들 을 ASP . NET 이 처리 해 주 었 기 에 , 우리 가 서버 측 이벤트 를 호출 하 기 위해 별다른 작업 을 할 필요 가 없이 , 단지 컨트롤 을 ASP . NET 서버 컨트롤 로 만 설정 해 주 면 되 었 습니다만 . ... 만일 , 서버 컨트롤 을 사용 하 지 않 는다면 , 서버 측 의 특정 이벤트 를 HTML 과 자바 스크립트 로 수행 할 방법 이 묘연 하 다는 것 이 지요 . .. 
 하지만 , 지금 은 그게 가능 해야 만 합니다 . 그게 가능 해야 만 원하 는 기능 을 구현 할 수 가 있 으니까요 . 즉 , 쉽 게 말 하 면 . .. 클라이언트 자바 스크립트 만 으로 , 서버 측 의 이벤트 핸들러 를 호출 할 수 가 있 다면 지금 의 문제 는 해결 될 수 가 있 다는 것 입니다 . .. 
 다시 한번 더 쉽 게 풀 면 , 자바 스크립트 를 사용 해서 서버 측 의 btnDelete _ Click 이벤트 처리 기 를 호출 할 수 만 있 다면 문제 가 풀릴 수 있 다는 것 이 지요 . ... 하지만 , 이게 쉽 다면 . .. 얼마나 좋 겠 습니까 ? ?? 결코 쉽 지 가 않 다는 것 이 문제 입니다 . .. 
 일단 , 기본 적 인 방법 으로 는 이것 은 사실 상 불 가능 에 가깝 습니다 . 약간 의 편법 을 사용 하 지 않 는다면 말 이 지요 . 그렇 다면 , 말 입니다 . .. 그 넘 의 편법 이 라는 것 은 무엇 일까 ? ?? 그게 포인트 일 것 같 다는 생각 이 들 지요 ? ?? 
 일단 , 하나 씩 짚 어 나가 봅시다 . ASP . NET 이 라 할지라도 어차피 결과 페이지 는 단순 한 HTML 페이지 라는 것 은 명확 합니다 . 그렇 다면 , 어떻게 ASP . NET 에서 는 버튼 이 클릭 될 경우 , 그 버튼 의 Click 이벤트 가 서버 에서 일어날 수 있 는 것 일까요 ? ?? 의외 로 간단 합니다 . 각각 의 버튼 은 HTML 결과 로 생성 될 경우 , 모두 submit 버튼 으로써 생성 이 됩니다 . 다시 말 해서 , 모든 ASP . NET 의 버튼 은 기본 적 으로 서브 밋 버튼 이 라는 것 이 지요 . 해서 , 일단 사용자 가 버튼 을 클릭 하 면 버튼 은 무조건 페이지 를 서버 로 서브 밋 합니다 . 그리고 , 서브 밋 과 함께 현재 어떤 버튼 이 클릭 되 어 져서 폼 이 서브 밋 되 는지 그 버튼 의 ID 정보 도 같이 서브 밋 을 하 지요 . .. 
 결론 적 으로 말 하 면 , 링크 버튼 이 폼 에 포함 된 경우 는 , ASP . NET 이 자동 으로 결과 HTML 에 특별 한 자바 스크립트 함수 를 하나 추가 합니다 . 잠시 뒤 에 보 겠 지만 , 그 함수 는 __ doPostback 라는 이름 을 가지 고 있 지요 . 그리고 , 이 함수 가 바로 폼 을 서브 밋 하 는 역할 을 합니다 . 그리고 , 이 함수 의 첫 번 째 인자 로 는 현재 이벤트 를 일으킨 컨트롤 의 ID 가 자리 하 게 되 지요 . 내부 적 으로 이렇게 동작 을 한다는 것 입니다 . 
 그 다음 , 링크 버튼 을 더블 클릭 해서 서버 측 Click 이벤트 를 다음 과 같이 작성 해 보 도록 해요 . 
 __ doPostBack 함수 내부 의 코드 들 을 이 자리 에서 조목조목 분석 하 기 는 좀 그렇 습니다만 . .. 어쨌든 이 함수 의 역할 은 링크 버튼 이 클릭 될 경우 , 폼 을 서버 로 서브 밋 하 고 , 서버 에서 해당 버튼 의 Click 이벤트 를 처리 하 게끔 하 는 역할 을 합니다 . 밑 쪽 의 소스 를 잘 살펴보 시 면 링크 버튼 이 바로 이 __ doPostBack 함수 를 호출 하 는 하이퍼링크 로 생성 되 어 져 있 는 것 을 볼 수 있 을 것 입니다 . 다음 과 같이 말 이 죠 ~~ 
 자 . 이제 여기 에다가 재미있 는 코드 를 하나 추가 해 보 도록 하 겠 습니다 . 이 코드 는 일종 의 fake 코드 라고 할 수 있 겠 는데요 . 서버 컨트롤 도 아닌 녀석 이 서버 컨트롤 을 클릭 한 것 처럼 속임수 를 부리 는 코드 가 되 겠 습니다 . . 즉 , 다음 과 같 은 단순 한 하이퍼링크 를 HTML 에 추가 하 고 , 이 하이퍼링크 가 __ doPostBack 함수 를 호출 하 도록 지정 하 면 그러 한 속임수 를 부릴 수 있 다는 것 입니다 . ( 단 , 첫 번 째 인자 로 대상 이 될 서버 컨트롤 의 ID 를 기입 해 주 어야 합니다 ) 
 이렇게 추가 했 다면 , 페이지 를 다시 실행 해 보 시 기 바랍니다 . 그리고 , 지금 추가 한 Fake 라는 하이퍼링크 를 클릭 해 보 도록 하 세요 . 재미있 는 일 이 벌어지 고 있 지요 ? ?????? 그렇 습니다 . 마치 LinkButton 이 클릭 된 것 처럼 동일 한 일 을 수행 하 고 있 는 것 입니다 . 
 자 . 그렇 다면 , 지금 의 경우 우리 는 어떻게 해야 할까요 ? btnDelete 버튼 을 링크 버튼 으로 바꾸 는 것 이 어쩌면 가장 바람직 할 수 도 있 습니다만 . . 그렇게 하 면 , 코드 를 바꿀 것 이 많 아 지 니까요 . .. 그 버튼 은 그냥 그대로 두 구요 . .. 추가 적 으로 링크 버튼 을 하나 추가 하 고 , Fake 용 하이퍼링크 를 하나 추가 하 도록 하 겠 습니다 . . 즉 , 기존 코드 에서 수정 하 거나 , 삭제 함 없이 새로운 코드 를 다음 과 같이 추가 하 겠 다는 것 이 지요 ( 추가 된 코드 는 파란색 으로 표기 하 였 습니다 ) 
 그러 니깐 , 간단 하 게 말 하 면 , 다음 과 같 은 별도 의 스크립트 함수 를 하나 만들 구요 . 
 그리고 , 좀 전 에 작성 한 Fake 용 하이퍼링크 를 다음 과 같이 변경 하 는 것 이 지요 ^^ 
 핫핫핫 ~~~~ 나름 대로 는 간단 하 지 않 습니까 ? ??? 
 이제 , 페이지 를 다시금 실행 하 고 , 글 을 삭제 해 보 도록 하 세요 . 그러면 다음 그림 과 같이 , 정말로 삭제 할 것 인지 를 물 어 보 는 메세지 창 이 나타날 것 이 고 , [ 확인 ] 버튼 을 누를 경우 에 만 삭제 처리 가 진행 될 것 입니다 . 물론 , 비밀 번호 가 일치 할 경우 에 한해서 만 말 이 지요 ^^ 
 재미있 지 않 습니까 ? ?? 기초 가 튼튼 한 개발 자 일수록 이러 한 트릭 을 쉽 게 이해 할 수 있 을 것 이 며 , 나름 대로 응용 하 여 수많 은 기타 기능 들 을 구현 할 수 가 있 을 것 입니다 . 해서 , 기초 가 매우 중요 한 것 이 지요 ^^ 
 이번 강좌 에서 는 게시판 에서 의 삭제 기능 을 구현 해 보 았 구요 . 적절 한 수준 으로 doPostBack 기능 의 비밀 에 대해서 도 파헤쳐 보 았 습니다 . 이미 중급 의 실력 을 가지 고 있 는 분 들 이 라 할지라도 이러 한 내부 적 인 이야기 에 대해서 모르 시 는 분 들 이 많 을 것 이 라 생각 하 기 에 , 이번 강좌 가 더욱 더 유용 한 강좌 가 아니 었 나 하 는 생각 을 합니다 . .. 
 이번 강좌 는 아쉽 지만 , 이 즈음 에서 정리 가 될 것 같 습니다요 . ( 엇 ? 글 의 수정 은 왜 안 하 는 것 이 야 ~~?? 라고 독자 들 야유 를 부릴 듯 하 다 ) 
 다음 강좌 는 글 의 수정 을 주제 로 하 여 여러분 을 찾 아 뵐 것 인데요 ( -_-+++)..... 그렇 습니다 . 은근슬쩍 . . 이번 강좌 에서 해야 할 내용 은 다음 으로 떠 넘기 고 있 는 것 이 지요 . .. 죄송 합니다 . 그리고 다시 한 번 , 강좌 가 늦 은 점 에 대해서 고개 숙여 사과드립니다 . 현재 번역 작업 이 너무 고되 다 보 니 , 심 적 인 여유 가 아무래도 부족 하 여 . .. 강좌 를 작성 하 는 것 이 더딘 편 이 거든요 . .. 부디 여러분 의 바다 와 같 은 넓 은 이해 가 있 으시 기 를 간절히 바라 면서 . ... 
 가급적 빨리 다음 강좌 로 여러분 을 찾 아 뵐 것 은 약속 드립니다 . 
 ( 이때 , 독자 들 은 못 미더운 표정 을 짓 지만 , 한번 더 믿 어 볼 것 처럼 보이 는 야릇 한 미소 를 띄운다 ) 
 OK . . 컷 . 여기 까지 ~~~