Tôi có nên học Symfony 2 không?


14

Tôi đã thấy điều này, bao nhiêu Drupal 8 sẽ dựa vào hoặc tương thích với Symfony? nhưng tôi không hiểu nếu nó áp dụng cho câu hỏi của tôi. Tôi có nên học Symfony 2 để phát triển với Drupal không?


1
Đọc cái này ngay lập tức nếu bạn chưa có :)
Clive

@Clive Tôi đã tìm kiếm Symfony 2 và DI, tìm thấy nó và sau đó tình cờ tìm thấy chủ đề Symfony 2 Drupal 8.
johnny

Câu trả lời:


24

Symfony 2, như trong ngăn xếp đầy đủ Symfony 2 không có liên quan đến Drupal 8 - chúng tôi không sử dụng các gói của nó, chúng tôi không sử dụng định tuyến giống như Symfony (chúng tôi sử dụng một công việc được khắc phục trên đỉnh gọi là Symfony CMF được tạo ra bớt chó chậm bằng cách khốn nạn thực đơn của tôi làm việc trên nó nhưng nó vẫn không có giấy tờ, không thể hiểu được, không mang lại cho các công cụ phân tích mã tĩnh và hoàn toàn bị hỏng và chậm). Chúng tôi không sử dụng cùng ORM (Học thuyết). Chúng tôi đang sử dụng một số thành phần Symfony 2 tuy nhiên có rất ít thấy nó cho nhà phát triển "kết thúc". Ví dụ, đủ khó hiểu, đôi khi bạn cần sử dụng các sự kiện (cái gì là hook_boot / hook_init trong D7 được thay thế bằng các sự kiện hạt nhân Symfony HTTP) trong khi hầu hết Drupal vẫn sử dụng các hook của nó. Nhầm lẫn là tên của trò chơi nơi Symfony 2 tương tác với Drupal. Đó là một sự phù hợp cực kỳ kém và số lượng (không) tài liệu về cách thức sự phù hợp này (không) xảy ra làm cho nó thậm chí còn khó hơn.

Chỉnh sửa: chúng tôi sử dụng bộ chứa dịch vụ http://symfony.com/doc/civerse/book/service_container.html ít nhất là các phần tĩnh của nó - tuy nhiên việc bổ sung và thay đổi dịch vụ động được thực hiện thông qua các phương tiện cụ thể của Drupal (nhà cung cấp dịch vụ gắn vào hệ thống thông qua một cách ma thuật đặc biệt không phải là sự kiện cũng không phải là móc nối. Chào mừng bạn đến với Drupal 8.)

Vì vậy: nếu bạn biết Symfony 2 từ trong ra ngoài thì một chút trong số đó sẽ có thể sử dụng được trong Drupal 8. Nếu bạn không bận tâm với sách hoặc hướng dẫn của Symfony 2.


3
Cảm ơn bạn đã đóng góp nhiều chx, và tôi dám nói quan điểm trung thực về việc sử dụng Symfony 2 D8; và các API mới có sẵn trong D8.
tenken

Đừng hiểu sai điều này, nhưng "chúng ta" là ai? Bạn có thuộc nhóm nòng cốt Drupal không?
johnny

2
lol @johnny. chx đã được nền tảng. Bạn nên làm một cái gì đó như tìm kiếm drupal.org trước câu hỏi tương tự: drupal.org/user/9446
Mixologic

@Mixologic Nó không mang tính cá nhân. Tôi nói đừng hiểu sai. Tôi tò mò nếu chx là một phần của đội nòng cốt. Chx đã nói chuyện với chính quyền. Tôi muốn nhận nó như vậy và không lãng phí thời gian của tôi để lo lắng về Symfony 2.
johnny

@johnny: xin lỗi tôi không có ý đi ngang qua. Giống như ngạc nhiên hơn khi ai đó không biết chx là ai. Tôi cũng vậy, không biết chx là ai trong một thời gian dài. Tôi đã cố gắng cho bạn thấy rằng một cách tuyệt vời để xác định uy tín / quyền hạn của ai đó trong Cộng đồng Drupal là kiểm tra trang người dùng của họ trên drupal.org.
Mixologic

6

Tôi "lớn lên" trên Drupal vì vậy tôi luôn là người thủ tục (Drupal là công cụ chính / duy nhất của tôi để tạo các trang web là công việc của tôi). Lúc đầu, tôi đã rất bối rối khi bắt đầu sử dụng Drupal 8. OOP không khó lắm vì tôi biết OOP, nhưng kiến ​​trúc mới rất khó để có được. Nhưng sau hai tuần tôi bắt đầu cảm thấy như ở nhà một lần nữa. Trang web này và # drupal-đóng góp đã giúp tôi rất nhiều. Tôi đã đọc một số thông tin từ tài liệu Symfony để hiểu về bộ điều khiển về cơ bản và không tôi làm việc với D8 trong 4 tháng và tôi cảm thấy như ở nhà một lần nữa.

Mọi thứ đã thay đổi nhưng bạn sẽ học những cách mới rất nhanh. Bạn thực sự không phải học Symfony TẠI TẤT CẢ. Tôi đã không.

Một điều khiến tôi dễ dàng hơn nhiều đối với tôi là chuyển IDE của tôi từ NetBeans sang PHPStorm vì NetBeans không hỗ trợ duyệt các phương thức kế thừa. Sau vài tháng, tôi không thể hiểu làm thế nào tôi có thể sử dụng NB :) (mặc dù làm việc với Git trong NB tốt hơn cho tôi rất nhiều)

Vì vậy, để trả lời câu hỏi của bạn: bạn hoàn toàn không phải học Symfony. Để hiểu rõ hơn về cuộc sống của bạn, hãy xem các tệp * .service.yml trong các mô-đun (thực hiện chúng) và định tuyến các cuộc gọi lại trong bất kỳ mô-đun * .routing.yml nào để hiểu các cuộc gọi lại trang (từ hook_menu trong D7).


Bạn có nghĩ rằng học cách phát triển trong 7 sẽ hữu ích trong 8 không?
johnny

Chà, dù sao bạn cũng sẽ phải học các khái niệm của Drupal để nó thực sự không thành vấn đề. Họ vẫn áp dụng trong D8. Mặc dù nếu bạn bắt đầu ngay bây giờ, tôi không thấy bất kỳ điểm nào khi quay lại D7.

xin chào, tôi đã làm việc với drupal 7 khoảng 4 năm nay và gần đây tôi muốn học drupal8, tôi không biết bắt đầu từ đâu, ý của bạn là gì khi # drupal-đóng góp @IvanJaros?
Shirin Abdolahi
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.