시스템을 독립적인 노드(단위)로 구성하고 이들을 연결하여 전체 기능을 구성하는 아키텍처 패턴.
기본 구성:
- 노드: 독립적인 기능 단위
- 엣지: 노드 간의 연결
- 입력/출력: 데이터 흐름
- 제어 흐름: 실행 순서
특징:
- 모듈성: 각 노드는 독립적
- 재사용성: 노드 재사용 가능
- 확장성: 새로운 노드 추가 용이
- 가시성: 전체 흐름을 시각화
색상 코딩 (Opal 예시):
- 노란색: 입력 노드
- 파란색: AI 처리 노드
- 초록색: 데이터 변환
- 빨간색: 출력/액션
장점:
- 복잡한 시스템의 단순화
- 병렬 처리 가능
- 디버깅 용이
- 유지보수 간편
응용:
- 비주얼 프로그래밍
- 게임 엔진 (노드 에디터)
- 네트워크 토폴로지
- AI 워크플로우
관련: Visual-Programming, ,