Project

General

Profile

Структура проекта Retrascope » History » Version 1

Sergey Smolov, 05/16/2014 05:37 PM

1 1 Sergey Smolov
h1. Project Structure
2
3
retrascope - базовый пакет
4
5
В корне пакета помещен "пускач" Retrascope - исполняемый класс проекта. Это единственный класс в данном пакете и его подпакетах, имеющий функцию main. Если есть желание написать класс с main-методом, то разбивайте такой класс на исполняемую и неисполняемую части. Исполняемая часть должна быть размещена в том же пакете, что и запускаемый в ней класс, но в папке test/java. Например, если тест проверяет корректность работы класса, находящегося в файле retrascope/src/main/java/ru/ispras/retrascope/basis/MyClass.java, то тест должен быть размещен в файле retrascope/test/java/ru/ispras/retrascope/basis/MyClassTestCase.java.
6
7
Пакет retrascope содержит следующие пакеты:
8
9
1) basis - содержит базовые сущности для всего проекта. Предполагается, что эти сущности могут использоваться в классах, находящихся в пакетах того же уровня, что и basis, а также в их подпакетах любой вложенности.
10
11
2) model - содержит внутренние представления моделей исходного кода. Замечу, что сущности из пакета model.basis могут использоваться любыми классами, находящимися во всех подпакетах пакета model
12
13
3) engine - содержит инструменты, работающие с моделями из пакета model. Например, любой инструмент, работающий с моделью из пакета model.efsm, должен быть реализован в пакете engine.efsm.
14
15
4) parser - содержит инструменты, работающие с самим исходным кодом (т.е. с текстовыми файлами HDL-описаний).
16
17
5) testbench - содержит элементы представления тестового окружения
18
19
6) util - содержит разные классы с "полезными" методами. В будущем, возможно, этот пакет будет уничтожен, а его классы - распределены по более подходящим пакетам.