Visual Basic 2010 1. Visual Basic 소개 IT응용시스템공학과 김형진교수
컴퓨터 시스템 컴퓨터 시스템 컴퓨터 하드웨어 구성 컴퓨터 시스템은 하드웨어와 소프트웨어로 이루어진다. © 우균, 창병모 120 GB 하드 디스크 드라이브 64배속 DVD/CD-RW 콤보 드라이브 512MB RAM 키보드 17인치 LCD 모니터 해상도 1280×1024 2.8GHz 인텔 펜티엄 4프로세서 주 메모리 CPU
컴퓨터 하드웨어 구성 요소 중앙처리장치(Central Processing Unit; CPU) 주 메모리(Main Memory) © 우균, 창병모 컴퓨터 하드웨어 구성 요소 중앙처리장치(Central Processing Unit; CPU) 프로그램의 명령어들을 수행하는 컴퓨터의 두뇌 주 메모리(Main Memory) 프로그램과 데이터를 저장하는 휘발성(volatile) 기억장치 512 메가바이트(MB) RAM 보조 메모리 장치(Secondary Memory) 소프트웨어를 비교적 영구적으로 저장하는 비휘발성 기억장치 120 기가바이트(GB) 하드 디스크 드라이브 64배속 DVD/CD-RW 콤보(combo) 드라이브 입출력 장치(Input/Output Device) 인간과 컴퓨터의 상호 작용을 도와주는 장치 키보드, 마우스, 모니터
© 우균, 창병모 중앙처리장치(CPU)
프로그램 실행을 위한 구성 요소간 정보이동 프로그램 적재(loading) 프로그램 실행(execution) 입력(input) © 우균, 창병모 프로그램 실행을 위한 구성 요소간 정보이동 프로그램 적재(loading) 하드 디스크에 저장된 프로그램을 주 메모리에 읽어 들인다 프로그램 실행(execution) CPU는 주 메모리로부터 프로그램의 명령어들을 하나씩 읽어 들여서 그 명령어를 한 번에 하나씩 수행한다. 입력(input) 명령어가 사용하는 데이터도 역시 주 메모리에 저장되며 보조 메모리 혹은 키보드 같은 입력 장치를 통해 입력된다. 출력(output) 프로그램은 실행되는 동안 필요에 따라 모니터와 같은 출력 장치에 정보를 출력한다 프로그램 적재(loading) 하드 디스크에 저장된 프로그램을 주 메모리에 읽어 들인다 프로그램 실행(execution) CPU는 주 메모리로부터 프로그램의 명령어들을 하나씩 읽어 들여서 그 명령어를 한 번에 하나씩 수행한다. 입력(input) 명령어가 사용하는 데이터도 역시 주 메모리에 저장되며 보조 메모리 혹은 키보드 같은 입력 장치를 통해 입력된다. 출력(output) 프로그램은 실행되는 동안 필요에 따라 모니터와 같은 출력 장치에 정보를 출력한다
메모리 위치 및 값 저장 1278 1279 각 메모리 셀은 1 바이트를 저장한다. 10011010 1280 1281 1282 © 우균, 창병모 메모리 위치 및 값 저장 1278 1279 1280 1281 1282 1283 1284 1285 1286 큰 값은 연속된 메모리 위치들에 저장된다. 10011010 각 메모리 셀은 1 바이트를 저장한다.
이진 저장 단위 단위 기호 2n 바이트 바이트 수 킬로바이트 KB 210 1,024 메가바이트 MB 220 1,048,576 © 우균, 창병모 이진 저장 단위 단위 기호 2n 바이트 바이트 수 킬로바이트 KB 210 1,024 메가바이트 MB 220 1,048,576 기가바이트 GB 230 1,073,741,824 테라바이트 TB 240 1,099,511,627,776
소프트웨어 시스템 소프트웨어(system software) 응용 소프트웨어(application software) © 우균, 창병모 소프트웨어 시스템 소프트웨어(system software) 컴퓨터 시스템 효율적인 운영과 관리를 위한 소프트웨어 운영 체제, 컴파일러, 디버거 응용 소프트웨어(application software) 시스템 소프트웨어가 아닌 거의 모든 소프트웨어를 지칭하는 포괄적인 용어 문서 작성 S/W, 데이터 관리 S/W, 스프레드시트,그래픽 S/W, 웹 관련 S/W, 통계 S/W, 게임 S/W 등
프로그래밍 언어 프로그램을 작성하기 위한 언어 기계어 1001 0001 0001 위치의 값을 누산기에 저장하라. 어셈블리어 © 우균, 창병모 프로그래밍 언어 프로그램을 작성하기 위한 언어 사람이 컴퓨터에게 시키고 싶은 내용을 표현하기 위한 표기법 그 발전 단계에 따라 기계어, 어셈블리어, 고급언어로 분류 기계어 이진수 코드로 CPU 종류마다 고유의 기계어 1001 0001 0001 위치의 값을 누산기에 저장하라. 1100 0010 누산기에 0010 위치의 값을 더하라 1010 0011 누산기의 값을 0011위치에 저장하라. 어셈블리어 기계어의 이진수 코드를 기호화 코드(mnemonics)로 대치한 것 LOAD Y Y의 값을 누산기에 저장한다. ADD Z 누산기에 Z의 값을 더하라 STORE X 누산기의 값을 X에 저장하라.
프로그래밍 언어 고급 언어 주요 고급 언어 영어와 비슷한 구문으로 표현되며, 읽고 쓰기가 보다 쉽다 © 우균, 창병모 프로그래밍 언어 고급 언어 영어와 비슷한 구문으로 표현되며, 읽고 쓰기가 보다 쉽다 프로그래머가 기계의 세부사항을 알 필요가 없게 해준다 X = Y + Z 주요 고급 언어 FORTRAN, COBOL, BASIC, C, C++, Java 등
주요 고급 언어 FORTRAN(FORmula TRANslation) © 우균, 창병모 주요 고급 언어 FORTRAN(FORmula TRANslation) 1957년에 IBM사가 개발한 최초의 고급 언어 과학계산용 언어로 프로그램을 단순화된 영어 단어와 수학 공식으로 표현 COBOL(COmmon Business Oriented Language) 1960년초에 개발된 사무용 프로그램을 개발을 위한 언어 COBOL로 작성된 많은 급여, 회계 및 기타 업무용 S/W는 지금도 많이 사용됨 BASIC(Beginner's All-purpose Symbolic Instruction Code) 초보자가 배우기 쉬운 프로그래밍 언어로 개발 원래 학생들에게 프로그래밍 언어를 가르치기 위해 개발 컴퓨터 업계에 소개되면서 비중 있는 프로그래밍 언어가 됨.
주요 고급 언어 C 언어 C++ Java AT&T 벨 연구소에서 개발한 시스템 프로그래밍 용 언어 © 우균, 창병모 주요 고급 언어 C 언어 AT&T 벨 연구소에서 개발한 시스템 프로그래밍 용 언어 1970년대 UNIX라는 운영 체제 개발을 위하여 개발된 언어 고급 언어이면서도 저급 언어(하드웨어에 가까운 언어)의 특성을 가지고 있음. C++ AT&T 벨 연구소에 의해 개발 C 언어의 기능을 확장하여 만든 객체 지향 프로그래밍 언어 Java 1990년대에 선 마이크로시스템 사에서 개발 인터넷 환경을 위해 개발된 객체지향 언어로 이동 코드실행 지원 Java 프로그램은 한번 작성되면 어느 플랫폼에서나 실행 가능
© 우균, 창병모 소프트웨어 개발과정 요구 요구사항 분석 설계 구현 테스트 유지보수
소프트웨어 개발과정 요구사항 분석(requirement analysis) 설계(design) 구현(implementation) © 우균, 창병모 소프트웨어 개발과정 요구사항 분석(requirement analysis) 사용자의 요구사항 즉 소프트웨어가 해야 할 일을 파악하는 단계 사용자는 요구사항을 명세서(specification) 형태로 제시한다. 설계(design) 요구 사항을 구체화하는 단계로 소프트웨어의 구조를 결정 파악된 문제를 해결하는 알고리즘(algorithm)을 흐름도(flow chart)나 의사코드(pseudo code) 형태로 표현 구현(implementation) 설계된 내용을 구체적인 프로그래밍 언어로 작성하는 단계 프로그램을 작성하는 것을 코딩(coding)한다고 한다.
소프트웨어 개발과정 테스트(testing) 유지보수(maintenance) 프로그램의 오류를 찾아내고 이를 수정하는 단계 © 우균, 창병모 소프트웨어 개발과정 테스트(testing) 프로그램의 오류를 찾아내고 이를 수정하는 단계 프로그램 오류는 컴파일시간 오류, 실행시간 오류, 논리 오류 등이 있음 유지보수(maintenance) 개발된 소프트웨어를 실제 상황에서 운영하면서 상황 및 변화된 요구에 따라 소프트웨어를 적절하게 수정하는 단계
프로그램 작성 및 실행 오류 프로그램 개발 과정을 돕기 위한 소프트웨어 도구 프로그램 작성 및 실행 과정 © 우균, 창병모 프로그램 작성 및 실행 프로그램 개발 과정을 돕기 위한 소프트웨어 도구 편집기, 컴파일러, 디버거, 인터프리터 등 이들을 통합하여 제공하는 개발환경을 통합개발환경(IDE) 프로그램 작성 및 실행 과정 오류 프로그램 편집 및 저장 프로그램 컴파일 프로그램 실행 및 결과 평가
오류의 종류 컴파일시간 오류(compile-time error) 논리 오류(logical error) © 우균, 창병모 오류의 종류 컴파일시간 오류(compile-time error) 컴파일 과정에서 생긴 오류 컴파일러는 프로그램의 구문, 데이터, 의미 없는 문장 등을 검사 이런 경우 편집기로 돌아가서 오류를 수정한 후 다시 컴파일 해야 함 논리 오류(logical error) 성공적인 컴파일 후 프로그램을 실행하면서 잘못된 결과를 내는 경우 원하는 결과를 내도록 프로그램 수정 후 다시 컴파일해서 실행해야 함 실행시간 오류(run-time error) 프로그램실행 중에 예상치 못한 이유로 비정상적으로 종료 예: 어떤 값을 0으로 나누려고 하면 프로그램은 실행을 멈추고 종료 좋은 프로그램은 실행시간 오류가 가능한 한 발생하지 않아야 함
© 우균, 창병모 디버깅 디버깅(debugging) 프로그램의 결함을 찾고 수정하는 과정을 디버깅이라고 함
컴파일러 및 인터프리터 인터프리터 컴파일러 입력 출력 인터프리터 목적 프로그램 컴파일러 © 우균, 창병모 컴파일러 및 인터프리터 인터프리터 별개의 컴파일 단계 없이 한 번에 한 문장씩 번역(혹은 해석)하여 실행한다. 컴파일러 고급 언어로 작성된 코드를 동등한 의미의 저급 언어로 된 코드로 번역하는 소프트웨어이다 소스 프로그램 입력 출력 인터프리터 목적 프로그램 소스 프로그램 컴파일러
학습목표 MS 비주얼 베이직 6.0과 2010의 차이 비주얼 베이직 2010 express 설치 비주얼 베이직 2010의 통합개발환경 프로그램의 시작과 실행 Visual Basic 2010
MS 비주얼 베이직 6.0과 2010의 차이 VB 6.0 VB 2010 1998년 2002년 부터 ~~ 인터프리터 기반 언어 데스크탑 윈도우 응용 VB 2010 2002년 부터 ~~ 컴파일 언어 웹 응용 개발 Visual Basic 2010
비주얼 베이직의 특징 프로그램을 폼과 모듈로 구성하여 처리 대화식으로 프로그램을 개발 이벤트 중심 작동 모듈 폼은 사용자와의 인터페이스를 작성하는 부분 모듈은 실제 자료가 처리되는 코드 부분 대화식으로 프로그램을 개발 코드를 작성하고 컴파일하고 실행하여 수행 여부를 바로 확인 가능 오류를 응용 프로그램에서 컴파일시 수정 가능 이벤트 중심 작동 모듈 어떤 사건이 발생하면 그에 대한 작업이 수행되도록 하는 프로그래밍 방법 Visual Basic 2010
자주 사용하는 용어 객체 속성 메소드 이벤트 다른 것과 구별할 수 있는 모든 것 폼 위에 버튼을 놓으면 폼과 버튼이 구별될 수 있으므로 객체라 함 모든 객체는 메소드, 속성, 이벤트를 가짐 속성 객체가 가지고 있는 성질, 크기, 형태 등을 말함 메소드 객체가 고유하게 가지고 있는 동작 이벤트 객체가 외부의 자극에 반응을 하는 것 Visual Basic 2010
비주얼 베이직 2010 express 설치(1/10) VB2010 Express 다운로드 http://www.microsoft.com/visualstudio/kor/downloads#d-2010-express 실행 창 Visual Basic 2010
비주얼 베이직 2010 express 설치(2/10) 보안 경고 창 설치 시작 창 Visual Basic 2010
비주얼 베이직 2010 express 설치(3/10) 설치 옵션 창 사용 약관 동의 창 Visual Basic 2010
비주얼 베이직 2010 express 설치(4/10) 대상 폴더 선택 다운로드 및 설치 진행률 창 Visual Basic 2010
비주얼 베이직 2010 express 설치(5/10) 설치 완료 창 시작 버튼 클릭하여 설치된 프로그램 확인 Visual Basic 2010
비주얼 베이직 2010 express 설치(6/10) 프로그램 실행 후 도움말 메뉴 등록 키 받기 Visual Basic 2010
비주얼 베이직 2010 express 설치(7/10) 프로필 센터 로그인 창 동의함 처리 Visual Basic 2010
비주얼 베이직 2010 express 설치(8/10) 등록하면 제품 키 받음 등록 키 받기 창 Visual Basic 2010
비주얼 베이직 2010 express 설치(9/10) 제품 등록 후 도움말 창 등록된 화면 Visual Basic 2010
비주얼 베이직 2010 express 설치(10/10) 프로그램 실행 첫 화면 Visual Basic 2010
1.3 비주얼 베이직 2010의 통합개발환경 Visual Basic 2010
VB 2010 통합개발환경 프로그램 디자인, 코드 작성, 프로젝트 관리, 컴파일 등을 쉽게 작성할 수 있도록 지원 Visual Basic 2010
통합개발환경의 구성요소 구성요소 내용 도구상자(Toolbox) 폼에 배치하여 사용할 컨트롤 모음 폼(Form Design) 컨트롤을 배치하여 사용자의 인터페이스를 디자인하기 위해 사용 코드(Code) 폼 화면에 폼이나 컨트롤에 삽입할 코드를 편집하기 위해 사용 솔루션 탐색기(Solution Explorer) 프로젝트의 상황을 트리 형태로 모든 항목을 보여주기 위해 사용 속성(Properties) 폼과 컨트롤의 속성을 설정하기 위해 사용 표 1.1 통합개발환경의 구성요소 구성요소 내용 도구상자 폼에 배치하여 사용할 컨트롤 모음 폼 컨트롤을 배치하여 사용자의 인터페이스를 디자인하기 위해 사용 코드 폼 화면에 폼이나 컨트롤에 삽입할 코드를 편집하기 위해 사용 프로젝트 프로젝트의 상황을 트리 형태로 모든 항목을 보여주기 위해 사용 속성 폼과 컨트롤의 속성을 설정하기 위해 사용 폼 레이아웃 프로그램 실행화면(폼 화면)을 모니터 어느 위치에 배치할 것인가를 설정하기 위해 사용 Visual Basic 2010
도구상자 포인터 버튼( Button) 레이블(Label) 텍스트박스(TextBox) 선택한 컨트롤을 이동하거나 크기 조절 클릭하면 이벤트를 발생시키도록 코드 작성하여 사용 레이블(Label) 문자열을 화면에 표시할 때 사용 텍스트박스(TextBox) 텍스트를 쓰고 편집할 때 사용 Visual Basic 2010
도구상자 콤보박스(ComboBox) 리스트박스(ListBox) 체크 박스(CheckBox) 라디오 버튼(RadioButton) 텍스트박스와 리스트박스를 하나로 합한 컨트롤로 늘어진 목록에서 항목을 선택할 때 사용 리스트박스(ListBox) 목록이 제공되면 그 항목 중에서 사용자가 선택할 때 사용 체크 박스(CheckBox) 여러 항목 중에서 한 개 이상의 항목을 선택할 때 사용 라디오 버튼(RadioButton) 여러 항목 중에서 한 개의 항목만 선택할 떄 사용 Visual Basic 2010
도구상자 픽쳐박스(PictureBox) 그룹박스(GroupBox) 그림 파일을 사용자 인터페이스 창인 폼에 표시 컨트롤을 모아서 그룹으로 묶을 때 사용 Visual Basic 2010
폼 창 폼 창은 컨트롤을 배치하여 사용자 인터페이스를 디자인할 수 있는 시각적인 화면이다. Visual Basic 2010
코드 창 폼에 배치된 컨트롤이나 폼에 삽입할 코드를 입력하는 창 Visual Basic 2010
솔루션 탐색기 창 실행 파일을 관리하는 창으로 하나 이상의 폼을 가질 수 있고 트리 구조 형태로 보여주며 폼과 코드 창을 손쉽게 다룰 수 있음 Visual Basic 2010
속성 창 폼과 폼에 배치된 컨트롤의 속성과 속성의 값을 설정할 수 있는 창 Visual Basic 2010
프로그램의 시작과 실행 Visual Basic 2010
윈도우 폼 어플리케이션 시작 페이지 새 프로젝트… 파일-새로 만들기- 프로젝트 Visual Basic 2010
윈도우 폼 어플리케이션 Windows Forms 응용 프로그램 선택 Name 에 프로젝트 이름 입력(Hello) Visual Basic 2010
윈도우 폼 어플리케이션 Hello 프로젝트 통합개발환경 Visual Basic 2010
폼에 컨트롤 배치와 실행 폼에 컨트롤을 배치하고 버튼이 클릭되었을 때 글자가 바뀌게 해 보자. 실행 초기 화면 버튼 클릭 후 화면 폼에 컨트롤을 배치하고 버튼이 클릭되었을 때 글자가 바뀌게 해 보자. Visual Basic 2010
응용 프로그램 개발 단계 프로그램 구조 설계하기 인터페이스 만들기 속성 설정하기 코드 작성하기 어떤 기능을 가진 프로그램을 만들지를 생각 인터페이스 만들기 구상한 대로 폼에 컨트롤을 배치 속성 설정하기 폼에 보이는 컨트롤의 필요한 속성을 지정 코드 작성하기 원하는 기능이 작동하도록 코드 입력 Visual Basic 2010
실습 – 폼 디자인 버튼을 클릭하면 문자열이 보이게 하는 프로그램 작성 폼에 두 개의 컨트롤을 배치 도구상자에 있는 ‘Label’과 ‘Button’을 마우스로 더블 클릭하여 위의 그림처럼 배치해 보자. Visual Basic 2010
윈도우 폼 실습 - 속성 설정 컨트롤 이름 속성 설정 Form1 Text 처음 Label1 btnName 안녕 Button1 btnPush 눌러주세요 Visual Basic 2010
실습 - 코드 작성 ‘눌러주세요’ 버튼 더블 클릭 후 소스 코드 내용 입력 소스 코드 lblName.Text = "안녕하세요" Visual Basic 2010
프로젝트 저장 도구모음에 있는 “프로젝트 저장” 버튼 클릭 프로젝트 파일 이름은 “hello.vbpproj”로 생성 “Name”에 “hello”를 입력하면 “hello” 폴더가 생성되고 관련 파일이 생성 프로젝트 파일 이름은 “hello.vbpproj”로 생성 프로젝트를 다시 불러올 때 프로젝트 파일이름을 클릭하면 통합개발환경이 실행 Visual Basic 2010
콘솔 어플리케이션 콘솔 응용 프로그램 선택 Name에 프로젝트 이름 입력(HelloConsole) Visual Basic 2010
콘솔 어플리케이션 소스 코드 결과 확인 단축키(Ctrl+F5) 소스 코드 결과 확인 단축키(Ctrl+F5) Console.WriteLine("Welcome VB") 결과 확인 단축키(Ctrl+F5) 소스 코드 Console.WriteLine("3 + 5는") Console.Write(3 + 5) Console.WriteLine("입니다") 결과 확인 단축키(Ctrl+F5) Visual Basic 2010