일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- 값 비교
- String 찾기
- R타입비교
- 2차원 list
- 플러터 null
- 2차원배열
- 인티저 값 비교
- 멀티 페이지
- select
- 파라미터 무한
- 값 넣기
- Integer 값 비교
- r타입 비교
- 비교
- 무한 파라미터
- 배열 값 추가
- String 검색
- 마우스 올릴때
- 배열 생성자
- jsp
- 마우스 올리면
- 리스트
- R 비교
- 값 추가
- 배열 값
- list
- 같은지
- 옵션태그
- 2차원 리스트
- jsp 테이블
- Today
- Total
JAVA를 JAVA라
[kafka] 카프카 개념 공부 전, 아키텍처 본문
아키텍처 (Architecture)
목표하는 대상에 대하여 그 구성과 동작 원리, 구성 요소 간의 관계 및 시스템 외부 환경과의 관계 등을설명하는 설계도 혹은 청사진을 말한다.
라고 나무위키 첫 줄에 적혀있지만...
시스템 아키텍처, 소프트웨어 아키텍처, 데이터 아키텍처, 네트워크 아키텍처 등 분야를 명시하여 부른다고 한다.
그 중 카프카 개념 공부를 하기 위해 소프트웨어 아키텍처 에 대해 개념을 정리해보았다.
사실 여러 사이트를 방문하며 검색해보았으나 명확하게 딱 소프트웨어 아키텍처는 XXX이다! 라는 결론은 없는 것 같다.
그래도 가장 가까운 정의를 말하자면
구성 요소들 간의 관계, 환경, 설계와 발전을 관리하는 원칙으로 이루어진 시스템의 근본적인 구조
- ANSI/IEEE std 1471-2000
라고 한다.
결국 내 눈높이에서 알아들은 대로 쓰자면 아키텍처는 내가 어떤 코드를 짜고자 할 때, 시작하기 전 미리 설계도를 그려 놓는 것 을 말하며
예를 들어 아이디와 비밀번호를 입력 후 로그인 버튼을 눌렀을 때 일어나는 이벤트 코드를 작성한다고 했을 때
1. Model 단에서는 어떤 것이 필요하며 구조는 어떠한가?
2. View 단에서는 어떤 것을 보여주며 어떤 이벤트를 발생 시키는가?
3. Controller 단에서는 어떤 함수를 사용하여 이벤트를 진행시키는가?
에 대해 간략하게 그림으로 표현한 것 이라고 뭉퉁그려 생각하기로 했다.
참고 출처
1. 유튜브 데브원영 DVWY - [마틴 파울러] 소프트웨어 아키텍처의 중요성 (한글 자막)
https://www.youtube.com/watch?v=4E1BHTvhB7Y
2. 나무위키 - 아키텍처
https://namu.wiki/w/%EC%95%84%ED%82%A4%ED%85%8D%EC%B2%98
3. KISA 한국 인터넷 진흥원 - 소프트웨어 아키텍처 기반 설꼐 모델 및 명세기법 개발
https://www.kisa.or.kr/204/form?postSeq=012241&lang_type=KO&page=#fnPostAttachDownload