Hướng dẫn observer pattern trong javascript
Pattern hay Design Pattern là gì? Show
Theo Wiki, Design Pattern là Mẫu thiết kế. Một mẫu thiết kế phần mềm đã được các chuyên gia thiết kế và chứng minh rằng nó tối ưu nhất cho vấn đề nào đó. Design Pattern không phải là một thiết kế đã hoàn chỉnh để bạn Copy -> Paste rồi chạy chương trình.Nó là một mô tả hoặc mẫu hướng dẫn làm thế nào để giải quyết một vấn đề trong nhiều tình huống khác nhau. Các Mẫu thiết kế là Best Practices (cách làm tốt nhất) mà các lập trình viên có thể dùng để giải quyết các vấn đề phổ biến khi thiết kế một phần mềm. Javascript Pattern thì là các mẫu thiết kế dành riêng cho Javascript. Dưới đây là TOP 10 Javascript Pattern mà mọi Lập trình viên hàng đầu thích sử dụng: Top 10 Javascript Pattern 1. Constructor Pattern | TOP 10 Javascript PatternTrong các ngôn ngữ lập trình hướng đối tượng cổ điển, hàm tạo (Constructor) là một phương thức đặc biệt được sử dụng để khởi tạo một đối tượng mới được tạo sau khi bộ nhớ đã được cấp phát cho nó. Trong JavaScript hầu hết mọi thứ là một đối tượng (object), nên chúng ta thường quan tâm nhất đến các hàm tạo đối tượng (object constructor). > Có thể bạn muốn biết: Tất tần tật về Constructor trong JavaVì các hàm tạo đối tượng được sử dụng để tạo các loại đối tượng cụ thể, ví dụ:
Top 10 Javascript Pattern: Constructor Pattern Bên trong một hàm tạo, từ khóa
2. Module Pattern | TOP 10 Javascript PatternCác Module là một phần không thể thiếu của bất kỳ kiến trúc ứng dụng mạnh mẽ nào và Module - Pattern thường giúp giữ cho mã nguồn của dự án được Clean. Có một số tùy chọn để thực hiện các module. Bao gồm các:
Object literals:
Module - Pattern: Top 10 Javascript Pattern: Module Pattern Chúng ta hãy thử xem xét việc triển khai Module - Pattern bằng cách tạo một Module độc lập.
3. Revealing Module Pattern | TOP 10 Javascript PatternMột điều mà Revealing Module có thể làm là tránh lặp lại tên của main object khi chúng ta muốn gọi một phương thức public từ phương thức khác hoặc truy cập các biến public. 4. Singleton Pattern | TOP 10 Javascript PatternDo đó, Singletons Pattern được biết đến vì nó hạn chế khởi tạo một lớp thành một đối tượng. Singletons khác với các static class vì chúng ta có thể trì hoãn việc khởi tạo chúng. Nói chung vì chúng yêu cầu một số thông tin có thể không có sẵn trong thời gian khởi tạo. Đối với mã không biết về tham chiếu trước đó, chúng không cung cấp phương thức để dễ dàng truy xuất. Chúng ta hãy xem cấu trúc của singleton: 5. Observer Pattern | TOP 10 Javascript PatternObserver Pattern là một mẫu thiết kế trong đó một đối tượng duy trì một danh sách các đối tượng tùy thuộc vào người quan sát, tự động thông báo cho họ về bất kỳ trạng thái thay đổi nào. Top 10 Javascript Pattern: Observer Pattern
Khi một Subject cần thông báo cho Observer về điều gí đó xảy ra, nó sẽ phát thông báo cho Observer (bao gồm cả dữ liệu cụ thể liên quan đến chủ đề của thông báo) Khi chúng ta không còn muốn cho một Observer cụ thể nhận thông báo về những thay đổi của Subject mà nó được đăng ký, Subject có thể xóa nó khỏi danh sách Observers. Trong các bài viết khác, tôi sẽ nói nhiều hơn về tính năng làm thế nào mà Observer được sử dụng rộng rãi trong JavaScript. 6. Mediator Pattern | TOP 10 Javascript PatternTop 10 Javascript Pattern: Mediator Pattern Nếu xuất hiện một hệ thống có quá nhiều mối quan hệ trực tiếp giữa các components thì... Có lẽ đã đến lúc cần có một trung tâm điều khiển để các components giao tiếp.Mediator Pattern thúc đẩy sự liên kết lỏng lẻo này bằng cách đảm bảo các components tham chiếu lẫn nhau một cách rõ ràng. 7. Prototype Pattern | TOP 10 Javascript PatternMột trong những lợi ích của việc sử dụng Prototype Pattern là chúng ta đã làm việc nhiều với các ưu điểm của Prototype mà JavaScript cung cấp một cách tự nhiên thay vì cố gắng bắt chước các tính năng của các ngôn ngữ khác. Hãy xem ví dụ: 8. Factory Pattern | TOP 10 Javascript PatternFactory Pattern có thể cung cấp một generic interface để tạo các đối tượng, trong đó chúng ta có thể chỉ định loại factory object mà chúng ta muốn tạo. Hãy xem sơ đồ bên dưới: Top 10 Javascript Pattern: Factory Pattern 9. Mixin Pattern | TOP 10 Javascript PatternMixins là các class cung cấp chức năng có thể dễ dàng được kế thừa bởi một class con hoặc nhóm các lớp con cho mục đích tái sử dụng hàm.
Trong trường hợp này, Superhero có khả năng ghi đè bất kỳ giá trị được kế thừa nào với các giá trị cụ thể cho đối tượng của nó. Top 10 Javascript Pattern: Mixin Pattern 10. Decorator Pattern | TOP 10 Javascript PatternCác Decorator Pattern là một structural design pattern nhằm mục đích thúc đẩy việc tái sử dụng code. Tương tự như Mixins, chúng có thể được coi là một phương án khả thi khác để phân lớp đối tượng. Đặc biệt, Decorators cung cấp khả năng thêm hành vi cho các lớp hiện có trong hệ thống một cách linh hoạt. Ý tưởng là bản thân Decoration không cần thiết cho chức năng cơ bản của class. Hãy xem cách Decorator hoạt động trong JavaScript như thế nào. Tổng kếtCó thể không nên sử dụng tất cả Javascript Pattern cho dự án của bạn mà chỉ cần 1 pattern như Observer Pattern để mang lại hiệu quả tốt (mình ví dụ thế) Quan trọng, khi sử dụng Design Pattern thì phải hiểu rõ các vấn đề mà Pattern phù hợp nhất.Sử dụng Pattern phù hợp cũng khiến bạn dễ dàng tích hợp chúng vào ứng dụng của mình và khi sử dụng phù hợp: Lợi ích mà Pattern mang lại là rất lớn. Jay Chow > Ngoài Javascript Pattern Bạn cũng sẽ được giới thiệu về Pattern khác khi HỌC LẬP TRÌNH JAVA WEB tại NIIT - ICT Hà Nội. --- HỌC VIỆN ĐÀO TẠO CNTT NIIT - ICT HÀ NỘI Học Lập trình chất lượng cao (Since 2002). Học làm Lập trình viên. Hành động ngay! Đc: Tầng 3, 25T2, N05, Nguyễn Thị Thập, Cầu Giấy, Hà Nội SĐT: 02435574074 - 0914939543 Email: Fanpage: https://facebook.com/NIIT.ICT/ #niit #niithanoi #niiticthanoi #hoclaptrinh #khoahoclaptrinh #hoclaptrinhjava #hoclaptrinhphp |