• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            EverSpring working shop

            To pursue creative ideas based on nature.

            統計

            留言簿(1)

            他山之石

            閱讀排行榜

            評論排行榜

            Some notes about the Factory Patterns

            ?

            One of the primary goals of using a factory is to organize your code so you don't need to select teh exact constructor type when creating an object.
            Two kinds of Factory Patterns, actually, they are similar, with difference that the abstract factory can contain servral factory methods.
            • Factory Method
            • Abstract Factory.
            The key roles in the Factory Patterns include:
            • Product : Actually it acts as the working horse in the real time processing, I mean to do the work belonging to the products.
            • Product specific factory :? The place where the special product is made. Please note the word "special", which means that even there is a Super Class of Factory, each kind of product needs a special defined factory as derived factory which is 1-to-1 tightly connected to this specific product.
            • Super Class of Factory:
              1. Actually, it acts as a place where the product specific factories gather.? A table of Concret Product Specific Factory Objects is maintained, as form of static member, by this class.
              2. Also, the class provide the virtual method of the Create() for the derivded Product Specific Factory class to implement respectively.
            • Factory Initializer: The responsibility of this Class is to realize all the necessary Product?Specific Factories, and place them into the static Factory Table of the Super Class Factory. This repsonsibility should and MUST be finished before all the necessary Fatories begin to work on manufacturing, normally occurs when the system is initialized.
            Some rules(if can call them as rules)?needs to be noted when implemented by C++:
            1. The constructor of the specific product normally is designed as Private member, to only allow friend class to access. The purpose of this rule is to prevent the product to be made by incorrect factory.
            2. The 1-to-1 product specific factory is designed as the friend class of the its specific product class.? The implementation of the Product specifc factory could be combined into the internal body of the product as the form of Product::Factory. We can also to place the factory out the product, as the form of ProductFactory. As you wish, :)
            3. The list of the concret factories of the super class of factory is designed as static. The index of the list is used to find the correct concrete factory by passing the Identifier parameter.
            4. The signleton is also used: Factory and the Factory Initializer should be singleton. In other words,?we can only?has only one set of factories and only one factory initializer.?Otherwise, there will exist two interactive factory framework in a single system. The result is that the system is crashed.

            Any supplementary information or correction is to be attached later, with further understanding on this important Patterns.

            Alex Zhang

            posted on 2007-12-11 22:55 everspring79 閱讀(380) 評論(1)  編輯 收藏 引用 所屬分類: Notes

            評論

            # re: Some notes about the Factory Patterns 2008-01-23 17:54 everspring79

            This Monday, I hold a presentation about the design of the fpf agent by introducing the concept of the abstract factory. However, maybe it is due to my presentation skill, the audience does not show great interest on this design pattern.   回復  更多評論   

            四虎国产精品免费久久5151| 91精品国产综合久久久久久| 青青热久久国产久精品| 久久亚洲精品国产精品婷婷| 无码人妻精品一区二区三区久久久| 久久精品人人做人人妻人人玩| 日本一区精品久久久久影院| 亚洲欧洲精品成人久久曰影片| 精品国产99久久久久久麻豆| 久久精品中文字幕久久| 伊人伊成久久人综合网777| 国产精品99精品久久免费| 狠狠久久综合伊人不卡| 久久天天躁狠狠躁夜夜avapp| 91亚洲国产成人久久精品| 色欲av伊人久久大香线蕉影院| 亚洲精品高清国产一久久| 无码超乳爆乳中文字幕久久 | 精品国产91久久久久久久a| 亚洲国产欧洲综合997久久| 久久青青国产| 91精品国产91久久久久久蜜臀| 亚洲愉拍99热成人精品热久久 | 久久久精品久久久久久 | 久久午夜羞羞影院免费观看| 久久精品夜色噜噜亚洲A∨| 国产综合久久久久| 久久无码人妻一区二区三区午夜| 色天使久久综合网天天| 国产高潮国产高潮久久久91| 91精品国产乱码久久久久久| 日产精品久久久一区二区| 亚洲色大成网站WWW久久九九| 亚洲va久久久久| 久久久久高潮综合影院| 久久久久久久久波多野高潮| 四虎久久影院| 人妻无码αv中文字幕久久琪琪布 人妻无码精品久久亚瑟影视 | 精品久久久久久无码人妻热| 久久久网中文字幕| 亚洲国产精品成人久久蜜臀|