Tôi đang lên kế hoạch triển khai mẫu thiết kế kiến trúc MVVM cho ứng dụng Android của mình. Tôi đã đọc trực tuyến rằng nó sẽ giúp tôi đạt được hiệu quả tách mối quan tâm và dễ dàng viết các trường hợp thử nghiệm cho mô hình dữ liệu, giao diện người dùng, vv Cần một số cái nhìn sâu sắc/tư vấn cho việc này.Làm cách nào để triển khai hiệu quả mẫu thiết kế MVVM cho ứng dụng Android của tôi cũng sẽ dễ dàng viết các trường hợp kiểm tra?
Trả lời
Vâng, phải học cách sử dụng hiệu quả MVVM, bắt đầu với Android MVVM Design Pattern Examples
Ở đây bạn sẽ tìm thấy bài đó:
Tôi là nhà phát triển của Android-Binding. Giống như @Brentley đã nói, đó là một dự án rất mới nhưng tôi hy vọng sẽ nhận được nhiều thông tin và trải nghiệm hơn vì vậy rằng nó có thể được cải thiện. Về câu hỏi của bạn, tôi đã viết một số giới thiệu đơn giản/hướng dẫn về MVVM với android-ràng buộc:
- Android MVVM Tutorials (with android binding)
- Introduction to Android Binding (codeproject)
- Model Validation in Android Binding (codeproject)
- Wiki in project homepage
chấp tiềm năng cũng hài lòng đăng ký trên project discussion group.
Đọc toàn bộ chủ đề. Bạn sẽ nhận thấy rằng MVVM
là khuôn khổ tương đối mới và nó rất khuyến khích để làm việc với nó hợp tác với Google và thư viện dependency injection thư viện p Data Binding
như Roboguice
hoặc Dagger2
...
... nhưng tốt nhất là cái này:
nơi một tác giả được giải thích bằng MVVM với thư viện Ràng buộc dữ liệu bằng ví dụ - Ý tôi là bởi ứng dụng tạo riêng của mình. Ông kết luận:
Vẫn còn quá sớm để biết cách tiếp cận này có đúng cách để phát triển ứng dụng hay không, nhưng thử nghiệm này đã cho tôi cơ hội xem xét một trong các khả năng cho các dự án trong tương lai. Đó là điều tôi chắc chắn muốn chơi với nhiều thứ hơn.
Model-View-ViewModel
thật thú vị vì trong kiến trúc Android truyền thống, bộ điều khiển sẽ đẩy dữ liệu đến chế độ xem. Bạn sẽ tìm thấy chế độ xem trong Hoạt động của mình, sau đó đặt nội dung trên đó.
Với MVVM, ViewModel
làm thay đổi một số nội dung và thông báo khung dữ liệu ràng buộc về nội dung đã thay đổi. Sau đó, khung làm việc tự động cập nhật bất kỳ chế độ xem nào, được ràng buộc với nội dung đó.
Hai thành phần này chỉ được kết hợp lỏng lẻo qua giao diện dữ liệu và lệnh đó.
Tiếp theo, việc sử dụng MVVM
thực sự có thể kiểm chứng.Từ MVVM on Android: What You Need to Know
Bởi vì một
ViewModel
không phụ thuộc vào cácView
nữa, bạn có thể kiểm tra mộtViewModel
mà không có mộtView
thậm chí hiện có. Với tiêm phụ thuộc thích hợp cho các phụ thuộc khác, nó rất đơn giản để kiểm tra. Ví dụ, thay vì liên kết VM với chế độ xem thực, người ta có thể tạo VM trong một trường hợp thử nghiệm, cung cấp cho nó một số dữ liệu, sau đó gọi hành động trên đó, để đảm bảo dữ liệu được chuyển đổi đúng cách. (...) Tất cả điều này có thể được thực hiện mà không cần phải tương tác với Chế độ xem thực tế.
đọc thêm: MVVM ON ANDROID USING THE DATA BINDING LIBRARY
Hy vọng nó sẽ giúp
- 1. Mẫu thiết kế MVVM của Android
- 2. Các mẫu để tạo mã C++ dễ kiểm tra
- 3. Cách viết các trường hợp kiểm tra?
- 4. Triển khai MVVM cho ứng dụng WinForm
- 5. Tôi có nên sử dụng IEquatable để dễ dàng kiểm tra các nhà máy?
- 6. Mẫu thiết kế để triển khai plugin trong ứng dụng của bạn?
- 7. Kế hoạch phát triển trong Firebase dễ dàng "DoSsable"?
- 8. Làm thế nào để triển khai mã bitbucket của tôi dễ dàng đến máy chủ sản xuất của tôi
- 9. Làm cách nào để triển khai ứng dụng Android cho thiết bị?
- 10. Bạn sẽ triển khai đuôi hiệu quả như thế nào?
- 11. Có cách nào dễ dàng hơn để hợp nhất các Biểu mẫu Windows.
- 12. Tôi làm cách nào để tự động kiểm tra chức năng của các ứng dụng iOS và Android?
- 13. Bạn sử dụng mẫu thiết kế/mẫu thiết kế ứng dụng PHP nào?
- 14. Sử dụng dữ liệu thiết kế WPF với mẫu MVVM
- 15. Làm cách nào để triển khai ứng dụng php
- 16. Làm cách nào để đặt tên ứng dụng được triển khai của tôi?
- 17. Cách thiết lập môi trường cho các kiểm tra thanh toán trong ứng dụng BlackBerry?
- 18. Cách kiểm tra hiệu suất của một ứng dụng Android?
- 19. Một công cụ để kiểm tra mã IL dễ dàng
- 20. Viết các trường hợp kiểm tra (Rspec) cho ứng dụng hiện có
- 21. Công cụ tốt nhất và dễ dàng để kiểm tra đơn vị ứng dụng Android là gì?
- 22. Thiết kế hiệu quả cho ứng dụng di động làm mới tự động
- 23. Làm thế nào để thiết lập MongoDB cho các bài kiểm tra tích hợp trong NodeJS?
- 24. Tôi làm cách nào để triển khai Cấp phép Google Play cho ứng dụng Android?
- 25. Làm cách nào để kiểm tra cách khách hàng sử dụng ứng dụng Cocoa của tôi?
- 26. Cách triển khai thanh tiến trình bằng mẫu MVVM
- 27. Thiết lập Node.js để dễ triển khai và cập nhật
- 28. Trong trường hợp nào Log.wtf của Android sẽ chấm dứt ứng dụng của tôi?
- 29. Cách dễ dàng để kiểm tra thông tin xác thực của người dùng LDAP
- 30. Làm thế nào để một LAMP Guy có thể dễ dàng triển khai WebSockets?
Giới thiệu về bài stablekernel blog, tôi đã đọc nó một vài ngày trước đây, nhưng tôi phải lưu ý rằng nó không phải là hoàn toàn MVVM tuân thủ. Nó mang lại quan điểm về ViewModel (OnFocusListener, View type). Giống như tất cả mọi thứ từ Google nó dường như không được suy nghĩ rất tốt hoặc đang trưởng thành. Các Xml Layouts vẫn không thực sự linh hoạt như XAML cho Ví dụ, do đó, nó vẫn sẽ ** rất khó để thực hiện MVVM đúng vào Apps – Tseng
Devs luôn nói MVP trưởng thành hơn và dễ dàng cho phép các nhà phát triển thử nghiệm so với MVVM! –
Tôi không mua vào kiến trúc này đến từ Knockout js và chuyển sang thông lượng/phản ứng. Nó chỉ đơn giản là không thể đoán trước. – frostymarvelous