Heavy Constructors or use a method
<p>Both of these methods are kind of working for me, but I'm not sure what the recommendation would be from a "good practice" point of view.</p>

<p>I have a class which performs various control functions within my library, so needs to initialise all sorts of objects and properties.</p>

<p>Is it okay to put all this logic in the constructor for the class, or should I put it in an "Initialise" method.</p>

<pre><code>public MyClass()
{
    mSubObjectA = new mSubObjectA();
    mSubObjectA.DoStuff();
    mSubObjectA.DoMoreStuff();

    mSubObjectB = new mSubObjectB();
    mSubObjectC = new mSubObjectC();

    if (something)
    {
        DoStuff();
    }
    else
    {
        MagicHappens();
    }
}
</code></pre>
