Artigos & Ideias

[PHP] Sintaxe Alternativa

Escrito por:

Se já tiveste a agradável experiência de aprofundar o código do WordPress, provavelmente já viste uma sintaxe alternativa nas estruturas de controlo. Um exemplo disso é o seguinte código:

$codigo = 5;
if($codigo == 2):
	echo 'O processo foi bem sucedido.';
else:
	echo 'O processo falhou.';
endif;

O mesmo funciona com um ciclo while, for, foreach e loops, bem como a instrução switch:

$conteudo = array('PHP','jQuery','AJAX');
foreach($conteudo as $conteudo ):
	echo $conteudo;
endforeach;

Devo utilizar esta sintaxe? Se sim quando?

Se deves ou não utilizar esta sintaxe é contigo – depende do teu estilo de programação e o que consideras (ou não) ser legível. Pessoalmente, vejo esta sintaxe a ser muitas vezes utilizada quando são usadas muitas estruturas de controlo dentro do mesmo bloco de código, a sintaxe “end____” torna muito mais legível a estrutura que estás a terminar (do que simplesmente usar “}”). Também costumo ver esta sintaxe utilizada com mais frequência do que a sintaxe tradicional quando o código PHP está embutido no código HTML.

Qual a tua opinião?

Gostaria de saber a tua opinião sobre esta sintaxe.
Comecei a utilizar esta sintaxe cada vez mais… pois, além de ser mais legível, faz mais sentido, pelo menos para mim.
Mas já houve quem me dissesse que não gosta dela, outros que torna o código menos legível.
E tu, o que achas?

9


Sobre o Autor

Carlos Gonçalves é um Freelancer com bastante experiência em linguagens de programação e webdesign. Vocacionado para as novas tecnologias, aposta na qualidade dos serviços, atendimento rápido e sempre disponível para melhor satisfazer os seus clientes. Autor do site cgoncalves.com

Comentários

  1. Ricardo Amaral  11 Janeiro 2010

    Eu faço parte dos que não gosta desta syntaxe, mas nem sabia que existia em PHP. Não gosto porque a acho demasiado textual quando não é necessário fazê-lo.

    E grande parte dos IDEs ou até mesmo simples editores de texto têm suporte para highlight aos “brackets” correspondentes a cada bloco de código. Alguns deles até desenham uma linha vertical para delimitar ainda melhor o respectivo bloco de código.

    Acho estas funcionalidades muito mais interessantes e úteis do que ter um código demasiado extenso.

    Mas isto é só a minha opinião.

    (responder)
  2. André  11 Janeiro 2010

    Eu acho que é boa sintaxe. É muito mais legível, assim a olho, por exemplo, do que um monte de }}}} todos seguidos aos outros (o cúmulo é mesmo olhar para o fechar de chavetas de alguém que não indenta código…).

    Ricardo, essa situação é boa nos PC’s, mas imagina que por alguma razão tens de imprimir o código em papel. Uma boa indentação ajuda, como é óbvio, mas, na minha opinião, este é mais “directo” a saber o que aquela linha “fecha”.

    Também soube da existência disso apenas ao explorar alguns plugins do WordPress, mas confesso que ão uso muito (já nem trabalho tanto com PHP). Já agora, é uma experiência assim tão desagradável explorar o código do WP =D ?

    Cumps.

    (responder)
  3. Carlos Gonçalves  11 Janeiro 2010

    @Ricardo Amaral: em parte não deixas de ter razão. Mas por exemplo, como o André disse o mesmo não é tão legível se quiser imprimir o código.
    No entanto, como disseste, a maioria dos IDEs tem suporte para highlight, mas mais facilmente eu identifico um endforeach (com highlight) que uma }

    E já agora, também há IDEs que ao fazeres CTRL + SPACE ele já preenche quase que automaticamente pelo que falta fechar.

    (responder)
  4. Carlos Gonçalves  11 Janeiro 2010

    @André: no meu caso até foi agradável, mas o facto de estar rasurado é porque conheço quem tenha achado desagradável :P

    Eu acho que até está bastante bem concebido, e é um CMS com o qual gosto de trabalhar :)

    (responder)
  5. Ricardo Amaral  11 Janeiro 2010

    Eu continuo a achar mais legível usar os {}. Sempre gostei desta sintaxe que vem do C (penso eu) e agrada-me programar em linguagens que a usem. Compreendo o vosso ponto de vista mas acho que isto é mais uma questão de preferência assim como uns gostam mais do vermelho que azul. Como disse anteriormente, para mim é demasiado textual e para texto chega o código essencial que por vezes se torna demasiado grande e complexo.

    Ah, e não tenho por habito imprimir código em papel :P

    Off-Topic:
    Vou daqui a uns minutos colocar um tópico no P@P para ajuda a escolher um CMS. Apesar de referir que não quero WordPress, gostava da tua opinião porque foi hoje ao ver o teu site (já o tinha visto no passado) que pensei em remodelar o meu usando software existente para me poupar trabalho enquanto não tenho o tempo que preciso.

    (responder)
  6. Carlos Gonçalves  11 Janeiro 2010

    @Ricardo Amaral: sim, o uso das {} vem do C.
    Quando à sintaxe, tens toda a razão, foi como disse no post, são gostos, tal como a ti faz mais sentido uma forma a mim faz de outra. O que interessa é que cada um perceba o que está a fazer.

    Quanto ao Off-topic, vou lá ver então :)

    (responder)
  7. Scorch  11 Janeiro 2010

    Eu não costumo usar essa syntaxe, tal como o Ricardo prefiro a “nativa”. Mas também se levanta uma questão: em questões de processamento, essa syntaxe, em uso massivo, não causará mais gastos, e por consequente, mais tempo na execução da página? De qualquer maneira, nem conhecia essa “maneira de programar”.

    (responder)
  8. Carlos Gonçalves  11 Janeiro 2010

    @Scorch: é uma questão pertinente.
    Não sei até que ponto afecta a performance com o uso massivo desta sintaxe, pois nunca fiz um uso massivo dela.
    Porém o WordPress utiliza bastante este tipo de sintaxe e não noto quebras de performance por isso.

    (responder)

Comentar

Nota: A moderação de comentários está activada e pode atrasar o teu comentário. Não há necessidade de reenviares o teu comentário.

  1. Carlos Gonçalves  Janeiro 11, 2010
More in Outros (1 of 12 articles)

# #