ООП мечти!
28 отговора
1402 прегледа
ООП мечти!
Търся нещо по-адванцед за ООП и ПХП.
Мисълта ми е някаквъ туториал където да се говори повече за класове, обекти, инстанции и как тези неща живеят в апликацията. Модели за сериализация, object-mapping и т.н
Естествено ако някой от тук постващите ГУРУ-та е склонен да сподели попвече информация ще съм му задължен.
Мисълта ми е някаквъ туториал където да се говори повече за класове, обекти, инстанции и как тези неща живеят в апликацията. Модели за сериализация, object-mapping и т.н
Естествено ако някой от тук постващите ГУРУ-та е склонен да сподели попвече информация ще съм му задължен.
Re: ООП мечти!
само да не се окажат наистина мечти
кажи какво по-точно търсиш, ако си MVC евангелист, виж phppatterns.com и рагледай линковете (предимно за ООП са), както и прочети от phparch.com - Industrial Strength MVC, където е даден пример за фреймуърк, използващ adodb, smarty, phrame & eclipse
предимно за ООП се говори тук [линк]
btw надявам се, че знаеш какво правиш и искаш, т.е. ООП функционалността на ПХП не е такава, като в Джава (примерно), а и нещата не са такива, каквито би очаквал да са (особено при MVC, тъй като нямаш никакъв "живот" на сесия, променливи и т.н. във виртуална машина - целия стейт се лоадва и зачезва на всеки call, а сесийките са си файлчета - MM shared сесийте се оказва, че не работят като хората, а 3rd party session server-а още никакъв го няма)
та исках да ти кажа, че трябва "да си простираш краката според чергата, PHP-то де ;)" и да не се опитваш да правиш неща, за които езика не е предназначен - той предоставя доста други възможности, които пък другите езици ги нямат (смарти-то само по себе си е много показателен пример)
нещата няма да се оправят генерално и с PHP5, т.е. там класовете и обектите ще се държат доста по-нормално от сега, но другото ...
евентуално се очаква PHP6 да е това, което един "джава"
програмист би очаквал - а именно очаква се Perl6, Python & PHP6 да ползват Parot виртуалната машина, която е в много ранен стадий на разработка (наскоро гледах тестове на php.weblogs.com - още един хубав сайт)
Generating a Mandelbrot fractal
– PHP, 2.4 seconds
– PHP-Hacked, 1.2 seconds
– Parrot without JIT, 0.5 seconds x1.5 = .75
– Parrot with JIT (Intel), 0.08 seconds x1.5 = .12
---тук е добавката при редакция ----
забравих да кажа, че факта, че ти отговарям, не означава че съм гуру
просто споделям моето мнение по въпроса, предполагам може ...
кажи какво по-точно търсиш, ако си MVC евангелист, виж phppatterns.com и рагледай линковете (предимно за ООП са), както и прочети от phparch.com - Industrial Strength MVC, където е даден пример за фреймуърк, използващ adodb, smarty, phrame & eclipse
предимно за ООП се говори тук [линк]
btw надявам се, че знаеш какво правиш и искаш, т.е. ООП функционалността на ПХП не е такава, като в Джава (примерно), а и нещата не са такива, каквито би очаквал да са (особено при MVC, тъй като нямаш никакъв "живот" на сесия, променливи и т.н. във виртуална машина - целия стейт се лоадва и зачезва на всеки call, а сесийките са си файлчета - MM shared сесийте се оказва, че не работят като хората, а 3rd party session server-а още никакъв го няма)
та исках да ти кажа, че трябва "да си простираш краката според чергата, PHP-то де ;)" и да не се опитваш да правиш неща, за които езика не е предназначен - той предоставя доста други възможности, които пък другите езици ги нямат (смарти-то само по себе си е много показателен пример)
нещата няма да се оправят генерално и с PHP5, т.е. там класовете и обектите ще се държат доста по-нормално от сега, но другото ...
евентуално се очаква PHP6 да е това, което един "джава"
Generating a Mandelbrot fractal
– PHP, 2.4 seconds
– PHP-Hacked, 1.2 seconds
– Parrot without JIT, 0.5 seconds x1.5 = .75
– Parrot with JIT (Intel), 0.08 seconds x1.5 = .12
---тук е добавката при редакция ----
забравих да кажа, че факта, че ти отговарям, не означава че съм гуру
просто споделям моето мнение по въпроса, предполагам може ...
Редактирано от AcidMemory на
Re: ООП мечти!
евентуално се очаква PHP6 да е това, което един "джава" програмист би очаквал
ще стане мазало и ще се появи нов много лек скипт език за уеб.
-----------------------
гърбавия, ковчег ще го изправи
ще стане мазало и ще се появи нов много лек скипт език за уеб.
-----------------------
гърбавия, ковчег ще го изправи
Re: ООП мечти!
Много благодаря!
Просто не съм пипал това животинче и сега ми е интересно за какво става въпрос. Попаднах на един (CMS)проект и това което ме заинтригува е факта, че е ООП (поне така пише...!!!).
Разгледах го и се хванах да видя какво пише по дебелите книги за ПХП и ООП, но това което намерих естествено не ми се видя достатъчно......!!!
П.П Определено съм фен на MVC, без с това да предизвиквам асоциации у JAVA програмистите...!!!!
Просто не съм пипал това животинче и сега ми е интересно за какво става въпрос. Попаднах на един (CMS)проект и това което ме заинтригува е факта, че е ООП (поне така пише...!!!).
Разгледах го и се хванах да видя какво пише по дебелите книги за ПХП и ООП, но това което намерих естествено не ми се видя достатъчно......!!!
П.П Определено съм фен на MVC, без с това да предизвиквам асоциации у JAVA програмистите...!!!!
Re: ООП мечти!
заеби тва, че споменах джава програмистите, просто повечето книги, които имам за дизайн петърнс са за джава ... а и ПХП клони в ООП-то към джава, а не към Ц++ - та затова, не е нещо лично ...
Re: ООП мечти!
Няма проблем!
Между другото това е факт. Повечето от материалите са десигнпаттернс са за JAVA.
Между другото това е факт. Повечето от материалите са десигнпаттернс са за JAVA.
Re: ООП мечти!
мдаам, предполагам имам почти всички хубави книжки в тази област (а и не само тази), но просто нямам физическата възможност да ги изчета всичките ... 
Re: ООП мечти!
така де, с малко уточнение, че първата книга по въпроса има примери на C++ и Smalltalk. дай малко примери за тия твои "повечето"
Re: ООП мечти!
и ако някой ми обясни за чий уй са им интерфейсите в динамичен език като пхп... баси малоумието.
бих приел интерфейси в недомислени езици със статични типове дето трябва да казваш, че чакаш обект дето да отговаря на дадени съобщения... ама за какво ми е това в езици, където мога да пратя всякакво съобщение на всеки обект. да има интерфейси в Smalltalk, Python, Ruby?
и аз си мисля, че опита да се имитира джава само ще осере езика. баси само exceptions липсват на тва което си го има и в момента.

бих приел интерфейси в недомислени езици със статични типове дето трябва да казваш, че чакаш обект дето да отговаря на дадени съобщения... ама за какво ми е това в езици, където мога да пратя всякакво съобщение на всеки обект. да има интерфейси в Smalltalk, Python, Ruby?
и аз си мисля, че опита да се имитира джава само ще осере езика. баси само exceptions липсват на тва което си го има и в момента.
Редактирано от Mycлoн на
Re: ООП мечти!
ами то в ПХП5 ще си има exceptions, а за статични типове - ще има т.нар. type hints, което ще е като параметър с фиксиран тип данни (т.е. няма да се приеме друг, освен посочения в декларацията)
а за чий уй са им интерфейсите ... PHP Group прави това, което иска PHP Community ... тва е (а ПХП-то се слави с лесен за научаване език .... не ща нищо да намеквам
)
мене ми стигаше да оправят само copy и reference-ването на обектите и някои други малки недомислици ...
но има и друга страна - зенд трябва и пари да изкарват
, така че и доста желани неща са лееко "пропуснати"
connection pooling се искаше още откак се помна ... верно има SQL Relay, ама ...
ако ПХП не отиде в посока към Parrot VM, а остане със зенд engine-а, няма да се учудя в бъдеще да излезне продукт с евентуално име "Zend Application Server"
а за чий уй са им интерфейсите ... PHP Group прави това, което иска PHP Community ... тва е (а ПХП-то се слави с лесен за научаване език .... не ща нищо да намеквам
мене ми стигаше да оправят само copy и reference-ването на обектите и някои други малки недомислици ...
но има и друга страна - зенд трябва и пари да изкарват
connection pooling се искаше още откак се помна ... верно има SQL Relay, ама ...
ако ПХП не отиде в посока към Parrot VM, а остане със зенд engine-а, няма да се учудя в бъдеще да излезне продукт с евентуално име "Zend Application Server"
Re: ООП мечти!
съгласен съм за копирането и референсването - друг рендосващ момент дето спъва хората идващи от остро Ц и джава среди... то айде слагаме амперсанд и получаваме референс ама като гледам какви магии трябват, че да върнеш референс от функция - оамперсандя ти се целия файл :(
за апликейшън сървър си мечтая и аз. чудя се дали не може да се получи нещо подобно с FastCGI. там нали апликацията остава жива между заявките. само трябва да внимаваш с пуловете от процеси хехе. ще проуча като спре да ме мързи, така или иначе бих искал да пробвам уеб дебелопмънт с нормални езици като python или ruby. да, знам за mod_python и mod_ruby ама и те са като пхп-то... няма състояния м/у заявките.
колкото до паррот-а -- не се ли бави вече прекалено
хехе сигурно някой ще ми каже, че ще ми върне всичките пари, които съм дал за паррота, че и в десеторен размер 
за апликейшън сървър си мечтая и аз. чудя се дали не може да се получи нещо подобно с FastCGI. там нали апликацията остава жива между заявките. само трябва да внимаваш с пуловете от процеси хехе. ще проуча като спре да ме мързи, така или иначе бих искал да пробвам уеб дебелопмънт с нормални езици като python или ruby. да, знам за mod_python и mod_ruby ама и те са като пхп-то... няма състояния м/у заявките.
колкото до паррот-а -- не се ли бави вече прекалено
Re: ООП мечти!
за FastCGI и аз съм си мислил, но не зная дали пак ще свърши работа за пулинг-а, то и апач процесите са много и не знаеш в кои ще попаднеш, та предполагам и чакащите пхп процеси са много и не е ясно в кой ще попаднеш, за да използваш отново ресурса, тъй че ... едва ли
според мене варианта си е sqlrelay.sourceforge.net, но просто трябва да го включат и в библиотеки като ADOdb или PEAR:DB
python и ruby са в голяма война, но според мен сбъркаха с питона, че го направиха като руби (то си личи де, много хора още си ползват стария ...)
а за парота, да не би да си се надявал там на некви бързи постижения
, но идейката си е добра, ако си чел линковете, които съм постнал преди, ще видиш, че уж Perl, Python & PHP ще се насочат натам, но не е ясно дали ще са истинските или форкнати проекти вече - JIT compiler-а си е JIT compiler
според мене варианта си е sqlrelay.sourceforge.net, но просто трябва да го включат и в библиотеки като ADOdb или PEAR:DB
python и ruby са в голяма война, но според мен сбъркаха с питона, че го направиха като руби (то си личи де, много хора още си ползват стария ...)
а за парота, да не би да си се надявал там на некви бързи постижения
Re: ООП мечти!
що пък война на питон и руби :) повече се дъвчат май за перл срещу питон.
питона наистина е много приятен език, ама рубито с тия блокове няма надминаване... леле майко
питона наистина е много приятен език, ама рубито с тия блокове няма надминаване... леле майко
Re: ООП мечти!
амииии ... сега ще ти изровя да видиш кво става просто ...
[линк]
руби се дразнеха с питон, че не са чисто обектноориентирани, нямали това, нямали онова ... и после 2+ версиите можеха всичко като руби - абе простотия
ето ти един типичен пример, как, моля ти се, числата (като обекти) нямали методи, ама как може такова нещо
...
[линк]
[линк]
руби се дразнеха с питон, че не са чисто обектноориентирани, нямали това, нямали онова ... и после 2+ версиите можеха всичко като руби - абе простотия
ето ти един типичен пример, как, моля ти се, числата (като обекти) нямали методи, ама как може такова нещо
[линк]
Re: ООП мечти!
вярно. явно съм останал с това впечатление от comp.lang.python, където много често се появяваше въпрос в стил "тва на перл се прави на 1 ред - може ли на питон пак така?" 
Re: ООП мечти!
Прекрасна тема, доста интересни неща си маркирах относно оопето с пхп... благодаря ви за интересния диалог :)
ПП. поддържам тезата че най-куцото в момента са амперстандите. Мисля си че try catch throw finally и exception ще са доста полезни ...
ПП. поддържам тезата че най-куцото в момента са амперстандите. Мисля си че try catch throw finally и exception ще са доста полезни ...
Re: ООП мечти!
не пропускай факта, че се занимавам с пхп от няколко месеца и се започна по неволя... после ми хареса ( от 1 път не се става педераст нали :) ).
та тия мои мрънканици за амперсандите и изключенията може да са плод на мои опити да пиша пхп с модели от други езици, което не е много препоръчително. хе, та аз искам и да се махне процедурното от езика :) всички самотни функции, които не са методи на клас - на сапун
искам и еквивалента на пакетите на джава и неймспейсовете и асемблитата на .НЕТ. тва май ще го има в пхп5 така или иначе.
та тия мои мрънканици за амперсандите и изключенията може да са плод на мои опити да пиша пхп с модели от други езици, което не е много препоръчително. хе, та аз искам и да се махне процедурното от езика :) всички самотни функции, които не са методи на клас - на сапун
искам и еквивалента на пакетите на джава и неймспейсовете и асемблитата на .НЕТ. тва май ще го има в пхп5 така или иначе.
Re: ООП мечти!
тц, неймспейсовете ги отебаха - проблемна е реализацията
все пак спецификата и на двата езика е доста различна, пхп-то има прекалено динамична структура - по тази причина и казаха, че няма да има ПХП към дотнет-а
все пак спецификата и на двата езика е доста различна, пхп-то има прекалено динамична структура - по тази причина и казаха, че няма да има ПХП към дотнет-а