Canadaresess/Slicer4J
Slicer4J is an accurate, low-overhead dynamic slicer for Java programs.
Thành tựu nổi bật
Những danh hiệu mới nhất của dự án
#1 Repository Của Tháng
#1 Repository Của Tháng
🔪 Slicer4J: Công cụ cắt động chính xác, ít overhead cho Java
Slicer4J tự động sinh ra lát cắt ngược từ một câu lệnh đã chọn và các biến trong câu lệnh đó.
Slicer4J là một công cụ cắt động (dynamic slicer) cho các chương trình Java, được phát triển bởi nhóm nghiên cứu tại University of British Columbia. Dự án dựa trên thư viện Soot để phân tích và instrument mã nguồn, hỗ trợ các chương trình biên dịch với Java lên đến phiên bản 9. Slicer4J giúp người dùng dễ dàng khám phá các phụ thuộc dữ liệu và điều khiển trong quá trình thực thi.
✨ Điểm nổi bật
- Cắt động chính xác: Sinh ra lát cắt ngược từ câu lệnh và biến đã chọn.
- Low-overhead: Tối ưu để giảm thiểu tác động đến hiệu năng chương trình.
- Dựa trên Soot: Sử dụng khung công cụ Soot mạnh mẽ để phân tích mã Java.
- Hỗ trợ Java 9: Cập nhật với các tính năng của Java đến phiên bản 9.
- Giao diện dòng lệnh: Hỗ trợ cả giao diện Java và script Python để sử dụng dễ dàng.
- Cấu hình linh hoạt: Hỗ trợ cắt theo data-flow, control-flow, hoặc cả hai.
- Mô hình phương thức tùy chỉnh: Cho phép người dùng định nghĩa mô hình phương thức bằng XML.
💡 Vì sao đáng chú ý
Slicer4J khác biệt so với các công cụ cắt động khác bởi sự kết hợp giữa độ chính xác cao và chi phí thấp. Công cụ phân tích các phụ thuộc dữ liệu và điều khiển một cách thông minh, giúp người dùng nhanh chóng xác định nguyên nhân gốc rễ của lỗi hoặc hiểu rõ hơn về luồng thực thi. Đặc biệt hữu ích trong việc gỡ lỗi phức tạp và phân tích ứng dụng Java lớn.
#Java #DynamicSlicing #Soot #SoftwareAnalysis #TiniX
Similar Projects
Discover other similar projects and AI models.
Where three.js comes to life, slice your creations into reality!
Spring Boot helps you to create Spring-powered, production-grade applications and services with absolute minimum fuss.
😮 Core Interview Questions & Answers For Experienced Java(Backend) Developers | 互联网 Java 工程师进阶知识完全扫盲:涵盖高并发、分布式、高可用、微服务、海量数据处理等领域知识