2010-07-30 41 views
8

Việc tạo khung mvc php tùy chỉnh từ đầu có hoàn toàn vô nghĩa đối với một cơ quan kỹ thuật số nhỏ không?Lợi ích của việc tạo khung mvc tùy chỉnh

Tôi đã nghe gần đây từ một người bạn rằng các trường đại học của anh ấy đang dành thời gian chi tiêu cho một dự án như vậy trong cơ quan của họ. Lập luận của họ chống lại việc sử dụng một cái khác như bánh hoặc zend là họ đến với rất nhiều tính năng không sử dụng và do đó rất nhiều mã không cần thiết.

Tôi đã nghĩ rằng một sự kiện như vậy là hoàn toàn vô nghĩa và thực sự là một sự lãng phí thời gian và tiền bạc. Chắc chắn nó sẽ có ý nghĩa hơn để chọn một khuôn khổ phù hợp với nhu cầu của bạn càng gần càng tốt và sau đó tùy chỉnh/mở rộng nó. Trên các khuôn khổ như zend mã chắc chắn sẽ có một mức độ tốt hơn/thử nghiệm nhiều hơn so với 1 hoặc 2 lập trình viên có thể tạo ra trong một vài tháng.

Điều đó không có ý nghĩa với tôi - bất kỳ ai có thể theo đuổi tôi bằng cách khác không?

+1

Có thể chủ quan vì các khung công tác có nhiều trường hợp sử dụng và nó thực sự phụ thuộc vào nhà phát triển cá nhân. – BoltClock

+1

Sẽ không chỉ có một số lượng rất nhỏ các trang web/trang web thương mại điện tử sẽ yêu cầu toàn bộ khung tùy chỉnh mới. Tôi cũng đã nghe nói rằng lập trình viên làm việc trên khung làm việc của anh ta chỉ là trích xuất các tính năng từ các khung công tác khác. Whats điểm do đó. – David

Trả lời

1

Đối với bất kỳ khuôn khổ

Ưu

  • có được chức năng chính xác mà bạn muốn
  • kiểm soát chi tiết nhỏ quan trọng để dự án của bạn
  • quen thuộc với mã

Nhược điểm

  • tất cả mọi thứ mà phá vỡ bạn phải sửa chữa bản thân
  • không nhận được để học hỏi từ những sai lầm của quá khứ
  • sẽ không có được càng nhiều lỗi nhận thấy do khán giả nhỏ

Cá nhân tôi khuyên khám phá các khuôn khổ hiện có trước khi xem xét việc viết riêng của bạn. Chỉ cần nhớ rằng không sao nếu bạn không hiểu tất cả trong một ngày!

4

Tôi thấy nó vô nghĩa. Nhưng đó là một lời nguyền của các lập trình viên PHP, những người có xu hướng phát minh ra bánh xe một lần nữa và một lần nữa. Tôi biết những gì tôi đang nói về. Tôi đã thử nó. Cách tiếp cận tốt nhất dường như là tìm hiểu một khuôn khổ và nếu nó không phù hợp với bạn, hãy hỏi những người bạn biết các khung công tác khác để tìm hiểu cách giải quyết vấn đề cụ thể trong các khung công tác khác và nếu không có khung nào tốt để bắt đầu làm việc trên một khuôn khổ mới.

Điểm có nhiều mã không sử dụng không hoàn toàn hợp lệ. Zend chứa các lớp có thể bị tước đi xa như tôi biết.

CHỈNH SỬA: Hiệu suất của PHP có thể được tăng cường thông qua eAccelerator chẳng hạn. Tôi thấy nó dễ dàng hơn việc xây dựng một khuôn khổ hoàn toàn mới.

+1

Chính xác. Tại sao một người thậm chí sẽ cân nhắc rằng họ có thể, một mình, xây dựng một khuôn khổ tốt hơn so với các khuôn khổ nguồn mở này. Nó thực sự làm tôi ngạc nhiên. – David

+2

Tôi không thực sự thích giả định rằng họ không thể làm cho khung tốt hơn nhưng cơ hội thấp và cạnh tranh là cao. –

6

Không, tôi nghĩ bạn sẽ tìm thấy hầu hết ở đây sẽ đồng ý với bạn - tôi chắc chắn cảm thấy đó là một sự lãng phí thời gian hoàn toàn. Đặc biệt là vì họ là một cơ quan nhỏ, nguồn lực hạn chế của họ có thể được chi tiêu tốt hơn ở nơi khác.

Vì họ quan tâm đến một khuôn khổ cồng kềnh, tôi đề nghị thay vào đó họ điều tra bằng cách sử dụng một khung PHP nhẹ như CodeIgniterKohana.

1

Đó là một sự lãng phí thời gian. Trừ khi họ đang xây dựng một trang web với lưu lượng truy cập của Facebook, hiệu suất truy cập họ sẽ nhận được bằng cách sử dụng một cái gì đó như Yii so với riêng của họ nên rất ít

+1

thậm chí sau đó, sẽ không phải là thời gian và nguồn lực được chi tiêu tốt hơn để cải thiện máy chủ vv. Sau đó, một khung tùy chỉnh sau khi được hoàn thành, nếu bao giờ, sẽ là một vấn đề bảo trì liên tục - lỗi, nâng cấp vv – David

+1

Tôi hoàn toàn đồng ý với bạn .. đó không phải là quyết định kinh doanh tốt. –

3

MVC FW nhỏ hơn 5% cơ sở mã dự án trung bình, vì vậy tôi mạnh mẽ khuyên bạn nên xây dựng MVC cho mọi dự án và điều chỉnh nó cho các thông số kỹ thuật của dự án. Nếu ai đó có đủ kiến ​​thức về mẫu MVC và một số kinh nghiệm trong việc sử dụng và xây dựng các khung MVC, nó có thể được xây dựng trong một vài ngày.

Đối số chung là tốc độ và hiệu suất do FW tùy chỉnh cung cấp.

3

Thỉnh thoảng khi mọi người sợ thay đổi và học hỏi những điều mới, họ nghĩ ra tất cả các lý do ngớ ngẩn tại sao đôi khi không tốt và không nên sử dụng.

Tôi từng làm việc trong công ty đã được xác định để viết khung web của riêng họ thay vì sử dụng Django. Một trong những nhà phát triển đã làm việc trên "admin" một phần của khuôn khổ cho biết tôi muốn anh ta để mất công việc của mình cos Django đã tự động tạo ra admin. Trừ khi nó là một khuôn khổ rất cụ thể và bạn có lý do rất tốt và đủ kinh phí cho dự án, không bao giờ là ý tưởng tốt để phát minh lại bánh xe đặc biệt nếu bạn không thể làm cho nó giống hoặc chất lượng tốt hơn. .

6

Sử dụng khung của riêng bạn có một lợi thế lớn so với các giải pháp khác. Nó có nghĩa là bạn có tổng số tôi có nghĩa là TOTAL! kiểm soát nó. Không có vấn đề gì xảy ra với các khuôn khổ khác, bởi vì một ngày bạn có phần mềm nguồn mở và một ngày khác nó có thể bị hủy bỏ hoặc ngừng dự án. Và khung của bạn sẽ vẫn được phát triển. Ngay cả khi nó có nghĩa là bạn sẽ cần phải liên tục thêm một số tính năng cho nó, với thời gian nó sẽ trả hết. Bên cạnh đó, PHP cũng giống như một khuôn khổ lớn, và nó đang phát triển. Việc viết khung của riêng bạn sẽ giúp bạn cập nhật công nghệ này :) Tất nhiên, việc giữ các khung công tác hoặc CMS khác cũng là ý tưởng hay, bởi vì có thể khách hàng của bạn sẽ muốn sử dụng chúng, và bạn cũng có thể học hỏi từ họ và chuyển một số giải pháp phần mềm của bạn: D

+0

100% đồng ý với bạn. –

0

Nó không nhất thiết là một sự lãng phí thời gian nhưng tôi đồng ý với bạn, tôi đã thử nó bản thân mình quá. Tôi đã sử dụng Zend, Code Igniter và Fuel phụ thuộc vào dự án mà tôi đang làm.

Hậu quả mà tôi có khi tạo khung của riêng mình là thời hạn. Nếu bạn đang làm việc trên một dự án với một thời hạn rất chặt chẽ sau đó tạo ra khung của riêng bạn sẽ là một ý tưởng tồi.

2

Tùy thuộc vào loại dự án mà họ thực hiện và nhu cầu của họ là gì. Không bao giờ quên rằng trong phần mềm, 'tốt nhất' luôn phụ thuộc vào những gì bạn đang làm. Không có 'một giải pháp vàng' cho mọi thứ. Điều này bao gồm mvcs.

Có nhiều lý do để mã MVC của riêng bạn:

  • Bạn có thể chỉnh nó để cụ thể chính xác của bạn cần
  • Bạn có thể giữ nó đóng nguồn, giảm tiếp xúc, tăng cường an ninh do tối tăm
  • Bạn có thể tiếp tục phát triển nó, và sau đó phát hành nó cho thế giới khi nó trưởng thành và hoàn thành một mục đích chính - rất nhiều mvcs hiện tại đã được theo cách đó anyway.
  • Bạn có thể tiếp tục phát triển, giữ mã nguồn đóng và xây dựng các dịch vụ và ứng dụng SaaS lớn trên đó, mà bạn sẽ giữ lại toàn bộ quyền. Có thể được thực hiện với giấy phép apache quá mặc dù.
  • Bạn có thể thực hiện một mục đích không được thực hiện bởi bất kỳ mvc nào khác. Mặc dù mỗi mvc có zealots của mình những người tin rằng họ có một và tất cả các giải pháp, mỗi mvc có nhược điểm của nó. Và tin rằng 'mọi thứ có thể được làm, đã được thực hiện' bởi vì có 15-20 mvcs ra, là ngu xuẩn khi nói 'tất cả những gì có thể được khám phá đã được khám phá'. Và có những người nói sau này vào đầu thế kỷ 20.

Chưa kể rằng với mvc bên ngoài bạn đang sử dụng, bạn có nghĩa vụ với nhóm dự án của mvc đó cho nhiều thứ. Họ có thể đã có hoặc có thể giới thiệu những thứ mà bạn không thích, hoặc thậm chí cản trở các ứng dụng cụ thể của bạn.

Chưa kể chúng có thể bị bỏ rơi. Có thể xảy ra lớn nhất. Codeigniter là tất cả các cơn thịnh nộ. Chuyện gì đã xảy ra ? Ellis đang bán phá giá nó về cơ bản. Sự phát triển chậm lại. Có lẽ sớm hoàn toàn dừng lại. Có nguồn mở không đảm bảo một dự án - có nhiều dự án mã nguồn mở theo cách tương tự.

Điều gì sẽ xảy ra với những người đã mã hóa các ứng dụng chính với Codeigniter? Họ sẽ đảm nhận sự an toàn của bản cài đặt Codeigniter mà họ có? Do đó trên thực tế trở thành người duy trì mvc của riêng mình? Hay họ sẽ thuê bên ngoài để duy trì mvc cho họ?

Không phải là đầu tư tốt trong tương lai.

Tùy chọn mã hóa mvc của riêng tôi chủ yếu là có mvc phù hợp với kiểu mã của riêng tôi. tiêu chí của tôi cho một MVC:

  • phát triển nhanh
  • nhanh sửa đổi
  • bảo trì thấp
  • Speed ​​
  • an
  • cực đơn giản
  • đáng tin cậy liên quan đến phát triển tương lai

Tôi đã mã hóa một mvc chính cho bản thân mình trước đây. và tôi vẫn chạy thành công trên một trong những trang web sở thích của tôi, xử lý khoảng 600.000-1.200.000 khách truy cập mỗi tháng. Tại một thời điểm cụ thể, hơn 250 khách truy cập (google analytics - nó không bao gồm bất kỳ bot nào) có thể có mặt trên trang web, đóng trang sau trang. Và nó thậm chí không chớp mắt. Tôi thích nó. Mặc dù nó có những thiếu sót khác nhau mà tôi không thích, nó hoạt động ngoạn mục.

Hiện tại, tôi đang sử dụng các bài học tôi đã học được từ bài trước, khi chúng áp dụng cho các mục đích cụ thể của tôi.

Chưa kể đến đây là cách tuyệt vời để trau dồi và phát triển các kỹ năng mới.

Nhưng có một điều là phải: lập kế hoạch rất tốt, và tiếp tục xây dựng trên đó, thay đổi và cải thiện nó.

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