>일반적인 문제 >소프트웨어 아키텍처를 배워야 하는 이유

소프트웨어 아키텍처를 배워야 하는 이유

(*-*)浩
(*-*)浩원래의
2019-12-24 09:14:302592검색

소프트웨어 아키텍처를 배워야 하는 이유

1. 아키텍트 자격을 취득하려면 소프트웨어 아키텍처의 개념이 무엇인지 알아야 하고, 아키텍처를 이해하세요. 정의:

1. 소프트웨어 아키텍처는 시스템의 스케치입니다.

2. 소프트웨어 아키텍처에서 설명하는 객체는 시스템을 직접 구성하는 추상 구성 요소입니다. (추천 학습:#p#phpstorm)#🎜🎜 ## 🎜🎜#3. 각 구성 요소 간의 연결은 구성 요소 간의 통신을 명확하고 비교적 자세하게 설명합니다.

4. 구현 단계에서 이러한 추상 구성 요소는 특정 클래스나 객체와 같은 실제 구성 요소로 정제됩니다.

5. 객체 지향 분야에서 구성 요소 간의 연결은 일반적으로 인터페이스로 구현됩니다.

2. 아키텍트는 세분화되어 기본적으로 세 가지 범주로 나눌 수 있습니다:

1 시스템 아키텍트: 서버 로드, 안정성 확장성, 확장성. , 데이터베이스 분할, 애플리케이션 캐싱 등

2. 애플리케이션 설계자: 비즈니스 이해, 모델 분류, 디자인 패턴, 인터페이스, 데이터 상호 작용 등

3 . 건축가: 비즈니스 도메인 전문가, 산업 전문가, 제품 컨설턴트, 수석 컨설턴트라고도 할 수 있습니다. 일반적으로 우리가 건축가라고 부르는 것은 1과 2의 조합입니다

계층 아키텍처 아키텍처)가 가장 많습니다. 공통 소프트웨어 아키텍처와 사실상의 표준 아키텍처. 어떤 아키텍처를 사용해야 할지 모른다면 이를 사용하세요.

이 아키텍처는 소프트웨어를 여러 개의 수평 계층으로 나눕니다. 각 계층에는 명확한 역할과 업무 구분이 있으며 다른 계층의 세부 사항을 알 필요가 없습니다. 레이어는 인터페이스를 통해 통신합니다.

소프트웨어를 몇 개의 레이어로 나누어야 하는지에 대한 명확한 합의는 없지만 4레이어 구조가 가장 일반적입니다.

프레젠테이션 레이어(프레젠테이션): 시각적 및 사용자 상호 작용을 담당하는 사용자 인터페이스

비즈니스 레이어(비즈니스): 비즈니스 로직 구현

Persistence 레이어 ( 지속성): 데이터를 제공하고 SQL 문이 이 레이어에 배치됩니다

데이터베이스: 데이터 저장

로직 레이어와 지속성 레이어 사이에 일부 소프트웨어가 추가됩니다. 계층(서비스)은 다양한 비즈니스 로직에 필요한 몇 가지 공통 인터페이스를 제공하기 위해 생성됩니다.

사용자의 요청은 이 4개 레이어를 순차적으로 거쳐 처리되며, 어떤 레이어도 건너뛸 수 없습니다.

장점

간단한 구조, 이해 및 개발 용이

다른 기술을 가진 프로그래머는 작업을 분담하여 작업을 수행할 수 있습니다. 다양한 작업을 담당하는 레이어는 대부분의 소프트웨어 회사의 조직 구조에 자연스럽게 적합합니다

각 레이어는 독립적으로 테스트할 수 있으며, 다른 레이어의 인터페이스는 시뮬레이션을 통해 해결됩니다

# 🎜🎜#단점#🎜 🎜#

일단 환경이 바뀌고 코드 조정이나 기능 추가가 필요하면 대개 번거롭고 시간이 많이 걸립니다

배포도 번거롭습니다. 작은 곳만 수정하면 전체 소프트웨어 재배포가 필요한 경우가 많아 지속적인 릴리스가 쉽지 않습니다

소프트웨어가 업그레이드되면 전체 서비스를 중단해야 할 수도 있습니다

#🎜🎜 #확장성이 좋지 않습니다. 사용자가 대량으로 증가를 요구할 경우 각 레이어를 차례로 확장해야 하기 때문에 각 레이어가 내부적으로 결합되어 있어 확장이 어렵습니다

위 내용은 소프트웨어 아키텍처를 배워야 하는 이유의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.