Kiến trúc điều khiển mô hình là ý tưởng bạn tạo ra các mô hình thể hiện vấn đề bạn cần giải quyết theo cách không có bất kỳ công nghệ triển khai nào (và ít nhất là hầu hết) và sau đó bạn tạo triển khai cho một hoặc nhiều nền tảng cụ thể. Yêu cầu bồi thường là làm việc ở mức trừu tượng cao hơn là mạnh hơn và hiệu quả hơn nhiều. Ngoài ra, các mô hình của bạn còn sống động hơn công nghệ (do đó bạn vẫn có thứ gì đó khi ngôn ngữ/nền tảng đầu tiên của bạn trở nên lỗi thời mà bạn có thể sử dụng cho giải pháp thế hệ tiếp theo của mình). Một lợi ích khác được tuyên bố chủ yếu là phần lớn các bản mẫu và "công việc grunt" có thể được tạo ra. Khi máy tính hiểu được ngữ nghĩa của tình huống của bạn, nó có thể giúp bạn nhiều hơn.Bạn có đang thực hiện MDA (Kiến trúc định hướng mô hình) ngay bây giờ không? Nếu vậy, bạn sử dụng công cụ nào và công cụ này hoạt động như thế nào?
Một số tuyên bố phương pháp này hiệu quả hơn gấp 10 lần và rằng đó là cách tất cả chúng ta sẽ xây dựng phần mềm trong 10 năm.
Tuy nhiên, đây chỉ là lý thuyết. Tôi tự hỏi kết quả là gì khi cao su gặp đường. Ngoài ra, phiên bản "chính thức" của MDA là từ OMG và có vẻ rất nặng. Nó dựa chủ yếu vào UML, có thể được coi là tốt hay xấu tùy thuộc vào người bạn yêu cầu (tôi nghiêng về phía "xấu").
Nhưng, bất chấp những lo ngại đó, thật khó để tranh luận với ý tưởng làm việc ở mức trừu tượng cao hơn và "dạy" máy tính để hiểu ngữ nghĩa của vấn đề và giải pháp của bạn. Hãy tưởng tượng một loạt các mô hình ER chỉ đơn giản là thể hiện sự thật, và sau đó hãy tưởng tượng sử dụng chúng để tạo ra một phần đáng kể giải pháp của bạn, đầu tiên trong một bộ công nghệ và sau đó lại trong một bộ công nghệ khác.
Vì vậy, Tôi rất muốn nghe từ những người thực sự đang thực hiện MDA ngay bây giờ ("chính thức" hay không). Bạn đang sử dụng công cụ nào? Làm thế nào nó làm việc ra? Bạn có thể nắm bắt được bao nhiêu lời hứa lý thuyết? Bạn có thấy mức tăng hiệu quả 10X thực sự không?
Cảm ơn. Thú vị rằng ma quỷ là trong các chi tiết. Các mô hình theo định nghĩa quá đơn giản hóa, và đó là nguyên nhân khiến bạn đau nhất. +1 –
Phát triển phần mềm theo định hướng mô hình là tạo mã từ mô hình. Bạn sửa đổi mô hình meta, mô hình và các trình tạo để sửa đổi hoặc thêm hành vi. Nó không phải là về việc tạo và duy trì một mô hình độc lập được cập nhật thủ công khi bạn cập nhật mã. –
Đó chính xác là quan điểm của tôi. Tại một số điểm mã được tạo ra không còn hữu ích nữa. Ngay sau khi bạn phải bắt đầu sửa đổi mã bằng tay, quá trình này sẽ bị hỏng. –