Mình không đồng ý với ý tưởng "tương tác giữa view và presenter". View (interface) nên passive nhất có thể, nó không nên biết về implementation của presenter. Nếu có sự tương tác từ cả 2 phía sẽ dẫn đến việc 2 class này liên kết quá chặt với nhau, như vậy thì cũng không khác gì vanilla Android - một activity chứa hết tất cả - chỉ khác ở chỗ bạn có nhiều file hơn thôi.
Về việc bạn muốn có một cái nhìn tổng quan về những thứ mà presenter làm, nhưng class presenter lại quá to? Đơn giản nếu bạn đang dùng Android Studio, bạn có thể vào Code->Folding->Collapse All, tất cả method body sẽ được ẩn đi và chỉ giữ lại tên hàm, như vậy cũng đâu có khác gì nhìn vào interface đúng không?
Theo mình thì lớp Contract chứa interface View và Presenter để mình có 1 cái nhìn tổng quan về sự tương tác giữa view và presenter. Cái này giúp mình code rõ ràng hơn chứ không hẳn là phí thời gian.
Thanks bạn. Nếu bạn làm chat với chăm sóc khách hàng trên laravel, nếu có thể thì bạn có thể share các tuts hoặc code trên github biết đâu có người cần. Về cơ bản mình cũng có thể học. Mình đang follow bạn trên github rồi
Rất cảm ơn bạn đã tham gia Code War 2017.
Hy vọng có thể được gặp lại bạn ở kỳ Code War lần sau, và lúc đó nhớ chuẩn bị cho mình một team thật mạnh để cạnh tranh giải nhé
Mình chưa biết cakePHP nhưng xem qua thì đây cũng là một framework cho Php, do đó bạn cứ tạo server NodeJs là một file js trong ứng dụng của bạn và làm như ứng dụng chat thông thường thôi không cần quan tâm tới code trong cakePHP đâu, mình đã thử tích hợp với Laravel, hoặc bạn có thể tìm hiểu chat với google firebase thay vì socket cũng có khá nhiều bài hướng dẫn đó.
Và ứng dụng demo trên đây của mình thì khá đơn giản, nó chỉ giúp mình hiểu cơ bản về NodeJs và socket.io thôi bạn nhé
Vâng cảm ơn ad đã rep, tại lúc thấy đáp án em thấy hình như mình điền vào như vậy nên em thắc mắc muốn xác nhận lại xem đúng hay không thôi ) chứ dù sao cũng kết thúc rồi.
Em tham gia 1 mình để giải đố cho vui thôi mà trùng ngày kiểm tra trên trường nên làm được nhiêu hay nhiêu. :v
THẢO LUẬN
@khanh.nguyen Hi Khánh,
Mình không đồng ý với ý tưởng "tương tác giữa view và presenter". View (interface) nên passive nhất có thể, nó không nên biết về implementation của presenter. Nếu có sự tương tác từ cả 2 phía sẽ dẫn đến việc 2 class này liên kết quá chặt với nhau, như vậy thì cũng không khác gì vanilla Android - một activity chứa hết tất cả - chỉ khác ở chỗ bạn có nhiều file hơn thôi.
Về việc bạn muốn có một cái nhìn tổng quan về những thứ mà presenter làm, nhưng class presenter lại quá to? Đơn giản nếu bạn đang dùng Android Studio, bạn có thể vào Code->Folding->Collapse All, tất cả method body sẽ được ẩn đi và chỉ giữ lại tên hàm, như vậy cũng đâu có khác gì nhìn vào interface đúng không?
Theo mình thì lớp Contract chứa interface View và Presenter để mình có 1 cái nhìn tổng quan về sự tương tác giữa view và presenter. Cái này giúp mình code rõ ràng hơn chứ không hẳn là phí thời gian.
demo co xem dc dau, troll nhau ah
Nhiều game vậy, trong khi đoán sai mất 1 game là bị out, mà mình lại chơi random, vậy thì sao win ạ, em chưa hiểu lắm
@t-rekttt Sau khi làm hết 5 digits bạn sẽ còn gặp 6 digits nữa cơ
Vì một số lý do nên ban tổ chức sẽ cập nhật phần write-up cho bài Old Riddle (cũng tại bài viết này) sau nhé bạn. Rất xin lỗi bạn vì sự bất tiện này.
@codewar còn bài Old Riddle thì sao ạ
Thế mới khó =)) tổng cộng có 30 game, chia đều cho 4, 5, 6 digits
Em dùng StegSolve extract data đủ kiểu bài này không thấy flag, hóa ra dùng Js lib @@
Bài Shall we play a game em có viết Python script để chơi, nhưng mỗi khi đúng thì nó lại ra số khác, sau 1 hồi hết 4 digits thì ra 5 digits. Why....?
R.I.P bạn =)) ... đùa thôi, phần nguy hiểm của nó đã bị bỏ đi rồi bạn nhé
cái bài "Trust Me" trót chạy vài lần cái con virus đấy rồi thì máy có làm seo ko nhỉ =))
Bài CodeWar.js củ chuối nhỉ
Cảm ơn bạn nhé, chat đó mình đang làm dở, giờ đang bận đồ án, nào hoàn thành mình sẽ viết tut hehe
Thanks bạn. Nếu bạn làm chat với chăm sóc khách hàng trên laravel, nếu có thể thì bạn có thể share các tuts hoặc code trên github biết đâu có người cần. Về cơ bản mình cũng có thể học. Mình đang follow bạn trên github rồi
@t-rekttt Mình đã cập nhật link của write-ups phần 2, với những hướng dẫn cho các bài còn lại, trong đó có
CodeWar.js. Hy vọng có thể giúp ích cho bạnRất cảm ơn bạn đã tham gia Code War 2017. Hy vọng có thể được gặp lại bạn ở kỳ Code War lần sau, và lúc đó nhớ chuẩn bị cho mình một team thật mạnh để cạnh tranh giải nhé
Mình chưa biết cakePHP nhưng xem qua thì đây cũng là một framework cho Php, do đó bạn cứ tạo server NodeJs là một file js trong ứng dụng của bạn và làm như ứng dụng chat thông thường thôi không cần quan tâm tới code trong cakePHP đâu, mình đã thử tích hợp với Laravel, hoặc bạn có thể tìm hiểu chat với google firebase thay vì socket cũng có khá nhiều bài hướng dẫn đó. Và ứng dụng demo trên đây của mình thì khá đơn giản, nó chỉ giúp mình hiểu cơ bản về NodeJs và socket.io thôi bạn nhé
Vâng cảm ơn ad đã rep, tại lúc thấy đáp án em thấy hình như mình điền vào như vậy nên em thắc mắc muốn xác nhận lại xem đúng hay không thôi
) chứ dù sao cũng kết thúc rồi.
Em tham gia 1 mình để giải đố cho vui thôi mà trùng ngày kiểm tra trên trường nên làm được nhiêu hay nhiêu. :v
Chờ nốt writeup phần còn lại, em hóng bài CodeWar.js :v