지난 시간에 알고리즘과 자료구조가 얼마나 중요한지를 알게되었습니다.
이번 시간에는 프로그래밍에 대한 진리를 잠깐 얘기하려 합니다.
이 진리는 JAVA, Python, C++ 등 프로그램 언어에도 상관없이 적용되며
심지어 첨단 기술에도 동일하게 적용되는 것입니다.
이것을 확실히 마음속에 품고 있으면, 어떤 어려운 코드를 마주하게 되더라도 헤매지 않게 됩니다.
이 진리를 알기 위해서 우리는 변수와 상수를 먼저 확실히 알아야 됩니다.
변수는 변하는 값입니다. 변수명은 애칭입니다.
애칭은 일반적으로 데이터 공간 안에 담긴 값과 관련된 것으로 짓습니다.
예를들어, 과일의 이름을 저장하는 변수명은 fruitName이라고 짓습니다.
상수도 변하지 않는 값입니다.
예를들어, 원주율을 구할때 사용되는 파이(π)는 프로그래밍을 하면서 변할 이유가 없는 값입니다.
우리가 변수명을 짓는 이유는 찾기 위해서입니다. 이름을 짓지 않으면 결코 찾을 수가 없기 때문입니다.
변수는 엄청나고 방대한 RAM(메모리) 공간 어딘가에 존재하고 있습니다.
이것으로 변수와 상수에 대해서 확실히 알게되었습니다.
변수는 변하는 값이고 상수는 변하지 않는 값입니다.
값이라는 것은 프로그램에서 중요한 개념입니다. 메모리와 우리 프로그래머의 통신 수단이기 때문입니다.
우리는 컴퓨터에게 변수로 물어보고 변수로 답변을 받습니다. 자, 이제 중요한 얘기를 해봅니다. 모든 프로그램은 값의 입력/연산/출력입니다. 이 함수에 어떤 값이 들어오는지? 어떻게 연산되는지? 최종적으로 어떤 값이 출력되는지?를 알면 됩니다. 모든 프로그램은 위 과정의 반복입니다.
홈페이지를 만들 때도 똑같고, 인공 지능을 만들 때도 똑같습니다. 인공지능도 결국 입력과 연산 그리고 출력에 불과합니다. 인공지능뿐 아니라 4차 산업으로 언급되는 모든 기술은 입력/연산/출력입니다. 어떤 값이 입력되고 어떻게 연산되어 출력되는지를 파악하면, 어떠한 프로그램이라도 그 기술을 파악할 수 있습니다.