본문 바로가기

메타버스 1기

Framework

프레임워크(Framework, 뼈대)

프로그램의 동작 순서를 정의하는 것

기본적으로 입력 - 처리 - 출력 순서를 반복하며 사용자가 종료라는 요청을 보내기 전까지 무한 반복한다

 

main()에 모든것을 작성하지 않는것은 관리 단위가 너무 커지기 때문이다

코드를 분석할 때 살펴야 할게 너무 많아지면(ex. 분기문도 많아지고 if안에 if 안에 if , if...등) 현재 어떤 상황인지 파악이 어려워진다

그래서 모듈화 라는것을 하는데

 

모듈화(Modulation)

레고 블럭을 조립해서 하나의 결과물을 만드는 것처럼 사람이 구분 할 수 있는 단위나 시스템 단위로 구분하기도 하고 더 잘게 함수 단위로 나눠 분석하는것

 

C언어는 절차지향 프로그래밍(Procedural programming)이며 

Procedure = Function = Subroutine  함수라는 단위로 프로그램을 구성한다

하지만 한계가 있었기 때문에

객체지향 프로그래밍(Object - oriented programming) 으로 발전되었다

이는 객체라는 단위로 프로그램을 구성하며 객체는 데이터가 저장되는 영역을 뜻한다(=변수)

 

현업에 가면 현재보다 더 복잡한 프레임워크를 사용하게 되는데 이를 어떻게 분석해야하는가? 파악해야하는가?

1) Top-down 방식 : 위에서부터 아래로 점차 파악하는 방식

2) Bottom-up 방식 : 아래부터 위로 점차 파악하는 방식

 

Bottom-up은 모듈부터 시작해서 실제 동작부터 파악한 후 프로그램의 진행방식을 분석해나가는 것

Top-down은 프로그램의 실행 흐름부터 파악하기 시작해서 모듈까지 내려가며 프로그램의 동작을 분석하는 것, 가장 위의 main함수부터 시작한다 -> 추천

 

문법을 다 알고있다고 가정할 때 Framework의 파악이 어려운 이유는 모듈화로 단위를 작게작게 나눠놨기 때문에 전체적인 흐름을 파악하기 어려운 경우가 있다

그렇기 때문에 메모를해나가면서 텍스트 또는 그림으로 도식화 해야한다