2009-07-04 22 views
5

Có một số câu hỏi về khung công tác PHP, nhưng tôi tò mò muốn sử dụng cái nào trong thế giới thương mại khi phát triển các ứng dụng web bằng PHP. Tại công việc dựa trên web đầu tiên của tôi, họ không có một khuôn khổ cho codebase PHP. Điều này có phổ biến khi giao dịch với PHP không? Nếu không, những khung công tác nào cho các công ty sản xuất một sản phẩm (hoặc một trang web cung cấp dịch vụ của một số loại hoặc một sản phẩm dựa trên web có thể được mua) bằng cách sử dụng PHP có xu hướng sử dụng?Khung công tác PHP nào được sử dụng bởi các tập đoàn?

+0

Vâng, tiêu đề có thể sử dụng một số công việc, tôi nghĩ vậy. Nhưng câu hỏi hoạt động. –

+0

IMO, câu hỏi này là tốt. Mọi người cần cảm thấy thoải mái trước khi áp dụng điều gì đó cho công việc của công ty. – namespaceform

Trả lời

3

Trong lần cuối hai ba địa điểm tôi đã làm việc, công ty có khuôn khổ riêng (riêng, được xây dựng trong nhà).

9

Điều này có phổ biến khi giao dịch với PHP không?

Theo kinh nghiệm của tôi, thật không may. Tất nhiên, đây là một khái quát tổng quát, nhưng những người có xu hướng học PHP như ngôn ngữ lập trình đầu tiên của họ không tìm hiểu các yếu tố cần thiết để phát triển phần mềm có thể duy trì và thường không biết cách viết mã tốt. Tôi nghĩ rằng đây là một thất bại của cộng đồng PHP, nơi mà hầu hết các tài nguyên học tập không nhấn mạnh các thực hành tốt (có lẽ vì các tác giả không biết gì tốt hơn). Tất nhiên bạn có thể viết mã tốt với PHP, miễn là bạn hiểu các nguyên tắc lập trình cơ bản.

Các công ty thường sẽ bắt đầu với cơ sở mã hap-hazzard của các tập lệnh PHP được sử dụng lại và dần dần được mở rộng từ dự án đến dự án (thường không có kiểm soát nguồn!). Các công ty biết họ đang làm gì và nghiêm túc phát triển điều này thành một dạng khung nội bộ nào đó, hoặc tôi thường thấy rằng họ sẽ chuyển sang thứ gì đó mà không có sự crap lịch sử của PHP, như Django hay Ruby on Rails.

Nếu bạn mới bắt đầu, có một số khung công tác MVC phù hợp sẽ tạo cơ sở tốt cho tất cả các nhà phát triển của bạn để tìm hiểu và sử dụng. Không theo thứ tự đặc biệt:

Tất nhiên có những người khác là tốt.

Điều đó nói rằng, như mọi khi, nó phụ thuộc vào dự án. Đôi khi một khuôn khổ sẽ không có ý nghĩa hoặc sẽ quá mức cần thiết, những lúc khác, bạn nên sử dụng một sản phẩm được xây dựng sẵn (như CMS) và xây dựng các tiện ích mở rộng cho nó.

8

Hầu hết các khung công tác đều tập trung mạnh vào lớp trình bày. Bây giờ, "công ty" tất nhiên là một thuật ngữ khá mơ hồ, nhưng tôi giả sử bạn có nghĩa là cho các nhiệm vụ CNTT điển hình hơn, chẳng hạn như kế toán, CRM, vv Đối với những nhiệm vụ này, lớp trình bày là một phần nhỏ hơn nhiều của toàn bộ ứng dụng. Điều này không chỉ làm cho các khung công tác nói ít quan trọng hơn - nó thực sự loại bỏ chúng một chút, vì bạn không muốn các hạn chế trên lớp mô hình của bạn, mà chúng áp đặt.

+1

Bây giờ câu trả lời này là câu trả lời tôi thực sự thích! Điều này là rất đúng, tôi đã tìm thấy ngay cả Django (O.K. đó không phải là php nhưng vẫn: P) mô hình lớp là quá hạn chế cho các mục đích, nêu trong câu trả lời của bạn. Hầu hết thời gian, nó dễ dàng hơn để mã lớp mô hình mình từ đầu và sau đó bolt trên một số bài thuyết trình, thay vì sau đó cố gắng điều chỉnh một khuôn khổ cho nhu cầu của bạn. – shylent

+0

Cảm thấy hơi giống nhau ở đây - ứng dụng mạng nội bộ tùy chỉnh. – namespaceform

3

Tôi nghĩ việc sử dụng khung làm việc ngày càng phổ biến hơn. Một vài năm trở lại hầu hết các lập trình viên phát triển khuôn khổ riêng của họ. Nhưng chi phí để đào tạo một nhân viên mới cho một khuôn khổ như vậy ngày càng cao. Do đó, nhiều công ty đang chuyển sang các khuôn khổ nổi tiếng.

Tôi đoán rằng Zend hiện là Khung được sử dụng nhiều nhất trong môi trường của công ty. Một lý do là nó không cung cấp cho bạn bất kỳ hạn chế nào trên lớp mô hình.

Tôi không thể dự đoán tương lai nhưng tôi đoán rằng Flow3 cũng sẽ được sử dụng trong tương lai. Đây là Khung mới đằng sau Typo3. Và nhiều nhà phát triển Typo3 (nhà thiết kế web), những người cần viết các ứng dụng web có thể sẽ sử dụng Flow3 sau đó.

-1

Tôi không chắc liệu PHP đã đi vào thị trường doanh nghiệp ở Hoa Kỳ chưa nhưng khi tôi làm việc trong một văn phòng công ty thì ngôn ngữ họ sử dụng là Microsoft .NET. PHP chưa tham gia IMO thế giới của công ty. Nó phổ biến với thế giới hacker và có thể là các công ty phần mềm/web nhỏ và vi mô.

+1

hacker trên thế giới? mũ các địa ngục là bạn đang nói về? ;) – Strae

+0

Những gì tôi nghĩ là hacker thế giới == cộng đồng nguồn mở, vv .. – drikoda

+0

có rất nhiều tập đoàn sử dụng php. –

0

gần đây tôi đã nói chuyện với một CTO của một công ty, cung cấp giải pháp e-lecture và chúng tôi đã nói về PHP trong một thời gian ... chúng tôi đều đồng ý, đó không phải là ngôn ngữ tốt nhất cho các giải pháp đá rắn. khuôn khổ symfony, họ đã sử dụng ngay trước khi chuyển sang java ...

cũng có, flow3 đề cập bởi Raffael là khá mạnh mẽ ... điều thú vị nhất đối với tôi là, nó mang lại AOP vào PHP ...

Greetz

back2dos

1

Khung công tác cấp doanh nghiệp duy nhất tôi có thể nghĩ là khung công tác Zend. CakePHP, Code Igniter và những người khác chỉ tập trung vào phát triển RAD.

+2

Tôi chưa bao giờ sử dụng Zend nhưng tôi không đồng ý với những người khác, từ cuộc gặp gỡ ngắn ngủi của tôi với CodeIgniter Tôi không thấy lý do tại sao nó không phù hợp với các dự án quy mô lớn hơn. Đối với "cấp doanh nghiệp", khi tôi đã tìm ra điều đó có nghĩa là tôi sẽ là một người thông minh thực sự ;-) – roryf

+3

Doanh nghiệp có nghĩa là "dễ chấp nhận", "dễ thay thế", "dễ bảo trì" và thương mại được cấp phép. Trong các điều khoản khung, dễ chấp nhận và thay thế nghĩa là bạn có thể thực hiện từng phần một và dễ duy trì có nghĩa là hành vi có thể dự đoán qua các bản phát hành, tổ chức mã minh bạch và nhà cung cấp hỗ trợ. –

+0

"được cấp phép thương mại" một lần nữa tôi không đồng ý - nhiều dự án mã nguồn mở (đặc biệt là trong thế giới Java và .NET) phù hợp với hóa đơn của bạn "cấp doanh nghiệp". – roryf

0

Bạn có thể muốn xem www.flow3.org, đây là một cách tiếp cận khá toàn diện đối với khuôn khổ ứng dụng PHP và đang nhanh chóng tiếp cận bản phát hành Beta chính thức đầu tiên của nó.

1

Có kinh nghiệm với CI, yiiframework và calephp (không nhiều, thực sự) ý kiến ​​của tôi là CI không linh hoạt như ohter 2, vì vậy tôi không khuyến khích nó trên các dự án quy mô lớn hơn. Bất cứ ai không đồng ý, chỉ có thể thử một dự án trình diễn với cakephp và Yii và anh sẽ xem làm thế nào mọi việc dễ dàng hơn với họ như crud, hình thức xác nhận, vv Dĩ nhiên tất cả đều có nhược điểm của họ :)

2

Theo một PHP Framework Popularity at Work survey by Sitepoint trong 2015 (7554 người tham gia khảo sát) ngũ khuôn khổ sử dụng nhiều nhất là

  1. Laravel (22%)
  2. Symfony2 (14%)
  3. Nette (9%)
  4. CodeIgniter (8%)
  5. Yii 2 (7%)

Hơn nữa kết quả điều tra cho thấy, rằng

  • 5% sử dụng một công ty khuôn khổ nội bộ,
  • 3% sử dụng không có khuôn khổ tại tất cả,
  • 3% sử dụng CMS cho mọi thứ,
  • 1% sử dụng khung MVC đơn giản.

PHP Framework Popularity at Work survey by Sitepoint, 2015

Dường như có lục cụ thể ưu đãi về khung: Ở Mỹ và châu Á, Laravel có vẻ là khuôn khổ của sự lựa chọn (trừ Nga: Yii 2), trong khi ở châu Âu, bạn sẽ tìm hiểu thêm Symfony2.

(Hãy lưu ý rằng điều này chỉ được tham chiếu từ một nguồn - xem các liên kết ở trên.)

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