Có thể sử dụng Checkstyle để cấm sử dụng một số hàm tạo hoặc phương thức sử dụng mặc định hệ thống (ngôn ngữ, bộ ký tự, v.v.). Tôi thích thực thi một chính sách mà lập trình viên phải rõ ràng về các giá trị phụ thuộc vào hệ thống. Vì vậy, tôi xem xét các mục sau đây là nguy hiểm:Quy tắc kiểm tra để ngăn chặn gọi một số phương thức và hàm tạo
- tất cả các nhà thầu của
java.io.FielWriter
- sử dụng mã hóa hệ thống phụ thuộc vào
- các
OutputStreamWriter(OutputStream os)
constructor củajava.io.OutputStreamWriter
- sử dụng mã hóa hệ thống phụ thuộc vào
- các
java.lang.String.toLowerCase()
phương pháp- sử dụng mặc định hệ thống locale
- Các
java.util.Calendar.getInstance()
phương pháp- sử dụng locale mặc định hệ thống và múi giờ mặc định
(danh sách đi về, bạn sẽ có được hình ảnh).
Có thể thực thi việc này bằng Checkstyle 5.5 không?
Câu hỏi hay. Cá nhân tôi nghĩ rằng đây là một cái gì đó trình biên dịch chính nó nên cảnh báo về mặc định - rất nhiều lỗi có thể - bằng cách sử dụng các phương pháp này hầu như không phải là điều đúng để làm .. – Voo
Oracle nên thêm một chú thích @SystemDependant cho những phương pháp. – gawi
Tôi đã viết séc tùy chỉnh để tránh Ngày mới(), hãy xem điều này nếu bạn quan tâm: http://beansgocrazy.blogspot.com.au/2012/04/when-dates-go-wild.html – n0rm1e