Skip to content

HuskyFramework 개요

Kyungil Park edited this page Dec 30, 2016 · 1 revision

Husky 프레임워크란?

Husky 프레임워크는 JavaScript 언어로 작성된 메시지 전달 인터페이스(Message Passing Interface)이다.
웹 애플리케이션을 병렬 프로그래밍할 때 Husky 프레임워크를 사용한다.

Husky 프레임워크 구조

Husky 프레임워크 구성 요소에는 'Husky 코어'와 'Husky 플러그 인'이 있으며 Husky 프레임워크를 사용하여 웹 애플리케이션을 작성한 구조는 다음 그림과 같다.

Husky 코어

Husky 코어는 Husky 프레임워크에서 제공하는 클래스이며, 웹 애플리케이션 외부에서 전달된 메시지나 웹 애플리케이션 내부의 플러그 인에서 발생하는 메시지를 등록된 모든 Husky 플러그 인에 전달한다. Husky 코어는 Husky 플러그 인을 등록하는 기능과 메시지 전달에 필요한 기능만 가지고 있다.

Husky 플러그 인

Husky 플러그 인은 웹 애플리케이션의 기능을 구현한 클래스의 집합이며, Husky 코어가 전송하는 메시지를 수선한다. Husky 플러그 인은 'Husky 코어 플러그 인'과 '사용자 정의 플러그 인'으로 구성된다.

A. Husky 코어 플러그 인

Husky 코어 플러그 인은 자주 사용하는 기능을 미리 정의한 메시지로 처리할 수 있게 작성한 클래스이며, Husky 프레임워크에서 기본으로 제공된다. Husky 코어에 프로퍼티를 추가하거나 브라우저 이벤트에 특정 메시지를 발생하도록 할 때 Husky 코어 플러그 인을 사용한다.

B. 사용자 정의 플러그 인

사용자 정의 플러그 인은 필요한 기능을 지정한 메시지로 처리할 수 있도록 개발자가 직접 작성한 클래스이다.

Husky 프레임워크 메시지 전달 구조

메시지는 웹 애플리케이션 외부에서 발생하거나 웹 애플리케이션 내부의 Husky 플러그 인에서 발생할 수 있으며, 메시지가 전달될 때 항상 Husky 코어를 통과한다. 메시지 발생 위치에 따라 2가지 형태로 메시지가 전달된다.

  • 외부에서 발생한 메시지를 Husky 코어에 전송하면 Husky 코어에 등록된 모든 Husky 플러그 인으로 메시지를 전송한다.
  • 내부 Husky 플러그 인이 발생시킨 메시지는 Husky 코어에 전달되고 다시 Husky 코어에 등록된 모든 Husky 플러그 인으로 메시지를 전송한다. 다음 그림은 Husky 프레임워크의 메시지 전달 구조이다.