Atlas SDK

Atlas SDK를 이용하시면 손쉽게 Java와 C 코드를 처리하고 시각화하는 데 사용되는 맞춤 Eclipse 플러그인을 만들 수 있습니다. 문서 생성에서부터 맞춤 아키텍쳐 관점 만들기까지, 가능성은 무한합니다. 몇몇 사용자는 Atlas SDK를 이용해 타입 검사기나 기호 평가기 등 정교한 프로그램 분석 툴을 만들기도 했습니다.

Atlas shell은 해석이 용이한 Java와 비슷한 언어인 Scala를 이용해 아이디어를 빠르게 프로토타입화할 수 있게 해줍니다. 사실 Atlas Smart View와 Connection View는 Atlas SDK를 이용해 개발된 것이며 원본은 Atlas shell을 이용해서 프로토타입화한 제품입니다.

 

SDK

Atlas SDK로 가장 빠르게 맞춤 시각화를 생성하는 방법은 맞춤 Smart View 플러그인을 사용하시는 겁니다. 보다 고급 솔루션이 필요하실 경우를 대비해 Atlas SDK는 세 가지 주요 구성 요소를 제공합니다: Atlas Queries, Atlas Graph View Components, Atlas Selection Listeners.

Atlas Graph View Component

The Atlas Graph View Component는 WorkbenchPart로써 코드를 플러그인에서 시각화할 때 사용하실 수 있습니다. Atlas Graph View Component 튜토리얼 에서 더 자세한 정보를 확인하세요

Atlas Queries

Atlas는 소스 코드를 색인하여 Java나 Scala 등 아무 JVM 호환 언어에서나 쿼리가 가능한 그래프를 생성합니다.

해당 그래프는 다음 내용을 포함합니다:

  • 주요 내용(프로젝트, 타입, 패키지, 필드, 메소드)와 타입 계층도(type hierarchy)등 관련된 관계.
  • 함수 호출 및 필드 읽기/쓰기 등 메소드 레벨 관계와 기타 내용.
  • 각각의 메소드의 제어 흐름
  • 자세한 데이터 흐름

예를 들어 아래의 쿼리는 프로그램이 어떻게 java.net 패키지와 상호 작용하는지 시각화해줍니다:

Q java_net = pkg(“java.net”);
Q children = edges(XCSG.Contains).forward(java_net);
Q methods = children.nodesTaggedWithAny(XCSG.Method);
Q callGraph = index.edgesTaggedWithAny(XCSG.Call).reverse(methods) show(callGraph);

Atlas Queries를 시험해보는 가장 쉬운 방법은 Atlas Shell 튜토리얼을 시도해보는 겁니다.

Atlas Selection Listener

Atlas Selection Listeners는 코드와 Atlas Graph View 선택 내용을 Q 대상으로 제공하여 손쉽게 Atlas Queries로 이후 절차를 밟거나 Atlas Graph View Component로 시각화할 수 있습니다. Atlas Selection Listener 튜토리얼 에서 더 많은 정보를 확인하세요.

Shell

Atlas는 Atlas 쿼리를 처리하기 위한 상호작용 방식입니다. 플러그인을 만들고 있다면 여러 다른 시각화를 프로토타입화하기 위해 사용하시거나 Atlas를 평범하게 사용하실 때 그 일부로 사용하실 수 있습니다. The Atlas Shell 튜토리얼 에서 더 자세한 정보를 확인하세요.