2010-11-06 27 views
5

Tôi đang xây dựng một ứng dụng bằng cách sử dụng khung công tác Zend và tôi tự hỏi liệu khung công tác này có hơi quá cồng kềnh hay không. Có lẽ đó là cách tôi giải quyết vấn đề nhưng tôi thấy rằng việc sử dụng khung công tác này buộc tôi viết nhiều mã hơn.Zend Framework có xứng đáng không?

Bất kỳ đề xuất hoặc lời khuyên nào?

+0

Bạn đang cố gắng xây dựng cái gì? – rwilliams

+0

một hệ thống bán vé và một cms – snakeyyy

+0

kiểm tra redmine. nó có quản lý vấn đề, tích hợp svn và wiki. bạn có thể nhận được một "cài đặt" từ bitnami. –

Trả lời

3

Thành phần ZF tuyệt vời cho các tác vụ được nhắm mục tiêu - ví dụ: Zend_Oauth, Zend_Pdf, Zend_Gdata, vv Bạn có thể sử dụng chúng để đạt được các tác vụ này ngay cả khi không dựa vào ứng dụng của bạn trên cấu trúc ZF MVC, và tôi khuyên bạn nên làm như vậy (từ chối trách nhiệm: Tôi là người đóng góp cho ZF để tôi có thể chủ quan) .

Đối với các công cụ ZF lớn như Zend_Application, Zend_View, v.v. - điều đó tùy thuộc vào nhu cầu và phong cách của bạn. Đối với một dự án lớn, tôi muốn nói đi cho nó, nó có thể có vẻ lớn trong đầu nhưng bạn sẽ kết thúc với một cái gì đó gần như lớn trong mọi trường hợp.

Nếu, mặt khác, bạn có một dự án nhỏ hơn, thì bạn có thể cân nhắc việc sử dụng một cái gì đó đơn giản hoặc có thể không có khung - nhưng hãy cẩn thận, một số dự án nhỏ phát triển nhanh hơn bạn mong đợi.

Nhìn vào nhận xét của bạn rằng bạn đang xây dựng hệ thống bán vé và CMS, có vẻ như nó đủ lớn cho một khuôn khổ. Hãy thử ZF. Bắt đầu với các ví dụ nhỏ hơn, đơn giản hơn, sử dụng một cuốn sách hay và một số mã ví dụ có thể rất hữu ích. Khi bạn đi vào suy nghĩ, bạn sẽ khám phá ra nó không thực sự cồng kềnh như bạn nghĩ - nó chỉ có nhiều chức năng và các điểm mở rộng hơn, nhưng bạn sẽ khám phá ra bạn có thể cần chức năng đó trên đường.

1

đây chỉ là đề xuất hoặc lời khuyên, do đó hãy chèn tuyên bố từ chối trách nhiệm tại đây.

không phải là bạn phải viết bao nhiêu mã để hiển thị trang đầu tiên trong ứng dụng của mình. nó là bao nhiêu mã trong tổng số sẽ có trong ứng dụng của bạn khi bạn hoàn thành, và bao nhiêu của nó sẽ được lặp đi lặp lại tất cả các nơi. và sẽ dễ dàng thay đổi/bảo trì như thế nào.

với zend bạn viết thêm mã ngay bây giờ để bạn viết ít mã hơn sau. lúc đầu bạn đang viết bộ điều khiển, mô hình, người lập bản đồ, lượt xem, biểu mẫu và bố cục. khá sớm, bạn sẽ thêm hành động vào bộ điều khiển, viết biểu mẫu và chỉ xem.

chi phí viết mô hình không được phân bổ cho chế độ xem đầu tiên bạn viết. phân bổ nó trên các chế độ xem thêm, chỉnh sửa, xóa và danh sách cũng như các chế độ xem tìm kiếm.

Tôi chỉ có 4 tuần trong khuôn khổ zend và vì vậy tôi tự coi mình là người mới bắt đầu, nhưng tôi đã lập trình được 25 năm và php trong 6 năm, vì vậy tôi thấy sự khôn ngoan.

những điều mà bạn có thể cần phải biết là một số thói quen zend không hoạt động trong php 5.3, tôi không biết nữa về điều đó.

chỉnh sửa: nếu bạn đang tìm kiếm các khung công tác đơn giản hơn, hãy thử viết mã (hoặc kohana là một ngã ba của người viết mã). nó đơn giản hơn để sử dụng vì bạn thêm các tệp theo cách thủ công, thay vì chạy một tập lệnh để tạo bộ điều khiển, mô hình, v.v. (như với symfony, zend, cakephp, yii, v.v.). hầu hết các công việc tôi đã làm cho đến nay đã được với codeigniter.

3
  1. Bạn có chắc chắn cần CMS của riêng mình không? Bạn sẽ viết một bộ lọc chống thư rác tốt? Nó không phải là ZF buộc bạn phải viết thêm mã. Có lẽ bạn đã chọn con đường sai.

Cân nhắc tích hợp ứng dụng của bạn với một số giải pháp tốt như Wordpress hoặc Drupal.

  1. Zend Framework không bị cồng kềnh. Trong thực tế, nó là một ví dụ về thực hành lập trình tốt. Nó là trưởng thành, và điều này có nghĩa là nó nên được sử dụng cho các dự án trưởng thành và bởi các lập trình trưởng thành.

Altought ZF là tốt nhất ở đây, bạn có thể dùng thử Symfony, có thể bạn sẽ thấy nó thân thiện hơn. Có rất nhiều người dùng đã đóng góp, sẵn sàng tài nguyên.

0

Vâng, nếu bạn đang mong đợi phát triển nhanh hơn với việc nhập ít hơn, Zend Framework có thể không phải là lựa chọn tốt nhất. Nó chắc chắn mất nhiều thời gian đánh máy, những thứ như $this->getRouter()->getWhatever()->thenSmtMore()->theFuncNeeded(). Tuy nhiên nó được cấu trúc tốt và thiết kế độc đáo. Và những gì Sasha Shumann nói trong một cuộc họp QA là, "bạn dành nhiều thời gian hơn để đọc mã hơn là viết nó". Vâng, nó có ý nghĩa khi bạn nghĩ theo cách đó nhưng trong cuộc sống thực, đặc biệt nếu bạn đang làm việc trên các dự án ngân sách thấp, nơi bạn có thể hy sinh chất lượng một chút, cơ sở hạ tầng ứng dụng mặc định của Zend Framework có thể làm chậm bạn xuống. Nhưng điều này không có nghĩa là ZF đang cồng kềnh ...

Điều tôi thích về ZF là vì các mô-đun được kết nối lỏng lẻo, bạn luôn có cơ hội sử dụng nó làm thư viện hoặc phát triển môi trường làm việc của riêng bạn dựa trên các thành phần ZF. Và đó là chính xác những gì tôi đã làm, vì vậy tôi đã dành một vài tháng để xây dựng loại khung công tác của riêng mình dựa trên các thành phần của ZF và tôi có thể xây dựng các dự án mới nhanh hơn theo cách tôi thích. Theo kinh nghiệm của tôi, khi bạn sử dụng bất kỳ khung công tác nào, bao gồm Ruby on Rails hoặc Django, bạn có thể đạt được tốc độ rất nhiều ngay từ đầu nhưng khi gặp trường hợp đặc biệt thì sẽ khó tìm ra giải pháp phù hợp hơn cho trường hợp đó. Giải pháp là dành đủ thời gian để làm chủ khung công tác, chắc chắn nhận được hỗ trợ cộng đồng vì tài liệu chuẩn không bao giờ đủ và tối ưu hóa luồng công việc của bạn (như tạo thư viện đoạn mã của bạn, sử dụng IDE nâng cao như netbeans hoặc Zend Studio, sử dụng mã mẫu, v.v.)

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