Limetime's TimeLine
article thumbnail
Published 2018. 3. 15. 00:39
(2) 비주얼 베이직이란? Visual Basic
반응형

(2) 비주얼 베이직이란?

<주얼 베이직>

- 마이크로소프트(MS)사에서 개발한

소프트웨어로 MS 윈도우용 응용 프로그램을

개발할 수 있는 프로그래밍 언어이다.

비주얼(Visual) 언어는 화면 디자인을 위해

많은 줄의 코드를 작성하지 않고 미리

만들어진 도구(컨트롤)를 이용하여 

그림 그리듯이 디자인할 수 있는 언어를 말한다.


=> DOS 시절 베이직이란 언어가 있었는데..

이 때는 그래픽환경이 아니고 마우스도

무용지물이었기 때문에 글로만 개발이

가능했다. 그래픽을 지원하는 Windwos가

개발되고 출시되면서

DOS의 몰락과 함께 베이직이 몰락하는 것을

아쉽게 생각하여 만든 것이 비주얼 베이직이다.


<언어의 특징>

ⓐ 윈도우 운영체제에서만 실행되는 프로그램

개발 언어이다.

ⓑ 문법과 규칙이 매우 간단하다.

ⓒ객체 지향 언어이다.

ⓓ 쉽고 빠르게 화면을 디자인할 수 있다.

ⓔ 이벤트 중심 프로그래밍을 지향한다.

ⓕ 통합 개발 환경을 제공한다.


=> 누구나 쉽게 배울 수 있다.


<프로그래밍>

기존 프로그래밍 : 프로그램 중심 처리

- 작동 순서가 완전히 프로그램에 의해 지시됨

(거의 모든 지시가 컴퓨터에 의해 진행됨)

ex) DOS...


객체 지향, 이벤트 중심의 프로그래밍

- 프로그램 작동 제어가 사용자에게 주어짐.

* 사용할 행동을 선택, 시작과 실행 방식을 선택,

전체적인 활동의 흐름을 지시.

* 사용자에게 제공하는 인터페이스 옵션을

중심으로 설계


- GUI 환경에서 작동하는 프로그램을 생성하기 위해

아이콘, 폼, 도표와 같은 그래픽 객체를 사용.

ex) 바탕화면


VB, VC++ 등...


<객체 지향 프로그래밍 개요>

● 모든 데이터를 객체(Object)라는

단위로서 모든 처리를 기술하는

프로그래밍 방법.


● 프로그래밍이 단순화되고, 

생산성과 신뢰성이 높은 시스템을 구축.

(백지장도 맞들면 낫다 => 생산성↑(분할 작업))

※ 생산성 : 얼마나 빠른 시간 내에 질 좋은 제품을

개발할 수 있는냐의 정도

위의 그림과 같이 기존 프로그래밍 방식은

A라는 사람 혼자 개발하는 것이라면

객체 지향 프로그래밍은 여러 사람이

업무를 나눠서 할 수 있다는 장점이 있다.

물론, 결과 값은 똑같고 빠른 시간 내에

개발할 수 있다.

신뢰성도 높다.

(신뢰성 = 에러와 버그를 쉽게 캐치ㆍ고칠 수 있는 정도)


※ 에러와 버그

에러(Error) : 실행이 안된다.

버그(Bug) : 실행은 되지만 결과가 이상함.


● 객체 지향 프로그래밍의 필요성

ⓐ 컴퓨터의 발전에 따라 프로그램의 규모가 커지고 복잡

ⓑ 윈도우 운영체제에서는 사용자 인터페이스가 다양해짐

ⓒ 복잡하고 방대한 프로그램을 특정 기능별로 나누어서

즉, 객체로 만든 다음 이들을 결합하여 목적하는 프로그램을

만들어 내는 방법이 요구됨


<윈도우 응용 프로그램 환경>

TUI (Textual User Interface)

=> 말 그대로 텍스트로만 이루어진 환경.

위 그림과 같이 윈도우에서 TUI가

지원되고 있다. 

CMD가 대표적이다.


GUI (Graphic User Interface)

=> 마우스가 지원되며

사용자가 선택하여 작업할 수 있는

시각적으로 편리한 환경.

윈도우는 GUI환경을

지원한다.

바탕화면도 GUI이다.

클릭하는 거의 모든 것이

모두 GUI이다.


<VB 프로그램의 구성>

GUI 기능이 강조되는

윈도우 환경에서 사용될

응용 프로그램의 개발에 적합한

객체 기반, 이벤트 중심의 언어.


<프로그램 개발 과정>

① 요구 사항 분석

=> 프로그램 목적, 사용자, I/O 데이터 처리 요구 사항,

구 현상의 문제 분석, 타당성 조사 등을 수행하고

전 과정에 대한 문서화도 진행


※ 구 현상의 문제 분석

=> 이전 소프트웨어를 참조 및 문제 분석

(좀 더 쉽게 파악하고 개발 가능)


② 프로그램 설계

=> 프로그램의 논리적 실행 순서/내용을 구체화

(계층 차트, 순서도, 유사 코드 등으로 표현)


③ 프로그램 개발

=> 적절한 고급 언어를 선택해서

구문에 맞는 프로그램 작성


④ 프로그램 테스트

=> 프로그램 오류의 발견 및 수정, 

그리고 실제 데이터/사용자에 의한 실험 실행


⑤ 프로그램 문서화 유지보수

=> H/W와 S/W 요구 사항 및 입ㆍ출력과 프로그램

파일 관리 등 전체적인 사용 설명서 작성,

프로그램의 효과적인 사용을 위한 유지 및 보수


* 프로그램 설계만 잘 하면 

개발단계는 쉬움

But, 테스트 구간은 에러를 잡고

버그를 잡으면서 멘탈이 나가기 쉬워

프로젝트 포기가 많이 일어나는 구간.


<일반적인 프로그램 개발 과정>




반응형
profile

Limetime's TimeLine

@Limetime

포스팅이 좋았다면 "공감❤️" 또는 "구독👍🏻" 해주세요!