[webkit-dev] Simplifying "hub" classes (was Cleaning up directories in WebCore)
Hajime Morrita
morrita at google.com
Sun Nov 20 20:36:39 PST 2011
One traditional pattern is to split a big class into a set small
classes plus a "hub" class
like how Adam has done for original Frame.
In that pattern, small classes has a reference to the hub class and
know its API.
I hope these small classes know just a small part of its hub class via
interface (abstract class.)
In that way, such classes can be unit-tested independently without
instantiating the hub class,
whose instantiation is typically a difficult job.
Personally, I feel that we don't need category-like mixin mechanism
for existing hub classes.
Since we have just a few or dozen of instances of these classes and
the size overhead from extra pointers
is negligible. It isn't case for the node family though.
--
morrita
On Sun, Nov 20, 2011 at 2:23 AM, Adam Roben <aroben at apple.com> wrote:
> On Nov 18, 2011, at 5:55 PM, Adam Barth wrote:
>
>> Really, SQL_DATABASE just wants to store some state per
>> ScriptExecutionContext. It seems like there should be a way to do
>> that without making a mess of ScriptExecutionContext.
>>
>> IMHO, we want something like the C++ equivalent of Objective-C
>> categories. I'm not sure how best to achieve that.
>
> Note that ObjC categories don't allow you to add extra state (i.e., ivars) to classes. They only allow you to add extra methods.
>
> -Adam
>
> _______________________________________________
> webkit-dev mailing list
> webkit-dev at lists.webkit.org
> http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
>
--
morrita
More information about the webkit-dev
mailing list