Mercurial > pub > ImplabNet
view Implab/Components/IInitializable.cs @ 250:9f63dade3a40 v3
Working on runnable component
author | cin |
---|---|
date | Thu, 01 Feb 2018 02:43:35 +0300 |
parents | 8200ab154c8a |
children | 7c7e9ad6fe4a |
line wrap: on
line source
using System; namespace Implab.Components { /// <summary> /// Initializable components are created and initialized in two steps, first we have create the component, /// then we have to complete it's creation by calling an <see cref="Initialize()"/> method. All parameters needed /// to complete the initialization must be passed before the calling <see cref="Initialize()"/> /// </summary> public interface IInitializable { /// <summary> /// Completes initialization. /// </summary> /// <remarks> /// Normally virtual methods shouldn't be called from the constructor, due to the incomplete object state, but /// they can be called from this method. This method is also usefull when we constructing a complex grpah /// of components where cyclic references may take place. /// </remarks> void Initialize(); } }