Re: OO purism sucks - this is a rant for anyone who is allergic to that kind of thing...
| From: | Jochem Maas | Date: | Thu, 01 Jun 2006 23:14:26 +0000 |
| Subject: | Re: OO purism sucks - this is a rant for anyone who is allergic to that kind of thing... | ||
| References: | 1 2 3 4 5 6 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-237224@lists.php.net to get a copy of this message | ||
Robert Cummings wrote:
On Thu, 2006-06-01 at 17:43, Jochem Maas wrote:...
I did get that (well I assumed assumed thats what you meant - I took the opportunity to highlight the practicalities of being stuck in a situation due to commercial constraints for those who might be interested in learning from my 'mistakes'.) ...*hehehe* Sorry, the crud wasn't referring to your code, but rather toOther than basic inheritance and the namespace features provided by classes, I don't see much else that is critically useful. There's was a strange push for all kinds of advanced OO features in PHP5 and somehow that got some kind of ball rolling to make things more and more complicated. Other than the pass objects by reference by default feature of PHP5 and better constructor/destructor support... the rest is just tooth decaying candy... and Jochem seems to be getting cavities it seems -- time to floss and brush the crud away ;)like you Rob I have a big OO codebase, only mine is php5 only and not in a state were I'm comfortable publishing it (one needs to know too much about the codebase concepts and firebird DB to make it relevant without documentation that I will probably never have time to write :-/) none the less is stable, robust, powerful and flexible - it cost me about 2 years of near fulltime development and I run a number of well paid projects on it - brushing it away is not an option at this stage in the life of the code, not that I consider it cruddy enough either.
ah IC - although I do recall Rasmus talking about performance issues if this problem would have been solved the right way - I may be mistaken - either way the purists one that battle.now I understand the annoyance Rob refers to but I can live that that one because I have read enough to understand that there is a segfault issue and although in theory it should be the engine that just 'deals' with it it can't without a lot of developer headache and/or BC breakage and/or performance issues playing up - so its the lesser of 2 evils.Well there "was" a segfault, but that's fixed now, now the warning is thrown because of some purist attitude that says it's incorrect to pass a literal to a reference expecting parameter... I can see how that's an issue in C with pointers, or in a strongly type language like Java, but part of PHP's popularity is that while it shares a lot of functions with C, it is neither C nor Java, but rather a much simpler system that generally for all the novices out there "works well".
...
the more I get in it the pretty it gets - javascript doesn't just give you a revolver to shoot yourself with it gives you a Doom3 chainsaw and it's shiny :-)(yes I know javascript is prototypal iso class-based but that is not the point :-)Ahh yes, I do like the elegance of prototypes too. They're a different kind of beast, but a very flexible one.
not that procedural code is completely safe from the purists that are out 'to protect the developer' - remember how flexible array_merge() used to be??? well try stuffing anything other than an array into it these days and you get a big fat E_WARNING. and I am pretty damn sure *that* had nothing to do with fixing a segfault.*hehehe* Yeah. Cheers, Rob.