Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

mangakah

O que você mudaria no PHP se pudesse ditar a próxma versão (PHP 6)?

Recommended Posts

  Citar

Echo pratico digitar -> ainda mais em teclado ABNT o americano tbem nao é dificil. e nem atrasa e muito menos tira produtividade do programador.

Mas tu tem que concordar que é muito mais simples apertar um simples . (ponto)

Compartilhar este post


Link para o post
Compartilhar em outros sites
  Em 25/07/2013 at 16:22, srnalim disse:

Vamos concordar que as mudanças citadas é tudo pra deixar o programador mais preguiçoso quer facilidade coisa masi legivel .

esse é o objetivo!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pelo jeito, srnalim deve discordar da "nova" sintaxe para arrays...

 

Antes era:

 

 

$arr = array();

 

Agora pode ser feito simplesmente assim:

 

 

$arr = [];

 

Ficou muito mais fácil, mais produtivo, legível, etc., principalmente para longas cascatas aninhadas. Mas isso deve deixar o programador preguiçoso, né...?

Compartilhar este post


Link para o post
Compartilhar em outros sites

o $ da uma facilidade de entendimento as variáveis.

 

o a questão da concatenação é horrível com p + - por que ele começa a dar conflito com operações matemáticas.

 

você tira 1 caracter (-> vira .) mas ganha uma função inteira de brinde que é inútil.

 

No javascript toda operação você tem que dar o parseFloat se não ele não soma e sim concatena.

 

1 capricho ali muda tudoooo e isso não faz sentido por que é BOM se não nem teria tantas boas aplicações e um crescimento absurdo de programadores e da linguagem.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu queria poder colocar um adendo aqui.

Quando eu digo constantes dinâmicas eu digo que elas podem ter valores dinâmicos, não que o valor delas possa ser alterado.

 

Atualmente, usando o const, podemos apenas definir valores estáticos para as constantes, veja:

<?php

const FOO = 'hehe';
const BAZ = 1;
const BAR = true;

 

No exemplo acima, tudo funciona, mas vamos ver o exemplo de baixo:

 

<?php

const X = new stdClass;
const Y = 'Foo' . 'Bar' . 'Baz';
const Z = 5 * 30;

 

Nenhum dos exemplos acima funciona porque constantes definidas com const são obrigadas a ter um valor estático. Não pode ser um objeto, não pode ser uma string concatenada, não pode ser um cálculo, nada disso, apenas valores estáticos.

 

E o mesmo se aplica a propriedades definidas fora do __construct.

 

---------

 

O grande problema é: o PHP não será quebrado em hipótese alguma. Mudanças radicais na sintaxe destruiria a compatibilidade da linguagem. PHP não é Pyhton para quebrar tudo de uma versão para outra.

 

Se realmente quisermos algo assim, apenas uma nova linguagem pode nos atender.

 

---------

 

Os grandes problemas com a sintaxe:

 

O símbolo de mais não serve em uma linguagem fracamente tipada, vide Javascript.

O ponto é usado para concatenar, sem chances de substituir o ->, que vem do C.

 

As soluções que não destruiriam a linguagem:

 

- O $ pode tornar opcional. É meio complexo discutir sintaxe porque varia de gosto para gosto.

- O ponto-e-vírgula e os parêntesis também podem ser opcionais, ninguém gosta de colocar ; no final de cada linha, e isso não faz sentido.

- A concatenação pode ser feita sem símbolo algum.

 

--------

 

E pqp, não é porque algumas mudanças façam a linguagem parecer outra em alguns aspectos que significa que a linguagem agora é outra.

Compartilhar este post


Link para o post
Compartilhar em outros sites
E pqp, não é porque algumas mudanças façam a linguagem parecer outra em alguns aspectos que significa que a linguagem agora é outra.

YEAAAH.

 

nada se cria tudo se copia, pensando por esse lado beleza mas a galera quer mudar tudo, ai também é sacanagem.

 

e de todos os pontos que você citou eu só não concordo com a relação do ponto e virgula, pelo simples fato de dizer:

Olha, essa linha acabou.. next();

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ponto-e-vírgula não é necessário, é apenas "ceremony".

 

<?php
class Test
{
    static public function getNew()
    {
        return new static;
    }
}

class Child extends Test
{}

$obj1 = new Test();
$obj2 = new $obj1;
var_dump($obj1 !== $obj2);

$obj3 = Test::getNew();
var_dump($obj3 instanceof Test);

$obj4 = Child::getNew();
var_dump($obj4 instanceof Child);

 

Ou

<?php
class Test
{
    static public function getNew()
    {
        return new static
    }
}

class Child extends Test
{}

$obj1 = new Test()
$obj2 = new $obj1
var_dump($obj1 !== $obj2)

$obj3 = Test::getNew()
var_dump($obj3 instanceof Test)

$obj4 = Child::getNew()
var_dump($obj4 instanceof Child)

 

(tirei o código do manual do PHP).

 

O interpretador/compilador deve ser inteligente o suficiente para entender um fim de linha, ponto-e-vírgula é boilerplate e boilerplate é chato.

Compartilhar este post


Link para o post
Compartilhar em outros sites
  Citar

O interpretador/compilador deve ser inteligente o suficiente para entender um fim de linha, ponto-e-vírgula é boilerplate e boilerplate é chato.

Entendi, não pareceu mudar muito.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Quanto ao ; ficar opcional, eu não concordo. A obrigatoriedade de terminar cada declaração com ; foi uma das poucas boas idéias da sintaxe do PHP.

 

No Python, por exemplo, o ; é opcional e recomendável só usá-lo quando for colocar mais de um comando em uma linha (prática que não é recomendável... hehe). Mas por terem colocado o ; opcional, tiveram que exigir um caractere especial para quando um comando ocupar mais de uma linha, que no caso é o \

 

Se eu quiser terminar um print em outra linha, terei de usar '\' (<=2.7):

 

 

print 'Something',\
'something else'
 

 

Seria bem melhor ter definido ; como obrigatório e pronto... IMO. Se acha chato, o IDE pode ser programado para adicionar o ; automaticamente ao final de cada declaraçao.

Compartilhar este post


Link para o post
Compartilhar em outros sites

e o suporte a unicode?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mas aí é problema do Python..

Em sintaxes limpas é comum haver esse tipo de problemas, mas o código bonito é importante.

 

Você, nesse caso, usa um backslash, mas usa apenas em poucos casos.

 

 

  Em 25/07/2013 at 19:37, shini disse:

e o suporte a unicode?

 

Realmente isso foi esquecido, mas de uma forma ou outra isso vai, com certeza, entrar no PHP. Isso é falado há muito tempo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Os programadores PHP, tem como?

Não me levem a mal, mas programador PHP é chato pra caralho (no qual me incluo).

 

 

::Salvo restrições.

Compartilhar este post


Link para o post
Compartilhar em outros sites
  Em 25/07/2013 at 20:01, valeriabarros disse:

Os programadores PHP, tem como?

Não me levem a mal, mas programador PHP é chato pra caralho (no qual me incluo).

 

 

::Salvo restrições.

 

E qual linguagem você prefere?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Isso é muito vago. Depende do que vou trabalhar.

Trabalho só com PHP a dois anos. Mas amo Java.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acho java apesar do poder tem coisa de mais ainda acho o php a linguagem mais limpa atualmente sem contar o custo de servidores para PHP e comparando com o JAVA.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não tem como comparar nenhuma linguagem com qualquer outra.

Cada linguagem tem um propósito, pontos fortes e fracos, tarefas nas quais se sai bem e outras nas quais se sai mal.

Comparar linguagens só serve pra criar flame wars por aí, onde surgem coisas como:

  Citar

Java é burocrático

PHP é coisa de amador

Python é coisa de criança

C é coisa de maluco

Pascal é ultrapassado

Super produtivo, não?

Compartilhar este post


Link para o post
Compartilhar em outros sites
  Rasmus Lerdorf disse:

Existem dois tipos de linguagem: as que a gente reclama e as que a gente não usa.

Encontrei esses tempos pela internet, sem fontes. Pode nem ser dele, mas o fato é inquestionável.

 

Se formos investigar a fundo, falando do que o Henrique Barcelos já iniciou, qual seria o propósito do PHP, perceberíamos que já não tem parte do propósito para o qual o criador queria.

  Citar

Ele geralmente promove a abstenção de uso de frameworks, e o uso do PHP como uma linguagem de template. Para ele, isso se traduz em velocidade pura e escalabilidade (no que diz respeito ao carregamento). Para todos os outros, isso se traduz em pilhas de código procedural macarrônico e projetos de manutenção impossível. Durante os 10 anos difíceis que se seguiram ao nascimento do PHP, em 1995, era dessa maneira que os projetos eram escritos.

Fonte: http://imasters.com.br/artigo/21272/php/por-que-o-php-era-um-gueto/

 

Hoje, isso pode não ser mais verdade, mas esse foi o propósito da linguagem.

Compartilhar este post


Link para o post
Compartilhar em outros sites

PHP está mudando rapidamente e é o momento da comunidade pressionar para que recursos que tornem a linguagem mais poderosa sejam inclusos built-in e que o velho problema da esquizofrenia nos nomes de funções e outras incosistências (que também existem em outras linguagens, mas não em tal quantidade...) seja enfim endereçado. Quando isso acontecer, tenho certeza que a linguagem começará a ser levada mais a sério pela comunidade acadêmica e por grandes corporações.

 

Se você for ver em retrospectiva, houve um grande salto entre o PHP 4 e 5 a cada versão menor que é liberada há muitas adições legais, como sintaxe simplificada para array, melhor lambda, namespaces, yeld, traits, etc., creio que atualmente PHP seja uma das linguagens que está evoluindo mais rapidamente.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Valor dinâmico em Const foi a melhor. =X

 

shauhsuahsuhaushuahsuhaushaushauhsuahsuahsuhaushuashuahsuahsuhaush.............

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.