Re: Does class length slow down performance

From: Date: Thu, 22 Jul 2010 10:35:46 +0000
Subject: Re: Does class length slow down performance
References: 1 2  Groups: php.general 
Request: Send a blank email to php-general+get-307086@lists.php.net to get a copy of this message
Ashley Sheridan wrote: > On Thu, 2010-07-22 at 10:49 +0200, Sebastian Ewert wrote: > >> Hi, >> >> I'm developing an joomla component and my helper an user classes are >> crowing bigger and bigger. The helper class is for static use only. >> >> Does class size decrease performance of my php scripts, even for static >> usage? >> Is there a general rule when to split a class to keep performance up? >> >> Thanks for reply, >> Sebastian >> >> > > > How big roughly are we talking here? The larger a script or class is, > the more memory this uses per instance. Out of the box, PHP doesn't have > a way to share the memory space of libraries and classes, so creating > massive scripts for a website is not a great idea. > The user object contains 850 Lines and about 50 functions. It also implements 2 table-objects (DB Tables). The helper class contains 500 Lines. > The typical approach is to break classes down into blocks such that you > need only include per script what you actually need to run that script. > > For example, having a full class dedicated to user management would need > somewhere to create a list of users. Now it doesn't make sense to > include this user management class each time you want to create a list > of users, so you could split that method off into a different class > where it can easily be shared without every script loading in lots of > unnecessary code. Thats exacty the point. In my user class I have functions whitch return object-lists of diffrent users or strings with html-form elements for managing this user account. But if I put all these in a helper class I would anyway need to implement the user object there, because of the other getter functions (getUserName etc.) and the table-objects. I always thought this would be less effective, because I have more instances of objects. Thanks, Sebastian

« previous php.general (#307086) next »