Đặc điểm của cuốn sách
Các mẫu thiết kế đầu tiên cho chúng ta biết các mẫu là gì, cách sử dụng chúng và cách suy nghĩ về chúng. Mẫu là một khuôn mẫu, một giải pháp phổ quát cho một loạt vấn đề cụ thể. Ngược lại, các mẫu thiết kế là các giải pháp kiến trúc được sử dụng phổ biến có thể được sử dụng để viết các ứng dụng linh hoạt và thân thiện với người dùng. Các nhà phát triển trên toàn thế giới giải quyết những vấn đề giống nhau bằng những cách tiếp cận giống nhau. Như chú thích đã nói, nếu bạn không muốn phát minh lại cái bánh xe, hãy sử dụng các mẫu (mẫu) thiết kế làm sẵn mà cuốn sách này dành riêng để làm việc với các tệp . Riêng biệt, điều đáng chú ý là cách trình bày tài liệu: các cuốn sách trong bộ Head First nổi tiếng vì tính đơn giản và được đọc một lần. “Mẫu thiết kế” cũng không ngoại lệ. Nó cũng tuân thủ các nguyên tắc chính sau:- Hiển thị
- Phong cách trình bày hội thoại
- Một số lượng lớn các hình ảnh minh họa
- Sự tham gia tích cực của độc giả
- Kêu gọi cảm xúc
- Thu hút sự chú ý của người đọc
Chủ đề chính và ý tưởng chính
“Chắc chắn ai đó đã giải quyết được vấn đề của bạn” - đây là cách chương đầu tiên của cuốn sách bắt đầu, truyền tải toàn bộ ý nghĩa của các mẫu thiết kế trong lập trình. Mục tiêu chính là truyền tải chính xác ý nghĩa của chúng đến người đọc, bởi vì trước hết, người lập trình phải biết các mẫu dùng để làm gì và chúng cần được áp dụng vào thời điểm nào. Về cơ bản, trước tiên bạn cần sắp xếp các mẫu thành từng phần nhỏ trong đầu và chỉ sau đó mới triển khai chúng vào các chương trình. Nếu người mới bắt đầu lập trình có hiểu biết tốt về các mẫu thì việc sử dụng chúng có thể làm cho mã trở nên phức tạp hơn rất nhiều (nhưng nên đơn giản hóa nó!). Đối với câu hỏi “Tại sao nên sử dụng mẫu thiết kế?” Cuốn sách đưa ra câu trả lời rõ ràng: “Biết các khái niệm như trừu tượng, kế thừa và đa hình không giúp bạn trở thành nhà thiết kế OO giỏi. Các mẫu chứa đựng kinh nghiệm thiết kế OO đã được chứng minh.”"Bản tóm tắt"
Cuốn sách được chia thành 14 chương cộng với phần giới thiệu. Lúc đầu, các tác giả của cuốn sách cố gắng chuẩn bị cho người đọc, điều chỉnh bộ não của họ để nhận thức chính xác thông tin về thiết kế mẫu. Chương đầu tiên giải thích nguyên tắc cơ bản của các mẫu và mục đích của chúng. Một trong những mẫu được sử dụng nhiều nhất - chiến lược - có thể được kiểm tra một cách dễ dàng và kín đáo. Các chương từ hai đến mười một được dành để phân tích chi tiết các mẫu riêng lẻ :- Người quan sát. Phân phối các sự kiện trên các đối tượng quan tâm đến sự xuất hiện của chúng.
- Người trang trí. Một cái nhìn khác về tính kế thừa trong Java và cung cấp cho các lớp Java những khả năng mới mà không cần sửa đổi mã.
- Nhà máy. Mẫu lưu mã khỏi các phần phụ thuộc không mong muốn.
- Đơn. Còn được gọi là Singleton, nó cho phép bạn tạo một đối tượng lớp duy nhất cho toàn bộ chương trình.
- Đội. Mẫu này cho phép bạn gói gọn một cuộc gọi phương thức một cách thuận tiện, mở rộng khả năng của nó.
- Bộ chuyển đổi và mặt tiền. Giải quyết vấn đề không tương thích về giao diện, cũng như đóng gói các đối tượng để đơn giản hóa giao diện của chúng.
- Phương pháp mẫu. Đóng gói các khối thuật toán, cho phép các lớp con liên kết với thuật toán xử lý mong muốn bất cứ lúc nào.
- Trình lặp và Trình liên kết. Mẫu này cung cấp một công cụ thuận tiện để lặp qua các bộ sưu tập, bất kể loại của chúng là gì. Ngoài ra, chương này còn cung cấp một số thông tin về siêu bộ sưu tập.
- Tình trạng. Các đối tượng được ban cho khả năng kiểm soát hành vi của chúng thông qua những thay đổi về trạng thái bên trong của chúng.
- Phó. Một mẫu rất thuận tiện để kiểm soát quyền truy cập vào một đối tượng.
Ưu điểm và nhược điểm
Tôi cũng như nhiều người học tại JavaRush, có thái độ lạnh lùng trước những bài giảng nhàm chán, nhồi nhét tài liệu và các hành vi bạo lực khác đối với tâm lý của một học sinh khao khát kiến thức. Theo tôi, năng lượng dành cho việc ghi nhớ những văn bản khó hiểu, tốt nhất nên dành cho việc tìm kiếm các nguồn học tập thay thế. Cuốn sách này xứng đáng với thời gian và công sức của bạn. Phong cách trình bày xuất sắc, khả năng thu hút sự chú ý của người đọc một cách thành thạo và việc lặp lại các điểm chính là ưu điểm chính của cuốn sách này - sự dễ dàng tiếp thu tài liệu . Số lượng lớn hình ảnh minh họa là một điểm cộng nữa. Theo tôi, mọi bức tranh trong cuốn sách đều có vị trí của nó: tất cả đều cho phép bạn củng cố lời nói của tác giả và hiểu sâu hơn về bản chất của tài liệu. Như tôi đã viết ở trên, cuốn sách này không phải là một cuốn sách tham khảo: các tác giả của nó không có ý định liệt kê tất cả các khuôn mẫu. Nhiệm vụ chính của nó là cung cấp sự hiểu biết và nói về các mẫu cơ bản để những mẫu khác, phức tạp hơn, dễ hiểu hơn. Và cô ấy đối phó với điều này 100%. Một trong những nhược điểm là các mẫu thiết kế Head first bằng tiếng Nga không dễ đọc như tiếng Anh. Tất nhiên, mọi nhà phát triển đều phải nói tiếng Anh, nhưng những lập trình viên mới làm quen không phải lúc nào cũng phát triển kỹ năng này đến mức họ có thể đọc sách nguyên bản. Tuy nhiên, đây có thể coi là một điểm trừ bắt buộc vì tài liệu được trình bày khá chính xác và ý nghĩa vẫn được giữ nguyên.Sách bổ sung về mẫu thiết kế
Tôi là người ủng hộ niềm tin rằng tốt hơn là nên nghiên cứu các chủ đề cơ bản từ nhiều nguồn và tìm kiếm phong cách trình bày phù hợp trong đó. Khi bạn muốn đi sâu vào các mô hình và đọc lý thuyết bổ sung, tin tôi đi, bạn sẽ có thứ gì đó để chiếm trọn buổi tối của mình.-
Các kỹ thuật thiết kế hướng đối tượng. Các mẫu thiết kế (Gamma E., Helm R., Johnson R., Vlissides J.).
Đây là một ấn phẩm nghiêm túc hơn, một cuốn sách tham khảo về các khuôn mẫu, một cuốn sách rất được kính trọng của “Bè lũ bốn tên”. Nhiều người gọi nó là kinh thánh của thiết kế OO.
Trên Internet, ý kiến của các nhà phát triển được chia thành 3 phe:
- một số người cho rằng cuốn sách đã lỗi thời và phong cách trình bày khiến người đọc không thể đọc được
- những người khác khuyên bạn chỉ nên sử dụng cuốn sách này như một cuốn sách tham khảo về các mẫu, không có gì hơn
- vẫn còn những người khác nói rằng cuốn sách này là chén thánh của các mẫu thiết kế và nên đọc bởi bất kỳ ai muốn một ngày nào đó trở thành Nhà phát triển Java cấp cao
Quan trọng:Các ví dụ trong cuốn sách được viết bằng C++.
-
Java EE. Mẫu thiết kế dành cho chuyên gia (Murat Yener, Alex Fidom).
Cuốn sách này dành riêng cho việc thiết kế các ứng dụng Doanh nghiệp: nó bao gồm nhiều ví dụ về các vấn đề ứng dụng trong đời thực.
-
Các mẫu thiết kế bằng Java (Grand M.).
Cuốn sách trình bày một cách sinh động cách sử dụng các mẫu giúp tiết kiệm thời gian của nhà phát triển, cung cấp cái nhìn tổng quan về ngôn ngữ UML và mô tả 47 mẫu thiết kế.
Các mẫu thiết kế trong JavaRush
Trong khóa học JavaRush, các mẫu thiết kế được học ở cấp 7 của nhiệm vụ Bộ sưu tập Java. Bài giảng 1 và 2 được dành cho các mẫu phổ biến nhất và trong Bài giảng 4 , bạn có thể giải các bài toán về chủ đề này. Dưới đây là một số bài viết thú vị để “tăng cường sức mạnh cho bản thân”:-
Một bài viết tổng hợp về chủ đề mẫu với các danh mục, ví dụ, mọi thứ chúng tôi thích.
-
Hai bài viết về mẫu: phần 1 tổng quan và phần 2 chi tiết hơn .
-
Các mẫu thiết kế sử dụng mẫu Singleton làm ví dụ .
-
Các bài viết về mô hình “ Chiến lược ” và “ Bộ điều hợp ”.
-
Khái niệm mẫu thiết kế có liên quan đến sơ đồ UML, bài viết này sẽ giúp bạn hiểu chúng là gì.
GO TO FULL VERSION