2009-09-21 4 views
38

웹 개발 측면에서 '비즈니스 논리'와 '응용 논리'라는 문구가 자주 나옵니다 (웹 개발이 아닌 일반적인 프로그래밍에도 적용된다고 가정합니다).비즈니스 및 응용 프로그램 논리?

이것은 아주 새로운 것이므로 실제로 의미하는 바를 알지 못합니다. 누군가 정확하게 설명해 주시겠습니까? 프로그래머가 사용하는 '윙윙 거리는 단어'입니까? 또는?

+0

중복 : http://stackoverflow.com/questions/1441202/why-is-it-called-business-logic-where-did-this-term-come-from –

+5

나열된 복제본은 비즈니스 논리를 설명하지만 응용 프로그램 논리. –

답변

35

비즈니스 로직은 기본적으로 기능 사양에 따라 시스템의 규칙입니다. 예를 들어 유형 B의 오브젝트 A는 C와 D의 속성을 가져야합니다. E. 응용 프로그램 논리는 자바 서블릿과 OJB를 사용하여 Oracle 데이터베이스를 유지하는 것과 같은 기술 사양입니다. 결국 응용 프로그램의 기술 계층을 설명하는 데 도움이되는 호언 장담입니다. 다양한 계층을 분리 된 상태로 유지하여보다 나은 애플리케이션 설계를하기를 희망합니다.

+0

깨끗하고 간단합니다. 좋은 대답. :) –

1
+1

이 기사에서는 비즈니스 논리를 간단히 설명하지만 응용 프로그램 논리는 설명하지 않습니다. –

+0

두 사람이 똑같은 것을 설명하기 때문에 네. –

+0

예, 실제로 저는 Wikipedia를 이미 보았고 상당히 모호했습니다. 좀 더 간결한 설명이 필요했다. –

37

고객이 비즈니스 요구를 해결하는 시스템을 작성한다고 가정 해보십시오.

모든 코드의 합계는 응용 프로그램 논리 또는 시스템 아키텍처입니다. 기본적으로 구축하려는 시스템 전체입니다.

비즈니스 로직은 실제 비즈니스 프로세스를 모델링하고 구동하는 코드 하위 세트입니다. "제품 X의 주문이 접수되면 어떻게됩니까? 제품 Y의 비용은 어떻게 계산됩니까?" 예. 고객/도메인 전문가/프로젝트 이해 관계자가 입력해야 할 코드가 있습니다.

이상적인 비즈니스 로직은 자체 계층 또는 계층 (see the Wikipedia article on N-tier architecture)으로 구분됩니다. 나머지 코드는 비즈니스 로직을 실행하는 데 도움이되는 인프라 (데이터베이스 래퍼, 헬퍼 기능, 서비스 facades, 외부 통합, GUI 등)로 간주 될 수 있습니다.

0

먼저, 알아야 할 것은 무엇입니까 (입력)?

전송 금액을하는 사람의 ID는 에게 계좌 번호 계좌 번호 를 확인하는 대상을 확인하는 소스를 전송하기 위해 무엇을 적용해야 "비즈니스 규칙"의 일부?

요청하는 사람은이를 수행 할 권한이 있어야합니다. 트랜잭션은 원자 적이어야합니다. "원자력"이란 거래가 완전히 성공해야하거나 완전히 실패해야한다는 것을 의미합니다. 하나의 계좌에 돈을 들이지 않고 다른 계좌로 돈을 가져가는 (돈이 사라지거나) 계좌에 입금되지만 다른 계좌에서 돈을 인출하지 않는 계좌 거래는 할 수 없습니다 (돈은 마술처럼 보이지 않습니다).

관련 문제