@pro666full: różnią się prawie wszystkim, ale na szybko dodałbym jeszcze że: - java jest kompilowana, php jest interpretowany - php jest bezstanowy (chyba nadal), java jest stanowa - java jest silnie typowanym językiem, php
@Windmark: wg mnie - kontrola typow, bledy na etapie kompilacji, debuger, obiektowosc sensowna, trudniej robic spagetticode, spring i tysiace innych zalet :)
@Windmark: przede wszystkim nie ma czegoś takiego jak twarde typowanie. Zakładam, że chodzi o statyczne lub silne. Statyczne polega na tym, że zmienna jest określonego typu i tego typu nie można zmieniać w trakcie pracy programu. Silne polega na tym, że tam gdzie ma być użyty dany typ można użyć tylko tego typu. Type hinting nie ma nic wspólnego z pierwszym, natomiast drugie naśladuje - jako nakładka w wybranych miejscach
@Windmark: Że łat? Chyba coś przespałem :) W PHP jeszcze długo, nie będzie silnego typowania. Ku uciesze jednych i rozpaczy innych... Nie uważam tego ani za wadę, ani z zaletę PHP. Takie jest po prostu. Z tego co mi się kołacze po głowie, to ma być wprowadzone typowanie (tylko typu wbudowane) zwrotek z lambd i innych klauzul. Czy coś takiego...
@Windmark: @JareQ: tak swoją drogą Guido van Rossum nie dopuścił do uzyskania jakiejkolwiek przewagi PHP nad Pythonem i wychodzący za dwa miesiące Python 3.5 (beta już jest) też ma pełny type hinting ( ͡º ͜ʖ͡º)
@Pipcieo: PHP również będzie miał pełny type-hinting z możliwością ustawienia go tak aby wywalał fatal error jeżeli nie dostosujesz się do typowania. Jedni będą korzystali z php jakby miał silne typowanie, inni nie. Wg mnie tak jest ok.
różnią się prawie wszystkim, ale na szybko dodałbym jeszcze że:
- java jest kompilowana, php jest interpretowany
- php jest bezstanowy (chyba nadal), java jest stanowa
- java jest silnie typowanym językiem, php
Type hinting nie ma nic wspólnego z pierwszym, natomiast drugie naśladuje - jako nakładka w wybranych miejscach
@Windmark twarde typowanie w PHP? Serio?
Nie wprowadzaj w błąd. Type-hinting to nie jest silne/twarde/statyczne typowanie.
function add(float $a, float $b): float {return $a + $b;
}
php > print "1" + intval(4);5
php > print "1" . intval(4);
14
przestaną być możliwe?