Chúng tôi đang trong quá trình lập kế hoạch viết lại một trong các ứng dụng cơ bản của chúng tôi. Nó dựa trên web và chúng tôi bị khóa vào PHP. Tuy nhiên nó không phải là một trang web 2.0. Nó gần hơn với một ứng dụng doanh nghiệp.Vấn đề về nhóm lựa chọn kiến trúc và khung
Điều đó không hề đơn giản. Có ít nhất 2 giao diện chính (tôi nghĩ có 4, nhưng đó là một chủ đề khác). Nó cần phải được cấu hình cao và tùy biến cao. Tôi dự kiến khoảng từ 50 đến 200 lượt cài đặt mỗi năm, vì vậy việc bảo trì dễ dàng là mối quan tâm chính.
Vì vậy, sự cố có trong kiến trúc. Tôi muốn làm một kiến trúc cao cấp chính thức trước tiên. Trước khi bất cứ điều gì khác. Sau đó, chúng tôi sẽ chọn một khung phù hợp (một khung phù hợp với kiến trúc) hoặc chọn một khung và sử dụng nó làm thư viện. Tôi cảm thấy phương pháp này sẽ đảm bảo một hệ thống khả thi trong thời gian dài (vì ít nhất là kiến trúc đầy đủ được xem xét)
Tuy nhiên, phần còn lại của nhóm muốn chọn khung (họ muốn sử dụng YII) trước và bỏ qua kiến trúc cấp cao hoàn toàn. Lập luận của họ là khuôn khổ đã làm kiến trúc mức cao đầu tiên và cho phép bạn "chỉ bắt đầu viết mã".
Về cơ bản, tôi nghĩ điều này giống như đặt giỏ hàng trước con ngựa hoặc xây dựng ngôi nhà của bạn mà không có nền tảng trên đỉnh hố. Tôi biết quan điểm này là phổ biến trong những ngày sau ROR của phát triển ứng dụng nhanh chóng vì nhiều hơn có thể được thực hiện nhanh hơn. Nhưng tôi thực sự lo sợ rằng đối với một ứng dụng cốt lõi nhiệm vụ quan trọng, điều này được nhìn thấy rõ ràng ở mức tốt nhất (và không quan tâm đến điều tồi tệ nhất).
Tôi thực sự lo sợ rằng chúng tôi đang đi sai đường dẫn.
Quản lý coi tôi là nhà phát triển cấp cao. Vì vậy, về mặt kỹ thuật tôi có thể overrule hầu hết những người khác. Nhưng tôi không ở trên họ, vì vậy trong thực tế làm như vậy sẽ là xấu. Một đề cập đến rằng có một rào cản ngôn ngữ chính (họ nói tiếng Ba Lan, tôi nói tiếng Anh).
Và tôi nghĩ tôi nên đề cập đến rằng tôi thực sự không thích hầu hết các khuôn khổ RAD PHP. Không phải vì chúng xấu bởi bất kỳ phương tiện nào, nhưng bởi vì chúng có xu hướng (IMHO) thực thi tâm lý rằng kiến trúc không quan trọng vì chúng làm điều đó cho bạn. Chưa kể rằng họ thường muốn bạn làm việc theo cách của họ (Rails nổi tiếng với điều đó) chứ không phải là một cách có ý nghĩa cho dự án trong tầm tay. Vì vậy, tôi thường chỉ sử dụng một khung làm bộ thư viện. Sử dụng các lớp khi chúng có ý nghĩa, và xây dựng của riêng tôi khi các yêu cầu dự án ra lệnh như vậy).
Vì vậy, câu hỏi của tôi như sau:
- Am Tôi có ngay trong mối quan tâm của tôi? Hay họ đúng và tôi chỉ phản ứng quá mức?
- Nếu tôi đúng, có lời khuyên nào về cách xử lý tình huống không?
- Làm cách nào để tôi có được đội bóng ở bên cạnh mình mà không gây ra một cuộc đột biến?
Cảm ơn! Tôi nghĩ tôi sẽ phải đặt mua cuốn sách đó. Và tôi không thể đồng ý hơn với suy nghĩ của bạn trong bài đăng trên blog đó ... – ircmaxell