Khi bạn thêm Moster mới hay Human mới hay Skill mới thì chỉ ảnh hưởng tới lớp visitor mà không tác động nhiều tới Human hay Moster [định nghĩa các thao tác(level, hp) trên một tập hợp các đối tượng (moster) không đồng nhất (dracula, dogie) mà không làm thay đổi định nghĩa về lớp(Moster) của các đối tượng đó]
Đơn giản hơn Human dáng một Skill "dáng long thập bát chưởng" về phía con Moster (new Skill()), Moster không kịp né và nhận ngay đòn ấy (Moster.accept(skill)), và Skill này phá vỡ lớp áo giáp sau đó đánh thẳng vào huyệt đạo làm đứt đoạn mạch máu của Moster và làm Moster tổn thương nghiêm trọng (skill.visit()). Mai một Human học được thêm kĩ năng mới thì moster vận thế chỉ Skill.visit() là thay đổi
class Warrior implement Human {
int level = 10;
void hit(Moster moster) {
for(int i = 0; i < 1000 ; i ++) {
moster.accept(new DangLongThapBatChuong(level));
}
}
}
class Dogie implement Moster {
int level;
public void accept(Skill dltbc) {
dltbc.visit(this);
}
public void dagamed(int hp) {
System.out.println("Owie! I lost " + hp + "hp ᙙᙖ");
}
public int getLevel() {
return level;
}
}
class DangLongThapBatChuong implement Skill {
int level;
public DangLongThapBatChuong(int lv) {
level = lv;
}
visit(Dogie dogie) {
System.out.println("Dang long thap bat chuong :v :v ");
dogie.dagamed((lv + 100 - degie.getLevel())* 10);
}
}
(Mình viết sấu quá, mong ai có tâp edit lại giùm, xin cảm ơn!)
Nhiều đoạn đọc thấy khó hiểu quá, câu văn lủng củng ...
ví dụ "Làm thế nào kiên cường làm bạn cần công việc của bạn là để thất bại? Làm thế nào nhiều thêm phụ thuộc được bạn thoải mái thêm vào hệ thống của bạn? Làm thế nào nhiều sự hỗ trợ nào bạn nghĩ rằng bạn có thể yêu cầu trong tương lai? Làm thế nào có liên quan là bạn về việc chia sẻ tài nguyên với các ứng dụng hiện tại của bạn? Làm thế nào ổn định bạn có yêu cầu API được? Bạn có cần 'cao cấp' các tính năng như tốc độ giới hạn, trạm trộn, vv? Dưới đây là một bảng đơn giản so sánh từng trong những khuôn khổ, chúng tôi đã đề cập trong một số lĩnh vực quan trọng:
"
thế này thì hiểu sao được?
Mình thấy mấy từ này để tiếng anh dễ hiểu hơn tiếng việt. Và có một số từ ở trên khi dịch sang tiếng việt như cậu sẽ không ổn.
インターネット Internet Liên mạng
インターフェース Interface Giao diện
ウェブ Web Lưới, mạng lưới
エンドユーザ End user Người dùng trực tiếp
リリース (する) Release Giải phóng, giải thoát
マイルストーン Milestone Mốc lịch sử
ゴール Goal Bộ luật
クラス Class Tầng lớp
カテゴリー Category Phạm trù, hạng mục
Mình cũng đang như bạn nè về cả nghề nghiệp lẫn định hướng. Nếu có cơ hội trao đổi thêm thì tốt quá, nếu được bạn add nick skype mình nhé. //vensorah//
lần sau anh có thể giải thích qua mấy cái định nghĩa . ví dụ ở cái giải thích uv ấy anh nói qua nó là gì rồi đưa link chi tiết chứ em đọc đang máu thì lại phải quay ra tìm hiểu uv nó là cái gì .
Bạn hãy kiểm tra xem bạn có load đống ảnh kia trên main thread ko nhé, nếu là trên main thì cần phải để nó dưới backgroud, các tiến trình không cập nhật UI mà để trên main sẽ lock thao tác sử dụng, hãy cẩn thận vấn đề này.
THẢO LUẬN
Rât hay và đang hóng tập tiếp theo của bài viết này
Giả sử version của trò chơi. Human, Monster, có nhiều level
Trong human khi Human hit Monster ta gọi hàm monster.acept(skillA);
vay Skill la visitor; Human level 10 thì skill = Skill(10)
con Moster là element; Moster level 10 thì hp = congThuc()
Khi bạn thêm Moster mới hay Human mới hay Skill mới thì chỉ ảnh hưởng tới lớp visitor mà không tác động nhiều tới Human hay Moster [định nghĩa các thao tác(level, hp) trên một tập hợp các đối tượng (moster) không đồng nhất (dracula, dogie) mà không làm thay đổi định nghĩa về lớp(Moster) của các đối tượng đó]
Đơn giản hơn Human dáng một Skill "dáng long thập bát chưởng" về phía con Moster (new Skill()), Moster không kịp né và nhận ngay đòn ấy (Moster.accept(skill)), và Skill này phá vỡ lớp áo giáp sau đó đánh thẳng vào huyệt đạo làm đứt đoạn mạch máu của Moster và làm Moster tổn thương nghiêm trọng (skill.visit()). Mai một Human học được thêm kĩ năng mới thì moster vận thế chỉ Skill.visit() là thay đổi
(Mình viết sấu quá, mong ai có tâp edit lại giùm, xin cảm ơn!)
Nhiều đoạn đọc thấy khó hiểu quá, câu văn lủng củng ... ví dụ "Làm thế nào kiên cường làm bạn cần công việc của bạn là để thất bại? Làm thế nào nhiều thêm phụ thuộc được bạn thoải mái thêm vào hệ thống của bạn? Làm thế nào nhiều sự hỗ trợ nào bạn nghĩ rằng bạn có thể yêu cầu trong tương lai? Làm thế nào có liên quan là bạn về việc chia sẻ tài nguyên với các ứng dụng hiện tại của bạn? Làm thế nào ổn định bạn có yêu cầu API được? Bạn có cần 'cao cấp' các tính năng như tốc độ giới hạn, trạm trộn, vv? Dưới đây là một bảng đơn giản so sánh từng trong những khuôn khổ, chúng tôi đã đề cập trong một số lĩnh vực quan trọng: " thế này thì hiểu sao được?
Bài này giải thích rất rõ ràng, phải chăng đây là một trong những chìa khóa thành công của các doanh nghiệp Nhật.
Bài này rất hữu ích anh ạ, nhưng tiếc là em chưa được deploy thử lần nào.
Mình thấy mấy từ này để tiếng anh dễ hiểu hơn tiếng việt. Và có một số từ ở trên khi dịch sang tiếng việt như cậu sẽ không ổn.
インターネット Internet Liên mạng インターフェース Interface Giao diện ウェブ Web Lưới, mạng lưới エンドユーザ End user Người dùng trực tiếp リリース (する) Release Giải phóng, giải thoát マイルストーン Milestone Mốc lịch sử ゴール Goal Bộ luật クラス Class Tầng lớp カテゴリー Category Phạm trù, hạng mục
Mình cũng đang như bạn nè về cả nghề nghiệp lẫn định hướng. Nếu có cơ hội trao đổi thêm thì tốt quá, nếu được bạn add nick skype mình nhé. //vensorah//
Mọi người thử AZGram nhé. chat. gọi điện, gọi video, gọi tới số điện thoại. http://www.azgram.com/download/
Mình build bị lỗi này bạn giúp mình với ..Thanks!
lần sau anh có thể giải thích qua mấy cái định nghĩa . ví dụ ở cái giải thích uv ấy anh nói qua nó là gì rồi đưa link chi tiết chứ em đọc đang máu thì lại phải quay ra tìm hiểu uv nó là cái gì .
love u
@pham ky khoi Thanks
STL có phải là standard template library phải ko ạ, standard library của C++ phải ko ạ
@helix
Bạn có thể nói rõ hơn ví dụ của mình có điểm nào chưa đúng nhỉ?
Tham khảo UML từ wiki:
Như vậy ở ví dụ của mình
Humansẽ đóng vai trò làElement, methodhitđóng vai trò nhưaccept.Từ đó,
ConcreteElementsẽ gồm cóWarrior,WizzardVisitortrong ví dụ này sẽ làMonster, interface này cần có các methodvisittương ứng với từngConcereteElement, chính là các methodhitByđó vậyBạn hãy kiểm tra xem bạn có load đống ảnh kia trên main thread ko nhé, nếu là trên main thì cần phải để nó dưới backgroud, các tiến trình không cập nhật UI mà để trên main sẽ lock thao tác sử dụng, hãy cẩn thận vấn đề này.
theo tôi thấy ví dụ của tác giả chưa thực sự đúng với mục tiêu của pattern này.ngay từ việc có 2 interface cho 2 đối tượng chính
Nice profile pic vai. Also, nice article (y)
(good)
Ra nhiều bài nữa Minh nhé. Có thời gian tớ sẽ tìm hiểu cái này
Dạo này bận quá