Skip to content

Commit ad4e869

Browse files
committed
patched readme
1 parent 2a2e70e commit ad4e869

File tree

2 files changed

+36
-14
lines changed

2 files changed

+36
-14
lines changed

README.md

Lines changed: 17 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,23 @@
1-
[![Review Assignment Due Date](https://classroom.github.com/assets/deadline-readme-button-22041afd0340ce965d47ae6ef1cefeee28c7c493a6346c4f15d667ab976d596c.svg)](https://classroom.github.com/a/9A22t-SS)
2-
Разработать standalone приложение, которое имеет следующие возможности:
1+
# Bytecode Analyzer
32

4-
Принимает на вход проект в виде .jar файла
5-
С помощью библиотеки для манипуляции байткодом (ASM) посчитать и вывести следующие метрики:
6-
* Максимальная глубина наследования
7-
* Средняя глубина наследования
8-
* Метрика ABC (assignment-ом является факт записи в локальную переменную istore, astore и т.д.)
9-
* Среднее количество переопределенных методов
10-
* Среднее количество полей в классе
3+
## Overview
114

12-
Метрики должны выводиться как в консоль, так и в заданный пользователем файл в машинно-читаемом формате JSON
5+
This is a simple standalone bytecode analyzer application that analyzes Java `.jar` files using the ASM library.
6+
It calculates several code metrics and outputs them both to the console and a user-specified JSON file.
137

14-
Дедлайн: 03.12.2025 23:59
8+
## Features
159

16-
Методические материалы: используйте visitor-ы
10+
The application calculates the following metrics:
1711

18-
Гайд по использованию ASM: https://asm.ow2.io/asm4-guide.pdf
12+
- **Maximum Inheritance Depth (MID)**
13+
- **Average Inheritance Depth**
14+
- **ABC Metric** (based on assignments - detected via `istore`, `astore`, etc.)
15+
- **Average Number of Overridden Methods per Class**
16+
- **Average Number of Fields per Class**
1917

20-
Дополнительное (необязательное задание): сделайте агента для сбора покрытия по строчкам
18+
Results are printed to the console or saved in a machine-readable JSON format.
19+
20+
## Module Structure
21+
22+
- analyzer - main module
23+
- example - example module, which classes packed in jar for analysis, see IntegrationTest.java

TASK.md

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
Разработать standalone приложение, которое имеет следующие возможности:
2+
3+
Принимает на вход проект в виде .jar файла
4+
С помощью библиотеки для манипуляции байткодом (ASM) посчитать и вывести следующие метрики:
5+
* Максимальная глубина наследования
6+
* Средняя глубина наследования
7+
* Метрика ABC (assignment-ом является факт записи в локальную переменную istore, astore и т.д.)
8+
* Среднее количество переопределенных методов
9+
* Среднее количество полей в классе
10+
11+
Метрики должны выводиться как в консоль, так и в заданный пользователем файл в машинно-читаемом формате JSON
12+
13+
Дедлайн: 03.12.2025 23:59
14+
15+
Методические материалы: используйте visitor-ы
16+
17+
Гайд по использованию ASM: https://asm.ow2.io/asm4-guide.pdf
18+
19+
Дополнительное (необязательное задание): сделайте агента для сбора покрытия по строчкам

0 commit comments

Comments
 (0)