상세 컨텐츠

본문 제목

Framework #1

C#

by Game_The_Diver 2023. 1. 31. 12:13

본문

오늘의 양식은 Framework(프레임워크)이다

 

소화시키기 꽤나 어려운 놈이다 ㅠ

 

 

일단 프레임워크의 정의에 대해 먼저 알아보자

 

"소프트웨어의 구체적인 부분에 해당하는 설계와 구현을 재사용이 가능하게끔 일련의 협업화된 형태로 클래스들을 제공하는 것"

 

이라고 한다......

 

음 코딩공부를 하면서 느낀점은 보통 어떤 개념의 정의를 살펴보면 그렇게 확 와닿지가 않는다

(그만큼 내 지식이 모자라다는 것이겠지?)

 

영어로 된 정의를 살펴보자

 

"A framework is a structure that you can build the software on"

 

번역하면 소프트웨어의 구조를 의미한다

그렇다

 

프레임워크는 복잡하게 생각할것이 없고, 그냥 소프트웨어 구조! 라고 생각하면 되겠다

 

조금 더 생각을 구체화하여 사람에 비유하자면, 아래와 같이 표현할 수 있을 것이다

사람의 팔을 생각해보자

 

팔의 구성요소로는 뼈대도 있을 것이고, 피부도 있을 것이고, 혈관도 있을 것이고, 근육도 있을 것이고, 또 깊이 들어가자면 지방, 단백질, 적혈구, 백혈구, 혈장 등등 있을 것이다

 

여기서 프레임워크는 뼈대이다! 뼈대를 통해서 팔의 구조를 생성할 수 있다!

 

팔에 영양분과 산소를 공급해주는 기능을 하는 혈관, 팔의 움직임을 담당하는 근육, 혈관 및 근육을 보호해주는 피부 등 기능을 담당하는 녀석들은 라이브러리 라고 표현할 수 있겠다!

 

이로써 프레임워크의 개념을 다졌다

 

그래서 프레임워크는 왜 써야하는건데??

 

라는 의문이 생긴다

 

프레임워크를 사용하는 장단점에 대하여 말해보자면

 

[ Advantage ]

 

1) 효율적이다
: 설계도도 없이 나무와 못을 가지고 책상을 만드는 것보단, 설계도를 미리 그린 뒤 재료를 가지고 책상을 만들면 훨씬 효율적이고 계산적이지 않겠는가?

 

2) 퀄리티가 좋다
: 설계도 없이 책상을 만들다가 길이가 안맞는다던가, 높이가 안맞는다던가 하는 잔고장을 예방할 수 있다!

 

3) 유지보수에 유리하다
: 설계도 없이 책상을 만들어놓고, 전목수는 이직을하고 새로운 목수가 와서 책상을 고쳐야한다면 꽤나 힘들 것이다. 하지만 설계도가 있다면?! 설계도 대로만 책상을 만든다면 안정적이게 될것이다!

 

 

[ Disadvantage ]


1) 학습하는데 시간이 오래걸린다
: 다른 사람이 제작한 100 페이지 짜리 설계도를 다 읽고 이해해야하는데, 오래 걸릴 수 밖에 없다!

 

2) 제약이 있다
: 설계도라는 구조를 이미 만들어 놓은 것이기에, 설계도대로 움직이는 수밖에 없다, 즉 뭔가 새로운 기능을 추가하는데 어느정도 제약이 생긴다는 것이다.

 

 

 

현업에 아직 종사해보진 않았지만, 이직으로 인해 개발자가 변경되게 되는것을 고려하여 프레임워크를 많이 쓸 것이라 예상해본다
고로 프레임워크는 내가 꼭 잘 알아야 할 부분이다!

 

수업에서 진행했던 프레임워크를 다음 포스팅에서 한번 다 뜯어보겠다

'C#' 카테고리의 다른 글

Console.KeyAvailable  (1) 2023.01.31
Property  (0) 2023.01.31
Static(정적) 멤버  (0) 2023.01.31

관련글 더보기