O documento discute mitos sobre a linguagem PHP, argumentando que ela é capaz de desenvolvimento profissional e escalável. Apresenta exemplos de grandes sistemas desenvolvidos em PHP e recursos como namespaces, lambdas, PHAR e coleta de lixo que demonstram sua maturidade. Defende que a qualidade do código depende do programador, não da linguagem.
10. Qualificação de profissionais
•PHP é fácil de aprender e fácil de fazer porcaria
•Programadores Java precisam de uma formação mais
sólida (orientação a objeto, padrões de projeto,
eficiência de algoritmos, estruturas de dados, etc. e tal)
•BONS programadores PHP também precisam!!!
11. Marketing
•PHP não é da Sun nem da Microsoft...
•Mas é bancado por:
•IBM
•Oracle
•Yahoo!
•entre outros...
12. Marketing
•PHP está presente em mais de 25 milhões de sites
•Com tudo isso, pra que propaganda? A propaganda
somos nós e tudo o que nós fazemos!
14. Mito #1 - Códigos PHP são sujos
http://flickr.com/photos/ripizzo/2310929170/
15. interface Printer {
void print(Message message);
}
class SystemOutPrinter implements Printer {
class Message {
public void print(Message message) {
private String message;
System.out.println(message);
public Message(String message) {
}
this.message = message;
}
}
public void print(Printer printer) {
public class HelloWorld {
printer.print(this);
}
public static void main(String[] args) {
Message message = new Message("Hello,
public String toString() {
World!");
return message;
AbstractPrinterFactory factory =
}
AbstractPrinterFactory.getFactory();
}
m
Printer printer = factory.getPrinter();
e
message.print(printer);
abstract class AbstractPrinterFactory {
}
ld
public static AbstractPrinterFactory getFactory() {
r
}
return new SystemOutPrinterFactory();
o !
}
public abstract Printer getPrinter();
W A acia
lo AV rocr
}
class SystemOutPrinterFactory extends
e l J u
H
AbstractPrinterFactory {
public Printer getPrinter() {
ab
}
return new SystemOutPrinter();
e su
}
16. Quem determina a qualidade do código
é o programador!
http://flickr.com/photos/zach_manchester/2302683790/
17. Mito #2 - PHP só serve para sistemas
pequenos
http://flickr.com/photos/memotions/259656126
18. T!
E os
.N
a d
ic
rí st
é c te oft
so
ra ros
e ca ic
Is
ad os M
b ilid ut
ta rod
a es p
E
P.S.: O orkut foi reescrito em Java, mas esse shot é dos velhos tempos de .NET
46. PHP 5.3
•Namespaces
Definição Uso
// diretamente
namespace YahooNews;
$foo = new YahooNewsDir;
class Dir {
...
// importando o namespace
}
use YahooNews;
$foo = new NewsDir;
// renomeando a classe
use YahooNewsDir as YND;
$foo = new YND;
47. PHP 5.3
•Lambdas e closures
$lambda = function () {
echo "Hello World!n";
};
$lambda();
48. PHP 5.3
•Lambdas e closures
function getSomador($x) {
return function ($y) use ($x) {
return $x + $y;
};
}
$somador = getSomador(10);
echo $somador(5); //15
echo $somador(32); //42
49. PHP 5.3
•PHAR - PHP Archive
•Garbage collection
•Late static binding
•Outros refatoramentos e correções de bug.