1장. 프로그래밍

MyeonghoonNam·2024년 4월 3일
0

프로그래밍

컴퓨터에게 실행을 요구하는 일종의 커뮤니케이션

프로그래밍에 앞서 요구사항을 명확히 이해하고 적절한 문제 해결 방안 정의가 필요하며 이 때 요구되는 능력이 문제 해결 능력이다.

0과 1밖에 알지 못하는 기계가 실행할 수 있을 정도로 정확하고 상세하게 요구사항을 설명하는 작업, 그렇다 프로그래밍의 결과물은 코드이다.

문제 해결 능력을 통해 문제 해결 방안을 고려할 때 우리는 컴퓨팅적 사고가 필요하다.
여기서 문제 해결 능력은 사람의 직감에 보다 가깝지만 이를 컴퓨터가 이해하기 위한 사고를 하려면 보다 논리적/수학적 사고가 필요하다. (사람에게 크다/작다의 의미가 컴퓨터 입장에서는 기준이 불명확하다.)

즉, 컴퓨팅적 사고는 해결 과제를 작은 단위로 분해/패턴화하여 추출하고 모든 개념이 평가가 가능하여야한다.

이 부분에서 다시 한 번 순서도를 작성하여 접근하는 사고방식의 중요성을 인지하게 되었다.
(알고리즘 문제를 해결할 때 처럼, 무엇을 개발할 때도 적용하는 방법을 습관화하자)

프로그래밍 언어

문제 해결 능력을 바탕으로 정의된 문제 해결 방안은 컴퓨터에게 전달되어야 한다.
명령을 수행할 주체는 컴퓨터이므로 자연어(사람이 이해하는 언어)가 아니라 기계어로 명령을 전달해야 한다.

사람과 기계의 각자가 이해하는 언어로 소통을 하기 위해 중간 단계의 일종의 번역기가 필요한데, 이를 우리는 컴파일러 혹은 인터프리터 라고 한다.

프로그래밍은 프로그래밍 언어를 사용해 컴퓨터에게 실행을 요구하는 일종의 커뮤니케이션이다.

올바른 프로그래밍을 위해 프로그래밍 언어의 문법을 배우고, 문맥에 맞게 코드로 표현할 수 있어야 한다.

결국 프로그래밍은 커뮤니케이션에서 구체적 의미를 부여하면 요구사항의 집합들을 분석하여 적절한 자료구조와 함수의 집합들을 구현하고 흐름을 제어한다고 할 수 있다.

profile
꾸준히 성장하는 개발자를 목표로 합니다.

0개의 댓글