Devo aprender o Symfony 2?

14

Eu vi isso: quanto do Drupal 8 vai depender ou ser compatível com o Symfony? mas não entendo se isso se aplica à minha pergunta. Devo aprender o Symfony 2 a desenvolver com o Drupal?

johnny
fonte
1
Leia este imediatamente se você não tiver já :)
Clive
@Clive Eu estava pesquisando no Symfony 2 e DI, encontrei-o e depois me deparei com o assunto do Symfony 2 Drupal 8.
johnny

Respostas:

24

Symfony 2, como na pilha cheia, o Symfony 2 não tem influência no Drupal 8 - não usamos seus pacotes, não usamos o mesmo roteamento que o Symfony (usamos um trabalho mal feito na parte superior chamado Symfony CMF, que é feito menos cão lento, bastardizando o meu menu de trabalho em cima dele, mas é ainda não documentado, incompreensível, não gera ferramentas de análise de código estáticas e, ao todo, é interrompido e lento). Nós não usamos o mesmo ORM (Doutrina). Estamos usando alguns componentes do Symfony 2, mas há muito pouco visível para o desenvolvedor "final". Por exemplo, de maneira confusa, às vezes você precisa usar eventos (o que era hook_boot / hook_init no D7 é substituído por eventos do kernel HTTP do Symfony) enquanto na maioria das vezes o Drupal ainda usa seus ganchos. Confuso é o nome do jogo em que o Symfony 2 interage com o Drupal. É um ajuste extremamente ruim e a quantidade (não) da documentação de como esse ajuste (não) acontece torna ainda mais difícil.

Edit: usamos o contêiner de serviço http://symfony.com/doc/current/book/service_container.html pelo menos as partes estáticas dele - no entanto , adições e alterações dinâmicas de serviços são feitas por meios específicos do Drupal (prestadores de serviços que se conecta ao sistema através de uma maneira mágica especial que não é eventos nem ganchos. Bem-vindo ao Drupal 8.)

Portanto: se você conhece o Symfony 2 por dentro e por fora, um pouco disso será útil no Drupal 8. Se não o fizer, não se preocupe com os livros ou tutoriais do Symfony 2.


fonte
3
Obrigado por suas muitas contribuições chx, e ouso dizer uma perspectiva honesta sobre o uso do Symfony 2 D8; e as novas APIs disponíveis no D8.
Dez15
Não leve a mal, mas quem é "nós"? Você está na equipe principal do Drupal?
johnny
2
lol @johnny. chx foi fundamental. Você deve apenas fazer algo como pesquisa drupal.org antes que tipo de pergunta: drupal.org/user/9446
Mixologic
@Mixologic Não é pessoal. Eu disse, não leve a mal. Fiquei curioso se chx fazia parte da equipe principal. Chx falou com autoridade. Eu queria tomá-lo como tal e não perder meu tempo se preocupando com Symfony 2.
johnny
@ johnny: desculpe, eu não quis me deparar com snarky. Mais espantado que alguém não soubesse quem era. Eu também não sabia quem era chx por um longo tempo. Eu estava tentando mostrar a você que uma ótima maneira de determinar a credibilidade / autoridade de alguém na Comunidade Drupal é verificar a página do usuário em drupal.org.
Mixologic
6

Eu "cresci" no Drupal, então sempre fui um cara processual (o Drupal é minha principal / única ferramenta para criar sites que é o meu trabalho). No começo, fiquei muito confuso quando comecei a usar o Drupal 8. O POO não era tão difícil desde que eu conhecia o POO, mas a nova arquitetura era difícil de entender. Mas depois de duas semanas, comecei a me sentir em casa novamente. Este site e # drupal-contribut me ajudaram bastante. Eu li algumas informações da documentação do Symfony para entender basicamente os controladores e não, estou trabalhando com o D8 por 4 meses e me sinto em casa novamente.

As coisas mudaram, mas você aprenderá os novos caminhos muito rapidamente. Você realmente não precisa aprender o Symfony. Eu não fiz.

Uma coisa que facilitou muito as coisas para mim foi mudar meu IDE do NetBeans para o PHPStorm porque o NetBeans não suportava a navegação por métodos herdados. Depois de alguns meses, não consigo entender como consegui usar o NB :) (embora trabalhar com o Git no NB seja muito melhor para mim)

Então, para responder sua pergunta: você absolutamente não precisa aprender o Symfony. Para facilitar sua vida, observe os arquivos * .services.yml nos módulos (que os implementam) e também roteie os retornos de chamada em qualquer arquivo * .routing.yml dos módulos para entender os retornos de página (do hook_menu no D7).


fonte
Você acha que aprender a desenvolver no 7 será útil no 8?
johnny
Bem, você terá que aprender os conceitos de Drupal de qualquer maneira, para que isso realmente não importe. Eles ainda se aplicam no D8. Embora se você está começando agora, não vejo sentido em voltar ao D7.
oi, trabalhei com o drupal 7 há cerca de 4 anos e recentemente quero aprender o drupal8, não sei por onde começar, o que você quis dizer com # drupal-contribut @IvanJaros?
Shirin Abdolahi