Có thể chúng ta đã gặp Design patterns ở đâu đó trong các ứng dụng, cũng có thể chúng ta đã từng sử dụng những mẫu tương tự như Design pattern để giải quyết những tình huống của mình, nhưng chúng ta không rõ hoặc không có một khái niệm gì về nó. Trong bài […]
Tránh lỗi ConcurrentModificationException trong Java như thế nào?
Một trong những vấn đề phổ biến trong khi loại bỏ các phần tử từ một ArrayList trong Java là ConcurrentModificationException. Nếu bạn sử dụng vòng lặp foreach và cố gắng thêm/ xóa phần tử khỏi ArrayList bằng phương thức remove(), bạn sẽ nhận được ConcurrentModificationException. Tuy nhiên, nếu bạn sử dụng phương thức xóa […]
Một số nguyên tắc, định luật trong lập trình
Ở bài trước tôi đã giới thiệu với các bạn các bạn Các nguyên tắc thiết kế hướng đối tượng – SOLID. Trong bài này, tôi sẽ giới thiệu với một số nguyên tắc, định luật trong lập trình mà các bạn nên biết để phát triển chương trình của bạn tốt hơn. The Law of […]
Các nguyên lý thiết kế hướng đối tượng – SOLID
Chào các bạn, trong các bài viết trước tôi đã giới thiệu với các bạn 4 tính chất cơ bản của lập trình hướng đối tượng trong Java. Đây là các tính chất rất quan trọng của lập trình hướng đối tượng (OOP) mà hầu hết chúng ta đã biết, nhưng cách thức để phối […]
Tránh lỗi NullPointerException trong Java như thế nào?
Trong bài này, tôi muốn chia sẽ với các bạn một vài kinh nghiệm code để hạn chế lỗi NullPointerException (NPE) trong chương trình Java. Nguyên tắc chung: KHÔNG khởi tạo, truyền tham số, trả kết quả về là một giá trị NULL và giữ cho code càng đơn giản càng tốt. Dưới đây là một […]
Giới thiệu WatchService API trong Java
Giới thiệu Khi đang chỉnh sửa một tệp, sử dụng một IDE hay một trình soạn thảo khác, và một hộp thoại xuất hiện để thông báo cho bạn rằng một trong các tệp đang mở đã thay đổi trên hệ thống tệp và cần được tải lại? Hay một trình quản lý file có […]
Base64 encoding và decoding trong Java 8
Trong bài này, chúng ta sẽ cùng tìm hiểu chức năng mã hóa (encode) và giải mã (decode) theo chuẩn Base64 trong Java 8 và sử dụng thư viện Apache Commons Code. Giới thiệu Encode và Decode là gì? Encode và Decode là những khái niệm dùng để chỉ đến việc chuyển đổi dữ liệu cho […]
String Joiner trong Java 8
Trong bài này chúng ta cùng xem một số cách cộng chuỗi (string concat/ joiner) trong Java và tính năng mới StringJoiner trong Java 8. Sử dụng StringBuilder/ StringBuffer Trước Java 8, để có thể ghép các chuỗi với một dấu phân cách, thường chúng ta phải lặp qua các phần tử của một mảng […]







