`
taowen
  • 浏览: 192193 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Naive Container 发布1.0版本

阅读更多
二进制文件和源代码可以从这里下载到:
http://naive.container.googlepages.com/home

存在的意义:
最简单原始的组件装配

使用:
public class Susan : ContainerBound
    {
        public void FallInLove()
        {
            Console.WriteLine("Susan has fallen in love with " + Get<Boy>().Name);
        }
    }


public class Lily : ContainerBound
    {
        public void Kiss()
        {
            Console.WriteLine("Lily is kissing {0}", Get<Boy>().Name);
        }
    }


public class Lucy : ContainerBound
    {
        public void Marry()
        {
            Console.WriteLine("Lucy is marrying " + Get<Boy>().Name);
        }
    }


配置:
Containers.GetContainerInContext<object>().Put(new GenericBoy("Van"));

Containers.GetContainerInContext<Lucy>().Put(new GenericBoy("Tom"));

Containers.GetContainerInContext<Lily>().Put(new GenericBoy("Joy"));

Containers.Close();


更多请参见项目主页
分享到:
评论
6 楼 taowen 2007-05-10  
谢谢你的建议,下次写例子会写清除一些。
5 楼 ray_linn 2007-05-10  
taowen 写道
那就自己把这个方法添加进去好了。没有强制要求从ContainerBound继承的,只是一个方便的辅助类,简化API用的。


所以我建议你修改例子,不然初一看会误解的。
4 楼 taowen 2007-05-10  
那就自己把这个方法添加进去好了。没有强制要求从ContainerBound继承的,只是一个方便的辅助类,简化API用的。
3 楼 ray_linn 2007-05-10  
我只是实事求是的说而已,如果Susan和lucy要还继承Girl呢?
2 楼 taowen 2007-05-10  
ContainerBound确实不是接口,而是辅助类。

public class ContainerBound
    {
        protected T Get<T>()
        {
            return Containers.GetReadonlyContainerInContext(GetType()).Get<T>();
        }
    }

愿意继承就继承,不愿意继承就自己手工把这个Get方法添加到类的定义中去。没有什么大问题。框架的侵入性,本来就是伪问题。
1 楼 ray_linn 2007-05-10  
ContainerBound 明显引入了很多问题:

1. Susan是is a ContainerBound 还是has a ContainerBound,明显是后者,让一个class去继承一个toolkit,明显是个设计问题.

2. ContainerBound我看不是一个接口吧,这里的问题就自己想吧.

相关推荐

    基于 vue-naive-admin 2.0版 前端框架的 golang版本做服务端.zip

    2.0版本在前一版的基础上进行了优化和增强,提供了更加高效和易用的组件库以及灵活的配置选项。在本次讨论中,我们将深入探讨如何将Vue-Naive-Admin 2.0与Golang后端服务进行集成,以创建一个完整的Web应用。 1. **...

    NaiveBayes分类器介绍

    NaiveBayes分类器是一种基于贝叶斯定理和事件独立性假设的统计分类方法。在机器学习领域,它被广泛用于文本分类、垃圾邮件过滤、情感分析等任务,因其简单高效而备受青睐。 首先,我们需要理解贝叶斯定理的基本概念...

    Naive_Bayes_iris_贝叶斯检测_naive_bayes_

    标题中的“Naive_Bayes_iris_贝叶斯检测_naive_bayes_”表明我们将探讨的是使用朴素贝叶斯算法对Iris数据集进行分类的问题。Iris数据集是一个经典的多类分类问题,而朴素贝叶斯是一种在机器学习领域广泛应用的概率...

    naive bayes在hadoop上的实现

    Naive Bayes是一种基于概率的分类算法,以其简单高效的特点被广泛应用在文本分类、垃圾邮件检测、情感分析等领域。在大数据处理中,结合Hadoop的MapReduce框架,Naive Bayes可以有效地处理大规模数据集。 MapReduce...

    Naive Bayes and Logistic Regresion

    标题中的"Naive Bayes and Logistic Regression"涉及的是两种常用的数据分类算法,它们在机器学习领域扮演着重要的角色。Naive Bayes是基于贝叶斯定理的一种简单但高效的分类方法,而Logistic Regression则是一种...

    Naive-Bayes-Classifier-master_naivebayes_

    朴素贝叶斯(Naive Bayes)是一种基于概率论的分类算法,因其简单高效而广泛应用于文本分类、垃圾邮件过滤、情感分析等多个领域。在这个"Naive-Bayes-Classifier-master"项目中,我们将深入探讨朴素贝叶斯的理论基础...

    Hadoop mapreduce 实现NaiveBayes朴素贝叶斯

    本主题将深入探讨如何使用 Hadoop MapReduce 实现 NaiveBayes 朴素贝叶斯算法,这是一种经典的概率分类模型,常用于文本分类、垃圾邮件过滤等领域。 NaiveBayes 朴素贝叶斯算法基于贝叶斯定理,其“朴素”在于假设...

    Vue Naive Admin 是一款极简风格的后台管理模板,包含前后端解决方案

    Vue Naive Admin 是一款极简风格的后台管理模板,包含前后端解决方案,前端使用 Vite + Vue3 + Pinia + Unocss,后端使用 Nestjs + TypeOrm + MySql,简单易用。使用 Vue3 主流最新技术栈: Vite + Vue3 + Pinia。...

    基于Vue3, 使用Naive UI组件库开发的后台管理系统.zip

    6. **Naive UI组件**:项目中广泛使用了Naive UI提供的组件,例如在各个页面的模板中可以看到`&lt;n-button&gt;`、`&lt;n-table&gt;`、`&lt;n-form&gt;`等,这些组件简化了界面开发,提高了开发效率。 7. **API调用**:后端接口通常...

    C#实现Naive Bayes源码

    朴素贝叶斯(Naive Bayes)是一种基于概率的分类算法,源于贝叶斯定理。在机器学习领域,它因其简单、高效而被广泛应用于文本分类、垃圾邮件过滤、情感分析等多个场景。C#是一种面向对象的编程语言,常用于开发...

    NaiveBayes算法

    NaiveBayes算法

    Naive Bayes Classifier_NavieBayes_naivebayes_

    **朴素贝叶斯分类器(Naive Bayes Classifier)** 朴素贝叶斯分类器是一种基于概率理论的机器学习算法,其核心思想是利用贝叶斯定理进行预测。该算法假设特征之间相互独立,这也是“朴素”一词的由来。尽管在现实...

    naive bayes

    朴素贝叶斯(Naive Bayes)是一种基于概率论的分类算法,因其假设特征之间相互独立而得名“朴素”。在机器学习领域,朴素贝叶斯模型被广泛应用于文本分类、垃圾邮件过滤、情感分析等诸多任务。MATLAB作为一款强大的...

    naive-http-server_2.11-16.zip

    【标题】"naive-http-server_2.11-16.zip" 提供的是一个名为 "naive-http-server" 的项目,版本号为2.11-16,这表明它是一个基于Scala语言构建的简单HTTP服务器。Scala是Java平台上的多范式编程语言,结合了面向对象...

    Naive Bayes的实现

    在提供的文件中,"www.pudn.com.txt"可能包含训练或测试数据,而"NaiveBayes(版本1)"可能是实现Naive Bayes算法的源代码文件。源代码可能会包括读取数据、预处理、训练模型、预测和评估性能等功能。 在实际应用中...

    NaiveBayes

    朴素贝叶斯(Naive Bayes)是一种基于概率论的分类方法,广泛应用于文本分类、垃圾邮件检测、情感分析等领域。在《机器学习实战》第四章中,作者深入浅出地介绍了这一算法,并提供了相关代码和数据集供读者实践。 ...

    Generative and Discriminative Classifiers: Naive Bayes and Logistic Regression

    本知识点将对生成模型和判别模型的特点进行解释,并着重探讨两种常见的分类算法:朴素贝叶斯(Naive Bayes)和逻辑回归(Logistic Regression)。 **生成模型和判别模型** 生成模型关注于学习不同类别数据的生成...

    Naive bayes_naivebayes_

    朴素贝叶斯(Naive Bayes)是一种基于贝叶斯定理和特征条件独立假设的分类算法。在机器学习领域,朴素贝叶斯因其简单、高效而被广泛应用,尤其是在文本分类、垃圾邮件过滤、情感分析等领域。 **贝叶斯定理** 贝叶斯...

    Lumen IM 是一个网页版在线聊天项目,前端使用 Naive UI + Vue3,后端采用 GO 开发 .zip

    1. **Naive UI**: Naive UI 是一款基于 Vue 3 的组件库,提供了丰富的UI元素和组件,如按钮、表单、布局、通知等,使得开发者可以快速构建出美观且响应式的用户界面。它的设计理念是简洁、实用,易于定制和扩展,这...

Global site tag (gtag.js) - Google Analytics