Tốc độ xử lý của ứng dụng java
Trong Java việc tối ưu hoá mã nguồn Java là công việc rất quan trọng, nó không chỉ giúp mã nguồn thông thoáng hơn, giúp tiêu tốn ít tài nguyên hệ thống hơn, mà các kĩ thuật được trình bày dưới đây sẽ giúp nâng cao hiệu suất (performance) làm việc của Java khi chạy chương trình! Một LTV Java có kinh nghiệm luôn coi việc tối ưu hoá mã nguồn như là 1 phần quan trọng của công việc lập trình, trang bị những kĩ thuật, thủ thuật tối ưu sẽ thể hiện một LTV có trình độ, và coi nó như 1 kĩ năng không thể thiếu khi làm việc với Java. Các kĩ thuật dưới đây không phải là những giải thuật toán học cao siêu, cũng không phải triển khai 1 cách phức tạp, đôi khi chúng rất dễ để thực hiện nhưng rất nhiều LTV không để ý hoặc chưa biết cách để triển khai nó. I. Các vòng lặp1. Tránh việc gọi phương thức trong vòng lặp
Ví dụ:
Nên được viết thành:
2. Đưa các tính tóan bất biến ra ngoài vòng lặp
Ví dụ 1:
Nên được viết thành:
Ví dụ 2:
Nên viết thành:
Tham khảo:
3. Tránh nối chuỗi (String) trong vòng lặp
Ví dụ:
Nên được viết thành:
Tham khảo: http://java.sun.com/docs/books/performance/1st_edition/html/JPMutability.fm.html 4. Sử dụng biến tạm thay cho truy cập giá trị của phần tử trong mảng
Ví dụ:
Nên viết thành:
**Tham khảo: **
5. Sử dụng Int
Ví dụ: Sử dụng int :
là nhanh hơn so với sử dụng bất kì kiểu dữ liệu nào khác
Tham khảo:
6. Đặt Try Catch ra ngoài vòng lặp
Ví dụ:
Nên viết thành:
Tham khảo: http://www.precisejava.com/javaperf/j2se/Loops.htm II/ Làm việc với chuỗi1. Sử dụng String.length() để kiểm tra chuỗi rỗng (empty)
Ví dụ:
Nên viết thành:
Tham khảo:
2. Sử dụng StringBuffer hoặc StringBuilder (Tham khảo 3. Tránh nối chuỗi (String) trong vòng lặp)3. Sử dụng equalsIgnoreCase
Ví dụ:
Nên được viết thành:
4. Tránh sử dụng startsWith()
Ví dụ:
Nên được viết thành
III/ Các trường hợp khác1. Sử dụng System.arraycopy()
Ví dụ:
Nên viết thành:
Tham khảo: http://www.cs.cmu.edu/~jch/java/speed.html 2. Tránh lặp lại việc Casting (ép kiểu)
**Ví dụ: **
Nên viết thành:
Tham khảo: Java Performance tunning by Jack Shirazi 3. Hủy các cấu trúc if else không cần thiết
Ví dụ:
Nên viết thành:
4. Luôn sử dụng static với hằng số
Ví dụ:
Nên viết thành:
5. Tránh check null truớc khi sử dụng so sánh InstanceOf
Ví dụ:
Nên viết thành:
6. Sử dụng mảng dữ liệu nguyên thủy
Ví dụ:
Nên viết thành:
7. Tránh show Debug code
Ví dụ:
Nên viết thành:
8. Tránh việc sử dụng Thread.sleep()
Ví dụ:
Nên viết thành:
8. Tránh sử dụng String.charAt()
Ví dụ:
Nên viết thành:
Tham khảo:
Trong bài này có sử dụng tài liệu tham khảo:
|