NeoX Posted July 18, 2005 Report Share Posted July 18, 2005 Es nesen saaku rakstiit dazjas klases PHP turpmaakiem projektiem - calendar klasi, menu gjeneratoru utt. Vaardu sakot nelielas klasiites, kuras vareetu izmantot un modificeet gandriiz jebkuraa projektaa. Es kaadu laiku arii esmu njeemies ar C++ un OOP, un nonaacu pie secinaajuma, ka PHP OO salidzinot ar C++ OO veel ir beernu autinjos, kaapeec? Te mineeshu dazjus iemeslus: 1) Kas ir OOP bez iekapsuleeshanaas? Pati OOP filozofija ir taada, ka klasee tiek defineetas metodes/f-cijas ar kuraam tiek apstraadaati, ieguuti mainiigie, veertiibas, BET PHP ljauj pa tiesho piekljuut jebkurai veertiibai. 2) Kas ir OOP bez polimorfisma? Liidziigi kaa 1) arii shii iipashiiba ir pashos OOP filozofijas pamatos. BET PHP neljauj rakstiit polimorfiskas metodes/f-cijas. Es esmu diezgan daudz darbojies ar C++ un polimorfisms ir vienk superiiga fiicha. 3) Cik zinu, tad nav atii NameSpace, vai arii nemaaku tos izmantot... Protams, daudz ir runaats par to vai PHP vispaar vajadzeetu taadu OOP un kaa tas ietekmee performanci, bet teiksim, ja straadaa ar PHP CLI versiju, tad es domaaju OOP ir ljoti noderiigs serveru programmatuuras izstraadee. Man interesee Juusu domas par to! :) Link to comment Share on other sites More sharing options...
NeoX Posted July 18, 2005 Author Report Share Posted July 18, 2005 par to iekaspuleeshanos, laikam nebuushu izpeetiijis manuaaljus riktiigi... tie atsleegas vaardi: protected, public utt. laikam ruupeejas par to, ne? Tipa defaultaa piekljuve ir public? Link to comment Share on other sites More sharing options...
Delfins Posted July 18, 2005 Report Share Posted July 18, 2005 PHP OOP tas viss nav vajadzīgs. PHP ir tikai interpreters un pa tiešo ar lietotāju nav nekādas saskarnes - PHP izdod tikai gatavu rezultātu - t.i. no ārienes tu nekādīgi nevari iespaidot PHP darbību. PS: nerunāsim par debugeriem Link to comment Share on other sites More sharing options...
NeoX Posted July 18, 2005 Author Report Share Posted July 18, 2005 Es nerunaaju par iespaidoshanu no aarienes, manupraat koderam ir vieglaak rakstiit lielus projektus ieksh OOP. Un ne vienmeer tas ir tikai WEB-based projekts, bet gan server-side. P.S. --- es nerunaaju par debuggeriem! :) Link to comment Share on other sites More sharing options...
Delfins Posted July 18, 2005 Report Share Posted July 18, 2005 Es nerunaaju par iespaidoshanu no aarienes, manupraat koderam ir vieglaak rakstiit lielus projektus ieksh OOP. Un ne vienmeer tas ir tikai WEB-based projekts, bet gan server-side. P.S. --- es nerunaaju par debuggeriem! :) 19512[/snapback] Nu un... kāda starpība? PHP OOP ir tik vienkāršs ka tas tikai dod savu "+" - nafig nevajag neko ilgi murgot - rakstīt vēl papildus getterus/setterus - rakstam vienkāršas, ērtas, ātras f-jas, kas dara savu darbu. Ko tu vēl gribi??? Klase pilda konkrētu izdevumu - basta. Link to comment Share on other sites More sharing options...
NeoX Posted July 18, 2005 Author Report Share Posted July 18, 2005 Var jau buut.... <_< Tapee arii prasu citu domas, vienkaarshi daudz kas ir pret OOP filozofiju kaa taadu. Link to comment Share on other sites More sharing options...
Delfins Posted July 18, 2005 Report Share Posted July 18, 2005 Server-Side appus rakstam iekš C++ (ar visu super-puper OOP). PHP jālieto tur, kur tas ir jālieto. PHP nav threads - so, server-side nekādīgi neder. PS: kas tev ir teicis, ka rakstīt C++ klases ir ērti? varu saderēt ka lielākā daļa no PHP koderiem pat nav redzējuši C++. - varbūt tas viņiem liekas `drausmīgi sarežgīts`, nevajadzīgs, un enkad neskarsies tam. Link to comment Share on other sites More sharing options...
NeoX Posted July 18, 2005 Author Report Share Posted July 18, 2005 Neviens nav teicis, pats esmu rakstijis. Iisti nevareetu teikt, ka viegli rakstit - driizaak ljoti advanceeti... Link to comment Share on other sites More sharing options...
Delfins Posted July 18, 2005 Report Share Posted July 18, 2005 Var jau buut.... <_< Tapee arii prasu citu domas, vienkaarshi daudz kas ir pret OOP filozofiju kaa taadu. 19515[/snapback] kas tur ir PRET !? nosaucam OOP implementāciju iekš PHP kā `PHP-OOP` `PHP-OOP` != `OOP` basta. kas tur vēl nav skaidrs? varu iedot piemēru - ņemam gludekli un čainiku (ūdens sildītājs) - abi kaut kādā veidā ražo karsto ūdeni - so abus var lietot kā ūdens sildītāju tējai. nu bet ikdienā tu taču nelej no čaiņika uz drēbēm un tad gludini, un otrādi - no gludekļa nelej karsto ūdeni krūzē! katrai lietai ir savs pielietojums. Link to comment Share on other sites More sharing options...
Delfins Posted July 18, 2005 Report Share Posted July 18, 2005 driizaak ljoti advanceeti... te tev ir atbilde - PHP ir jābūt vienkāršs - jo tā ir skriptu valoda (vairāk vai mazāk). Link to comment Share on other sites More sharing options...
bubu Posted July 18, 2005 Report Share Posted July 18, 2005 Kā jau Delfins saka, katrai lietai savs pielietojums, bet nu taviem trim punktiem nevar piekrist. 1) ir pieejams kopš php5, private/public/u.c. Taču liela jēga notiem, ja sources tāpat pieejamas un palabot tās neviens neliegs? 2) var rakstīt. Sintakse lai gan nav tik smuka, bet ir iespējamas fjas ar dažādu argumentu skaitu 3) arī namepaces ir. nu vismaz kautkas līdzīgs tām, bet ne tik smukā sintaksē: class blabla { static function xxx() { ... } } blabla::xxx(); Link to comment Share on other sites More sharing options...
Delfins Posted July 18, 2005 Report Share Posted July 18, 2005 aha, es aizmirsu pateikt, ka lietoju PHP5.. kas ir ~OOP compliant. Manuprāt tur to fīču PHP pat ir bikiņ pa daudz.. :) reti kurš web-ā izmantos visas php5-oop iespējas Link to comment Share on other sites More sharing options...
NeoX Posted July 18, 2005 Author Report Share Posted July 18, 2005 Bez visiem tiem OOP labumiem var iztikt, tikai polimorfisms gan pietruukst. Ar argumentu skaitu vien nepietiek, vajadzeetu dazjaadus datu tipus utt. Link to comment Share on other sites More sharing options...
bubu Posted July 18, 2005 Report Share Posted July 18, 2005 php ir dinamiska valoda. Mainīgo tipi nav jādefinē. Vienā vietā var rakstīt $i=5; nākamajā rindiņā $i='abc'; Tā ka dažādi tipi var būt. Vai nu pašam jānosaka tips un ko ar to darīt, vai arī jāuzticās, ka interpretators pārvētīs kā vajag. Link to comment Share on other sites More sharing options...
NeoX Posted July 18, 2005 Author Report Share Posted July 18, 2005 Protams var uzticeeties interpretatoram, bet biezji rodas probleemas ar float tipiem... bet visaa visumaa paldies par juusu viedokljiem, sava skaidriiba radaas. :D Link to comment Share on other sites More sharing options...
Recommended Posts