주인장의 프로그래밍 개발 공부방

[Chapter 1 변수] 1. 변수란 무엇인가? 본문

프로그래밍 기본 지식/Chapter 1 변수

[Chapter 1 변수] 1. 변수란 무엇인가?

거신 2019. 5. 9. 21:58

프로그래밍을 배우는데 있어서 첫 시간에 배운 내용은 변수였다.

프로그래밍에서 말하는 변수란 무엇일까?

 

목표 : 일반적인 의미가 아닌 프로그래밍에서 말하는 변수의 뜻을 정확하게 말할 수 있을 것.

 

1. 변수가 뭐임?

 

일반적으로 변수(Variable)이라고 한다면

수학적인 의미로 변동이 심한, 가변적인, 변할 수 있는 숫자로 말할 수 있을 것이다.

 

사전적인 의미로는 절대 틀린 말이 아니지만 우리가 배우려는 프로그래밍에서는

조금은 다른 뜻으로 이해, 설명할 수 있어야

나중에 누군가에게 설명을 했을 때,

듣는 사람이 '아 저 사람, 프로그래밍 좀 공부했구나'라는 소리를 들을 수 있을 것이다.

 

변수의 근본적인 뜻은 크게 다르지 않지만

프로그래밍에서 말하고 싶은 변수(Variable)의 뜻은

"하나의 값을 저장할 수 있는 저장공간"

이라고 할 수 있다.

 

2. 아니 근데 왜 다른 단어가 아니고 변수라는 단어를 쓰는거임?

 

기본적으로 변수(Variable)가 담고 있는

원론적인 의미인 변할 수 있는, 가변적이라는 의미를 내포하고 있으면서

프로그래밍에서는 저장이라는 단어를 사용하고 있다.

이는 너무나도 당연한 소리지만 우리는 컴퓨터를 이용해 프로그래밍이란 것을 하기 때문에

메모리에 저장한다는 개념이 등장하게 되는 것이다.

 

좀 더 자세하게 파고들어 보자.

 

가령 예를 들어 설명을 해보자면

우리가 메모장, 한글, 워드를 실행해서 임의의 문서를 작성했다고 가정하자.

우리가 문서를 다 작성하면 그 문서가 일회용이 아니라면 저장이라는 것을 할 것이다.

그리고 오타나 다른 내용을 추가, 또는 수정을 하기 위해, 아니면 완전히 새로운 내용으로 작성하기 위해

앞서 작성했던 문서를 열어서 수정을 하고 새로 저장을 할 것이다.

일반적으로 새 파일로 저장하지 않는다면 원래의 파일에 그대로 저장해서 덮어쓰기를 할텐데

여기서 우리가 작성했던 문서파일을 변수(Variable)라고 가정해보자.

 

문서파일은 하나의 문서를 저장할 수 있는 저장공간이 된다.

변수(Variable)도 마찬가지이다.

단위는 하나의 값을 저장할 수 있는 저장공간이 되지만

안에 들어있는 값은 언제든지 사용자가 바꿀 수 있다는 말이 된다.

 

물론 단 하나의 값을 저장해서 변경할 수 없도록 하는 방법도 있지만

기본적으로 원한다면 언제든지 값을 바꿀 수 있기 때문에

변수(Variable)라는 단어를 사용하는 것이다.

 

3. 근데 변수는 하나만 저장할 수 있는거임?

 

자 이제 프로그래밍에서 변수(Variable)가 무슨 뜻인지도 알았고

변수(Variable)라는 단어를 쓰는지도 알겠는데

궁금한 게 하나가 더 있다.

변수(Variable)의 뜻은 하나의 값을 저장할 수 있는 저장공간이라고 했는데

단 하나의 값만 저장할 수 있는 건가?라는 의문이 들 수도 있다.

정답부터 말하자면 그렇다이다.

오직 하나의 값만 저장할 수 있다라고 대답할 수 있다.

하나의 값은 숫자가 될 수도 있고, 문자가 될 수도 있고,

문자를 나열한 문자열도 될 수가 있고, 이 후에 나올 논리 값도 될 수가 있다.

단순히 하나의 값이라고 해서 1, 2, a 등과 같은 한 글자를 말하는 것이 아닌

우리가 하나의 데이터라고 부를 수 있는 값들을 의미하는 것이 되겠다.

 

만약 변수의 크기가 엄청 크다면 책 한 권도 하나의 값이 될 수가 있을 것이다.

예를 들자면 그렇다는 것이다.

 

4. 마무리

 

마지막으로 다시 정리를 해보자.

변수(Variable)는 수학적인 의미로는 가변적인 숫자, 변할 수 있는 숫자라고 표현하지만

프로그래밍에서는 그 의미를 포함하면서 저장이라는 개념을 더해

하나의 값을 저장할 수 있는 저장공간

이라는 정의를 가지고 있다.

 

이제는 우리가 프로그래밍에서 말하는 변수(Variable)의 정의를 

알아봤기 때문에

어딘가에서 누군가가 변수(Variable)가 뭐냐고 물었을 때

변하는 숫자, 가변적인 숫자가 아닌

하나의 값을 저장할 수 있는 저장공간

이라고 정확하게 말할 수 있는 프로그래머가 되길 바란다.

Comments