2010-06-08 20 views
7

Vui lòng trả lời câu hỏi trong tiêu đề như tôi đã đặt ra, tôi cung cấp thêm một số chi tiết và chi tiết cụ thể bên dưới.Các cách để vượt qua hiệu ứng Nền tảng trong khi vẫn xây dựng các ứng dụng web tùy biến cao?

Hiện tại tôi đang phát triển và duy trì một ứng dụng kinh doanh di sản (ASP/SQL) có khả năng tùy chỉnh cao cho phép tùy chỉnh vừa phải trên: trường, biểu mẫu, lượt xem, báo cáo, hành động, sự kiện, quy trình làm việc, v.v. là cần thiết trong miền chúng tôi phát triển và đã cho phép chúng tôi xây dựng một niche.

Tôi đã đọc về hiệu ứng nền tảng bên trong và cách triển khai tùy chỉnh mức độ người dùng được xác định cao và kết luận rằng chúng tôi phải chịu đựng nhiều vấn đề hiệu ứng nền tảng bên trong vì cơ bản chúng tôi đã tạo ra sự trừu tượng mức cao đầu của SQL. Việc tổ chức các lĩnh vực tùy chỉnh được thực hiện trong một cách tương tự như cách tiếp cận tìm thấy ở đây

http://blog.springsource.com/arjen/archives/2008/01/24/storing-custom-fields-in-the-database/

Chúng tôi sử dụng một cái gì đó tương tự như phương pháp cơ sở dữ liệu meta mô tả trong bài viết đó. Tất cả các tùy chỉnh được xây dựng xung quanh cách tiếp cận này và theo nhiều cách chúng ta bị cơ sở dữ liệu trên cơ sở dữ liệu.

Kết quả cuối cùng là một cái gì đó trông tuyệt vời trên giấy nhưng các tính năng được thêm vào và mã hóa tùy chỉnh được thực hiện cho khách hàng càng có nhiều mớ hỗn độn trở thành. Dường như tôi đọc càng nhiều thì tôi nhận ra điều này là một phần của một mô hình chống. Nó cũng có vẻ như tôi càng cố gắng để đọc càng nhiều tôi tìm thấy rất ít đã được viết về chủ đề này. Dù sao, tôi đang cố gắng tìm hiểu cách tiếp cận hiện đại cho vấn đề này và cố gắng để tìm thêm thảo luận/bài viết về chủ đề này. Hệ thống cơ sở dữ liệu như CouchDB có liên quan đến loại ứng dụng này không?

Câu hỏi của tôi rõ ràng là khá chung chung. Nó có vẻ như có rất nhiều chống lại loại ứng dụng có lợi cho chỉ "biết và xác định tên miền của bạn tốt hơn". Có cách nào tốt/tốt hơn để triển khai loại ứng dụng này không? Tôi không tìm kiếm câu trả lời đen trắng, và bất kỳ bài đọc thêm về chủ đề sẽ là tuyệt vời. Cảm ơn vì bất kì sự giúp đỡ.

Trả lời

1

Câu trả lời của tôi là có ý thức và rõ ràng về những gì là cho một plugin để làm và những gì là một thiết lập người dùng. Trong trường hợp đó, nền tảng của bạn và cài đặt của bạn khác nhau. Ứng dụng của bạn cung cấp các dịch vụ cơ bản và không phải là một nền tảng. Nó cũng có thể cung cấp một ứng dụng được xây dựng trên nền tảng đó.

Vì vậy, trong trường hợp đó, bạn tập trung vào các giao diện lập trình thay vì khả năng triển khai.

1

Lời khuyên chuẩn trong CS là tạo ra một mức trừu tượng khác, không chắc chắn nếu đó không phải là vấn đề ở đây. Lời khuyên duy nhất tôi có thể đưa ra là đẩy nhiều chức năng vào cơ sở dữ liệu, vì đó là nền tảng. SQL Server hỗ trợ các chức năng tùy chỉnh, thủ tục fields và được lưu trữ (SQL). Hoặc là hoặc cố gắng kéo chức năng lặp lại vào các chức năng riêng biệt trong ASP.

Các vấn đề liên quan