Melhor resposta
A Wikipedia começou em janeiro de 2001. Inicialmente, ela usava um software wiki diferente chamado UseModWiki , que foi escrito em Perl. No verão de 2001, ficou claro que sua popularidade está crescendo e que ele precisa de alguns novos recursos. Por exemplo, UseModWiki não conseguia “lidar com espaços, então você tinha que escrever” BuenosAires “em vez de” Buenos Aires “. Também tinha alguns problemas de desempenho. Então, um escritor voluntário da Wikipedia, Magnus Manske, que também era um programador, decidiu escrevê-lo Ele mesmo. Ele usava PHP simplesmente porque queria aprendê-lo. PHP era uma linguagem muito popular e de rápido crescimento para o desenvolvimento de sites dinâmicos naquela época.
Você pode encontrar mais informações sobre a história do MediaWiki nestas páginas:
- História do MediaWiki
- Por que Malarias Magnus é comemorado pelo Dia da Wikipedia do País de Gales
- A arquitetura de aplicativos de código aberto (Volume 2): MediaWiki
Resposta
Quando comecei a programar – tinha 17 anos na época, o PHP era “a melhor linguagem de todos os tempos” para mim, simplesmente porque era tão facilmente acessível para mim em o começo.
Como comecei com ele? Instalei o XAMPP no minha máquina windows, cliquei em “iniciar” para MySQL, Apache e foi isso. Estava preso. A capacidade de apenas colocar o script em /htdocs
e executá-lo via localhost / test.php era mágica.
Quer que o site esteja ativo? obtenha hospedagem, carregue os scripts via FTP e voila!
Banco de dados? Sem problemas, basta fazer o bom e velho mysql\_query()
e encerrar o dia. Então, alguns anos depois, depois de aprender como as coisas funcionam nos bastidores – ou seja, saber o que era aquele botão “iniciar” no XAMPP – e tentar outras linguagens, percebi como o PHP é feio, inconsistente, aleatório, inseguro e confuso.
Eu acho que algumas pessoas nunca saem dessa bolha do XAMPP, elas apenas ficam com as coisas com as quais se sentem mais confortáveis e as defendem até o último suspiro. Isso se torna uma religião para eles
Se eu não fosse curioso por natureza, provavelmente faria tudo em PHP, com um toque de JavaScript para o lado do servidor, como fazia antigamente, provavelmente gostaria de Node.js – e talvez até mudasse totalmente para ele.
No entanto, eu não gosto de Node.js.
Prós e contras das coisas mencionadas:
PHP Contras
- Cada paradigma possível, recurso, o que você puder pensar – o php o implementou. Precisa de características ? Precisa ir para ? Precisa de OOP ? Precisa de funcional ? Precisa de mais alguma coisa? Conseguimos.
- Dizem que o PHP 7 é rápido. Bem, é rápido se você compará-lo com uma instalação vazia do Laravel. Tente instalar o WordPress com “configuração normal de plug-in” e também “seletor de vários idiomas”. Boa sorte.
- Segurança é uma piada em php. Lembra de todas aquelas injeções de SQL? 90\% deles eram sites php porque decidiram que é muito legal ter
mysql\_query()
anunciado como “uma maneira muito fácil de realizar consultas SQL”. Todo tutorial possível no mundo começa: Ok, aqui está como você consulta o banco de dados no php:mysql\_query(“SELECT * FROM article WHERE id =”. $\_GET[‘id’])
é muito fácil !!! Vejo? Não é como o Java, primeiro você tem que preparar a declaração! É muito clichê !! Aborrecido !!! -
file\_get\_contents(“https://www.example.com”)
e tambémfile\_get\_contents(“../foo.txt”)
e tambémfile\_get\_contents(“php://input”)
e você tem o quê? Porque isso éfile\_*
então é para obter o conteúdo do arquivo. Sem mencionarfopen()
. -
error\_reporting(0)
e você pode fazer maravilhas. - Eu posso continue falando sobre sua “biblioteca padrão”.
Prós
- Sucesso do PHP é o módulo mod\_php do Apache.
- Basta fazer upload do script e ele funcionará.
- Exclua o script e ele não funciona mais.
- Se você já olhou para qualquer código que tenha {} você dirá “ei, é como Java | C ++ | C, etc etc, mas apenas coloque
$
antes do nome da variável. - Carregue o script via ftp e estaremos ao vivo, baby.
- PHP tem uma das maiores comunidades do mundo.
- Matriz? Isso é lista ou dicionário? Bem, são os dois (isso é uma trapaça, na verdade, mas ei as pessoas gostam de algo que funciona nos dois sentidos, quem se importa com um dicionário que não mantém a ordem ?!).
- A única coisa que na verdade, lançou alguma luz sobre o PHP é composer. Mas, novamente, quase todo mundo tem algum tipo de gerenciador de pacotes nos dias de hoje…
- O Laravel veio ao resgate de uma vez por todas para convencer as pessoas de que OOP é o caminho a percorrer e precisamos esquecer todo aquele absurdo
mysql\_*()
. No entanto, as pessoas ficam confusas sobre onde colocar sua lógica de negócios. Foi Repositório? Era modelo ou controlador? Ou Middleware? Onde? Hmm, deixe-me pensar … Acho que uma Característica resolverá o problema …
Nó Contras
- Bibliotecas terríveis –
npm install winston
,hipster-webserver
etc. É realmente uma coisa terrível, quando eu quero uma biblioteca de registro e tenho que escolher entre 9 bibliotecas diferentes. Por favor, não, apenas não. - Inferno de callback; nada pode ser feito sobre isso, exceto a sintaxe de espera assíncrona, mas simplesmente a maioria das bibliotecas são chamadas de retorno simples ou promessas de alguma outra “invenção” da qual o autor se orgulha. As promessas são apenas retornos de chamada com menos confusão que comecei a desprezar recentemente.
Prós
- I / O rápido e velocidade de execução v8. E daí? Qualquer coisa com libuv pode fazer isso. Empacote um python com MagicStack / uvloop e faça os benchmarks. Sem mencionar outras línguas que fazem isso de forma ainda mais elegante
- Entrada fácil. Isso é realmente uma coisa ruim. Desenvolvedores de front-end descobrindo suas habilidades de back-end. Apenas não faça isso.
A única maneira que eu gostaria que o Node fosse se ele tivesse alguma especificação. Onde as bibliotecas seriam perfeitamente organizadas e programadas com o mesmo estilo de codificação. Pare de inventar seu estilo . É terrível.
Quando você olha para a biblioteca de terceiros, se você vê a organização do código e o estilo que você não consegue nem começar a entender, eu simplesmente desisto.
Node é como se alguém desse um carro e 30000 $ dólares para um garoto de 16 anos para que ele possa cafetá-lo.
Do lado positivo, eu não estaria programando se não fosse pelo PHP. tendem a olhar para ele como uma criança olha para seu brinquedo mais antigo. Não vou brincar com ele. Mas quando eu olho para ele, ele me traz algumas lembranças e coloca um sorriso no meu rosto.
No fim, quando você faz algo – se você colocar bastante trabalho e coração nisso, e as pessoas gostarem – a linguagem não importa. O resultado final é tudo o que importa.
Paz