C++ 패러다임

이영준·2024년 10월 19일
0

C++ 기본문법

목록 보기
1/10

패러다임

프로그램이 데이터를 처리하는 방법을 설명하는 모델, 즉 프레임워크

절차형(명령형)

FORTRAN, COBOL, BASIC, Ada, Pascal, C, C++

프로그램을 명령어의 순차적 집합으로 보는 관점.
예컨데 아래와 같이 메모리의 상태가 4번 바뀌는 것을 순차적으로 처리하는 방식에 중점을 두는 것.

input a
input b
sum = a + b
output sum

객체 지향형

Smalltalk, C++, Visual Basic, C#, Java

절차형은 자주 사용하는 프로시저를 미리 작성해서 활용하지만, 프로시저와 데이터 사이에 직접적인 관계는 없다.

객체 지향형은 절차형 패러다임의 개념에서 한번 더 나아가 특정 형태의 데이터에 적용할 수 있는 프로시저를 하나로 묶는다.
그렇게 공유되는 프로시저를 shared procedure(공유 프로시져)라고 한다

함수형

LSIP, Scheme

프로그램을 수학적인 함수로 보는 관점, 함수는 입력과 출력이 대응 관계를 가지는 블랙박스이다.
이 패러다임은 명령어를 사용하지 않으며 메모리의 상태를 추적하지 않는다.

논리형

Prolog

일련의 사실과 규칙을 기반으로 사용자의 입력인 쿼리에 응답함
a) 사실
Parent(Fay, Tara)
Parent (Tara, Willie)
Parent(Tara, Benji)


b) 규칙
Grandparent(X,Y) ->
Parent(X,Z) AND Parent(Z,Y)


c) 쿼리
Parent(Willile, Tara)? No
Parent(Fay, Benji)? No
Grandparent(Fay, Willi)? Yes

C++프로그램 개발 과정

C++ 프로그램의 과정은 조금 복잡하다.


1. 프로그램 코드 작성
2. 프로그램 컴파일

  • 디스크에 저장되어 있는 소스 파일의 정보를 컴퓨터가 이해할 수 있는 기계어로 변환하는 과정
  • 컴파일러가 이 과정을 함
  1. 프로그램과 필요한 라이브러리 모듈 링크 (일반적으로 자동 실행)
  • 시스템 함수와 우리가 만든 함수를 실행 파일로 결합하는 과정
  • 이렇게 결합에 사용되는 프로그램을 링커라고 함
  1. 프로그램 실행 (사용자의 관점에서는 프로그램이 1회 실행되는 것으로 보이지만, 컴퓨터 내부적으로는 프로그램을 로드하고 실행하는 2가지 과정이다.)
  • run 명령어 를 사용해서 프로그램을 메인 메모리로 읽어 들이고 실행한다. 이 때 프로그램을 메모리 위에 올리는 과정을 로드라고 한다.
  • 로더라는 프로그램이 이를 실행한다.
profile
컴퓨터와 교육 그사이 어딘가

0개의 댓글