Design Pattern, Java, OO Design Principles, Programming Tutorial

Avoid NullPointerException in Java

I would like to share with you some tips to deal/prevent NPE in your code: The BIG IMPORTANT rule: do NOT assign / pass / return null value and keep your code as cohesive as possible. Programming tips / techniques: 1. Return an empty collections instead of null. For example: List: Set: Map: 2. Return… Continue reading Avoid NullPointerException in Java

Design Pattern, Java, OO Design Principles, Programming Tutorial

The Dependency Inversion Principle

The Dependency Inversion Principle (DIP) (Tạm dịch là nguyên lý đảo ngược sự phụ thuộc) Đây là nguyên lý cuối cùng trong 5 nguyên lý cơ bản trong thiết kế hướng đối tượng SOLID. Nguyên lý này chỉ ra rằng các lớp high-level không được phụ thuộc vào các lớp low-level. Thay vì để các… Continue reading The Dependency Inversion Principle

Design Pattern, Java, OO Design Principles, Programming Tutorial

The Interface Sergregation Principle

The Interface Segregation Principle (Nguyên lý phân tách interface) Đây là nguyên lý thứ 4 trong 5 nguyên lý của thiết kế hướng đối tượng SOLID. Nó giúp giảm sự cồng kềnh, dư thừa không cần thiết cho phần mềm và quan trọng hơn là giảm sự kết dính làm hạn chế tính linh động (flexibility)… Continue reading The Interface Sergregation Principle

Database, Java, NoSQL, Programming Tutorial

Sử dụng Java để làm việc với MongoDB như nào?

Ở bài viết trước, tôi đã giới thiệu sơ qua về NoSQL và MongoDB. Hy vọng bạn đã bỏ chút thời gian để tìm đọc các thông tin về chúng. Trong bài viết này, tôi sẽ đi vào việc sử dụng MongoDBtrong lập trình Java để thao tác dữ liệu (CRUD: Create Read Update Delete). Qua bài… Continue reading Sử dụng Java để làm việc với MongoDB như nào?

Programming Tutorial

Bí quyết giúp bạn học lập trình tốt hơn

Học lập trình không phải là chuyện mà ta có thể làm trong một sớm, một chiều, nhưng nó không phải là quá khó khăn. Có rất nhiều điều bạn có thể làm cho nó dễ dàng hơn khi bạn học lập trình. Bài viết sau đây được tham khảo từ trang web cprogramming.com sẽ… Continue reading Bí quyết giúp bạn học lập trình tốt hơn

Programming Tutorial

Inheritance Vs. Interfaces

Many high-level languages support inheritance and interfaces, and for someone new to the concepts, it's sometimes not clear which one to choose. Although languages differ in their exact handling of inheritance and interfaces, the basics are usually the same, so this tip should be valid for most languages. Inheritance means that we derive one class… Continue reading Inheritance Vs. Interfaces

C, C++, C++/CLI, Programming Tutorial

Lập trình C++ | Cách đọc 1 statement

Đầu tiên, nói đến C++ thì ta phải hiểu C++ là 1 ngôn ngữ có cú pháp rất logic và rất khó chịu. Trong C++ không có may rủi hay đoán mò được, để hiểu thấu đáo thì ta phải từng bước từng bước dòng lệnh của nó. Bài này mình sẽ giới thiệu cách làm sao… Continue reading Lập trình C++ | Cách đọc 1 statement