Động lực học lập trình Java, Phần 7: Kỹ thuật bytecode với BCEL Apache BCEL cho phép bạn đi đến các chi tiết về ngôn ngữ assembler của JVM cho hoạt động lớp

Dennis Sosnoski, Nhà tư vấn, Sosnoski Software Solutions, Inc. Tóm tắt: Apache Byte Code Engineering Library (BCEL-Thư viện kỹ thuật mã byte) cho phép bạn nghiên cứu bytecode của các lớp Java. Bạn có thể sử dụng nó để biến đổi các biểu diễn lớp hiện tại hoặc xây dựng các lớp mới, và vì BCEL làm việc ở mức các lệnh JVM riêng biệt, nó sẽ cho bạn sức mạnh tối đa trên mã của bạn. Mặc dù sức mạnh đó đi kèm với một chi phí về độ phức tạp. . | Động lực học lập trình Java Phần 7 Kỹ thuật bytecode với BCEL Apache BCEL cho phép bạn đi đến các chi tiết về ngôn ngữ assembler của JVM cho hoạt động lớp Dennis Sosnoski Nhà tư vấn Sosnoski Software Solutions Inc. Tóm tắt Apache Byte Code Engineering Library BCEL-Thư viện kỹ thuật mã byte cho phép bạn nghiên cứu bytecode của các lớp Java. Bạn có thể sử dụng nó để biến đổi các biểu diễn lớp hiện tại hoặc xây dựng các lớp mới và vì BCEL làm việc ở mức các lệnh JVM riêng biệt nó sẽ cho bạn sức mạnh tối đa trên mã của bạn. Mặc dù sức mạnh đó đi kèm với một chi phí về độ phức tạp. Trong bài này nhà tư vấn Java Dennis Sosnoski cung cấp cho bạn những điều cơ bản về BCEL và hướng dẫn bạn thông qua một ví dụ ứng dụng BCEL để cho bạn có thể tự quyết định xem sức mạnh có tương xứng với sự phức tạp không. Trong ba bài viết mới đây của loạt bài này tôi đã cho bạn thấy cách sử dụng khung công tác Javassist cho hoạt động lớp classworking . Bây giờ tôi sẽ trình bày một cách tiếp cận rất khác để xử lí bytecode đó là sử dụng Apache Byte Code Engineering Library BCEL . BCEL hoạt động ở mức các lệnh JVM thực sự không giống như giao diện mã nguồn được Javassist hỗ trợ. Cách tiếp cận mức thấp làm cho BCEL rất tốt khi bạn thực sự muốn kiểm soát mọi bước thực hiện chương trình nhưng nó cũng làm cho hoạt động với BCEL phức tạp hơn nhiều so với sử dụng Javassist cho các trường hợp ở đó cả hai cùng làm việc. Tôi sẽ bắt đầu bằng cách trình bày kiến trúc BCEL cơ bản sau đó dành hầu hết bài viết này cho việc xây dựng lại ví dụ hoạt động lớp Javassist đầu tiên của tôi bằng BCEL. Tôi sẽ kết thúc bằng việc xem xét một số các công cụ có trong gói BCEL và một vài ứng dụng mà các nhà phát triển đã xây dựng ở trên BCEL. Truy cập lớp BCEL BCEL cung cấp cho bạn tất cả các khả năng cơ bản giống như Javassist kiểm tra chỉnh sửa và tạo các lớp Java nhị phân. Sự khác biệt rõ ràng với BCEL là mọi thứ được thiết kế để làm việc ở mức ngôn ngữ chương trình dịch hợp ngữ assembler của JVM hơn là giao diện mã .

Không thể tạo bản xem trước, hãy bấm tải xuống
TÀI LIỆU MỚI ĐĂNG
Đã phát hiện trình chặn quảng cáo AdBlock
Trang web này phụ thuộc vào doanh thu từ số lần hiển thị quảng cáo để tồn tại. Vui lòng tắt trình chặn quảng cáo của bạn hoặc tạm dừng tính năng chặn quảng cáo cho trang web này.