개발을 하다가 문득 내가 지금 사용하는 단어가 무엇이지 라는 생각이 들어서 찾아보며 공부를 시작해보기로했다.
여기저기에 뿌려져있는 글들을 내가 이해하기 쉽게 정리를 해보았다.

이번시간에는 아키택처에 대해 알아보도록하자.

협업을 함께 하는 사람들이 아키택처,~~ 아키택처적으로 뭐 어쩌고 저쩌고 하는데, 2학년을 막 마친 나로써는 잘 몰랐다. 그냥 아는척하면서 넘어갔었는데 이번에 알아보았다.

(대충 머 공부하는 짤)

아키택처란 무엇인가? 이것을 검색하자 바로 건축학 이라는 의미의 단어가 나왔다.
찾아보니 프로그래머들에게는 시스템을 만드는 시스템 아키텍처라는 표현으로 사용을하고있었다.

그렇다면 정확한 의미를 알아보도록하자
아키택처 패턴은 주어진 문맥 안에서 소프트웨어 아키택처의 공통적인 발생 문제에 대한 일반적인, 재사용 가능한 해결책을 의미한다.

여기서 시스템 아키택처란 시스템의 구조, 행위 더 많은 뷰를 정의하는 개념적 모형을 말한다.

시스템 목적을 달성하기 위해 시스템의 각 컴포넌트가 무엇이며, 어떻게 상호작용하는지, 정보가 어떻게 교환되는지를 설명한다.

이게 뭔소리야. 나도 모른다 그래서 각 다 뜯어보고자 마음을 먹었다. 1단 나는 컴포넌트를 그냥 단어 그대로 해석을해서 구성요소 정도로만 생각을 했다. 검색을 해보니 컴포넌트의 단어 정의는 컴퓨터 소프트웨어에 있어서 다시 사용할 수 있는 범용성을 위해 개발된 소프트웨어 구성요소 라고 적혀있다.

어라라..? 구성요소는 맞았지만 앞에있는 "재사용이 가능한 범용성을 위해 개발된"은 생각하지도 못했다. 이렇게 하나 더 배웠다.

컴포넌트를 검색해보니 뭐 컴포넌트 기반 소프트웨어공학 이라는 말이 나왔다.
이건 또 뭐야.. 그만 나와.. 하면서 검색을 해보았다.

검색을 해보니 기존의 시스템이나 소프트웨어를 구성하는 컴포넌트를 조립해서 하나의 응용프로그램을 만드는 소프트웨어 개발방법론이란다.

그러니까 아까 검색을 했던 컴포넌트라는걸 레고마냥 조립해서 프로그램을 만드는 개발방법론이라는거구나. ㅋㅋ 쉽지않다.

자 본론으로 돌아가자 먼길 왔다. 그래서 시스템 아키텍쳐가 뭔데?
뭣도 아닌 내가 결론을 딱 내리기에는 뭐해서 찾아본 결과중에서 내 생각을 잘 표현한 글을 가져왔다. ㅎ

최적화를 목표로 두고 시스템 구성과 동작원리 그리고 시스템의 구성환경등을 설명 및 설계하는 청사진 또는 설계도

왜 가져왔느냐?
이름에서부터 아키택처 즉 무언가를 만들기위한것이라는것을 알 수 있었고, 시스템 아키택처도 시스템을 만들기 위한 무언가라는것인데, 여기서 시스템 아키텍처라는것을 검색해봤을때 컴포넌트 즉 재사용이 가능한 소프트웨어 구성요소들이 어떻게 상호작용하는지 어떤 정보가 교환되는지를 보여주는것이기에 위의 요약이 잘 표현해주고 있다고 생각한다.

보시는 분이 계실진 모르겠지만 위의 내용이 틀렸다면 지적 한번 해주시면 감사하겠습니다 ㅎ
그럼 20000

profile
개발새발

0개의 댓글