Refactoring của Martin Fowler đã ra bản 2 rồi nhưng bản 1 còn chưa đọc xong. https://refactoring.com/catalog/ Có nhiều kỹ thuật khá cool về kỹ thuật coding, refactor code, OOP ... Nhiều kỹ thuật bên OOP tôi ko biết nhưng qua các ví dụ refactor thì học thêm được 1 cách tiếp cận nó. VD như nhiều pattern nổi tiếng như Observer Pattern, Replace Type Code with State/Strategy ... khá hay. Trong 1 bài về nghiên cứu về Wordpress mình thấy Observer Pattern chỉ là hữu danh vô thực, rất ít thư viện, app thực tế dùng observer pattern. http://cheatortrick.blogspot.com/2018/02/design-pattern-kien-truc-wordpress-so.html Consolidate Conditional Expression Consolidate Duplicate Conditional Fragments semantics preserving change => Gtrans "ngữ nghĩa bảo tồn thay đổi" Design: Translations of design verb bày ra một kiểu design dành riêng cho design dự định design, purpose, predetermine, provide quyết định cho design sáng kiến design sắp đặt layout, dispose,...