ja bych cele PHPcko forknul, vymazal vsecky ty nesmysly ktere "nuti" zacatecniky psat tak "retardovane", udelal z toho typovej jazyk bez uchylnosti jako register_globals, rozumne nastavil definici namespace a ne ten vysmech ktery pripravuji do 5.3 a jako bonus bych pridal kompletni !!! dokumentaci... a veskere jine verze at shnijou v pekle...
jen skoda, ze je to tak utopicka myslenka :(
register_globals jsou v novych verzich defaultne vypnute a vyhledkoe budou zruseny uplne. Stare skripty se tedy musi budto upravit (quick'n'dirty metoda je vrazit na zacatek extract($_REQUEST); ), prepsat nebo zahodit.
A s tou typovosti - vzhledem k tomu, ze spousta veci akceptuje a/nebo vraci "typ" mixed, bylo by to opravdu, opravdu nesnadne ...
ano, prave uz jen to, ze nektere funkce vraceji mixed znaci, ze v PHP neni neco v poradku! chapal bych, kdyby to tak bylo u tech "starsich" funkci, ale ono se tak PHP vytvari porad... i v ZF jsou metody ktere vraci mixed - a to sem mel za to, ze to vytvari skupina nejakych opravdovych programatoru...
Typovosť by sa samozrejme dosť hodila do PHP. V PHP5 v istej miere už zabudovaná je, keďže môžete špecifikovať typ (resp. triedu objektu) parametru metódy/funkcie. No, snáď sa podobné vymoženosti rozšíria aj na základné typy a návratové hodnoty, aj keby len voliteľne.
Idealni to ma Groovy, kde typovost muzete drzet nebo taky nemusite. Osobne jediny duvod pro typovost beru komunikaci se svetem velku – vstupy a vystupy verejneho API metod. Jinde obvykle jen zdrzuje, znesnadnuje a zneprijemnuje praci.
znesnadnuje?... ja bych rekl, ze kdyby bylo PHP striktne typove, tak je hned veselejsi v tom neco delat. precejen i programator je clovek a ani propracovane Zend Studio nenabizi uplnou kontrolu nad zdrojakem. i sebezkusenejsimu programatorovi obcas nekde neco ujede a pak se divi, proc to nefunguje...
Jak pro koho :) Hlavne nezapominej, ze dynamicke typovani umoznuje spoustu velmi zajimavych a uzitecnych veci. Myslim si, ze je dulezite aby byl jazyk silne typovy, ale dynamicky typovany, to je aspon pro me idealni kombinace.
V PHP nic nenutí začátečníky psát retardovaně. Naopak, dá se v něm ( zláště v PHP 5 ) psát velice čistý a stručný kód. Je to jen o vnitřní disciplíně a troše zkušeností. Jako ostatně ve všech efektivních programovacích prostředcích.
vzdy se da programovat pitome :D, to ano... ale Java nebo .NET proste uplne pitomosti nedovoli - maji nejakou strukturu a uzivatele proste poslou dohaje, kdyz zkusi nejakou volovinu... ale PHP k tomu uplne vybizi... $$jmenoPromenne, new $jmenoTridy( ), new self( ), promenne v globalscope, porovnavani predem nedeklarovanych promennych ... a podobne X-( ...
jasne, v Jave nebo .NETu muzu take vytvaret dynamicky objekty, ale delam to alespon pres volani nejake systemove metody, takze kdyz se ke zdrojaky po nejake dobe vratim, chapu, co to dela - v PHPcku znamena vratit se ke kodu zdlouhave zjistovani, co, kde a proc...
To je pravda, ale take je fakt, ze v nekterych jazicich se pise obtizne spatne a v nekterych se zase obtizne pise dobre. PHP k cistote kodu IMHO moc nevede.