什么是NBear

NBear是一个基于.Net 2.0、C#2.0开放全部源代码的的软件开发框架类库。NBear的设计目标是尽最大努力减少开发人员的工作量,最大程度提升开发效率,同时兼顾性能及可伸缩性。

开源协议:BSD。

名称NBear的由来

N代表.Net,也代表No;Bear既可以翻译成熊,也有忍受之意。

Bear虽然是那种看起来憨憨的样子,但是攻击时身手“敏捷”,因此.Net Bear代表了NBear是一个基于.Net2.0、为敏捷开发而生的快速开发框架。

我们大多数项目的开发需要Bear(忍受)太多的不必要的重复和繁琐的配置。如数据持久化、对象池、Web开发中的URL重定向、输入验证、客户端脚本等等,为了简化许多常用组件充用,NBear为您提供了许多灵活的工具和组件;为了简化繁琐的配置(尤其是如nhibernate这类ORM组件的繁琐的配置文件格式、高高的学习曲线和噩梦般的需求变更时的维护更新),NBear向您提供零配置需要的数据访问(持久化)接口和可充用组件。

因此,NBear也代表No Bear,充分运用.Net2.0中的许多新技术Generic、Emit、HttpModule等,NBear让我们一起不(No)再忍受(Bear)这种种繁琐的束缚,大大提高我们的软件开发效率、需求变更时的响应效率,您会注意到,在需要您敲打的代码量(工作量)变得越来越少的同时,NBear也会带给您许多优雅高效的开发体验。

NBear适合用来开发什么样的程序?

NBear的核心包括一个泛型、强类型的的数据持久化接口、一组接口式的Entity定义组件、高性能XML/JSON序列化支持、服务工厂、分布式服务队列和Web组件,因此:

1. NBear最适合开发各类基于ASP.NET 2.0,对性能要求较高的Web程序。JSON序列化和XML序列化的结合使用将可以使您的服务端和客户端数据交互变得更简单高效;NBear.Web组件提供了许多加速Web开发的组件,将使您基于标准 ASP.NET方式的开发效率大大提高;同时,简单易用、性能突出的泛型持久化支持,则将使您能够将更多注意力集中到业务开发,同时也不会有传统ORM持久化框架的性能问题和繁琐配置需要(NBear几乎不需要配置,性能则可与DAAB相当)。

2. 高性能的XML和JSON序列化支持和灵活高效的持久化支持,也使得NBear能为开发各种类型的基于远程数据交换(Web Service、Remoting等等)的分布式应用程序提供便利。

3. 内置的基于IoC容器和分布式服务队列的服务工厂能够使您的程序拥有良好的可伸缩性,可以完全透明的将一个普通构架的程序设置为一个分布式程序,甚至不需要修改消费端或服务实现段的任何代码,基于服务工厂的系统天然就是SOA构架,这就使得您的系统可以以极小的成本和其他SOA构架进行整合。

4. 对于桌面应用程序,NBear同样是一个几乎没有什么学习曲线(多少人会为写一个小小的日历程序而仔细研究透彻Hibernate的参考手册?)、实用高效的数据持久化方案。

功能列表

·O/R映射时无需配置文件,充分利用命名约定

·接口式实体类定义,简单清晰,易于描述系统

·提供实体类生成工具,免除手写实体的工作量

·动态实体类工厂,运行时动态Emit及缓存实体类接口的实现类

·高性能实体类XML及JSON序列化

·基于Provider模式的可扩展持久化数据库源支持

·支持多数据库源

·基于范型的强类型实体持久化及数据访问接口

·基于容器的分布式服务工厂,透明的分布式服务调用和分发

·基于.Net Remoting的分布式服务队列

·扩展ASP.NET MasterPage, Pae, UserControl基类

·基于用户控件的AJAX支持

·URL重写支持

·常用UI控件

时间: 2024-08-15 09:55:04

什么是NBear的相关文章

基于NBear的Domain层设计

NBear是Teddy开发的快速开发框架,在之前的5个示例中,主要演示了主要的框架功能和业务领域模型不太复杂情形下忽略领域层的应用范例.但是,当业务模型相对复杂,单纯基于简单实体的强类型数据访问接口,可能就会使得太多的业务逻辑被分散到service或facade层,此时,我们就最好加一层独立的业务领域模型层来封装实体和强类型接口的使用.本文为您演示基于NBear v1.6.0中新增的NBear.Domain的领域模型设计示例. NBear.Domain NBear.Domain主要为您提供了基类

基于.NET平台的分层架构实战(九)—数据访问层的第三种实现:基于NBear框架

基于.NET平台的分层架构实战(九)-数据访问层的第三种实现:基于NBear框架的ORM实现 前面的文章讨论了使用SQL语句和存储过程两种数据访问层的实现方式,这一篇里,将讨论使用ORM方式实现数据访问层的方法. 对象-关系映射(Object/Relation Mapping,简称ORM),是随着面向对象的软件开发方法发展而产生的.面向对象的开发方法是当今企业级应用开发环境中的主流开发方法,关系数据库是企业级应用环境中永久存放数据的主流数据存储系统.对象和关系数据是业务实体的两种表现形式,业务实

使用NBear.MQ分布式服务消息队列模块开发分布式系统

NBear.MQ是NBearFramework中新增的分布式消息队列模块,作为NBear Framework的新成员,NBear.MQ秉承NBear一贯的易于使用和零配置需要的特点,大大改善开发基于消息队列的分布式系统的效率.本文通过介绍一个基于NBear.MQ的Sample - TestServiceMQ,演示基于NBear.MQ开发分布式系统的基本方法. 解析 1.TestRemotingServer 首先是我们的Server,对于Server,如果您使用NBear.MQ内置的MemoryS

NBear

示例 本示例演示对一组继承关系的实体的元数据设置及自动生成数据库创建脚本的过程.示例实体代码,包括生成的config文件和sql文件等都包含在下载的源代码包的NBear\samples\Sample_Entity_Configuration_By_Entity_Configurator及其bin\Debug中. 如上图所示,在vs2005中使用内置的可视化类设计器设计实体结构如上,注意,所有的实体都是接口.关于如何创建简单的接口式实体,请参见用户手册.对应的代码如下: 1 [Table(IsCo

NBear中如何建立一个单向组合关系的外键关联,而且对应实体的主键为String类型?

问题描述 NBear中设置单向的组合关系存在的疑问(使用NBear3.7.2的ORM框架,如需源码请联系hillfree#gmail.com)问题描述:涉及两个业务对象:User(用户)和UserType(用户类型):UserType作为系统的基础信息,可能会增加,重命名,甚至删除.User接口中包含UserType的对象作为一个成员.与Tutorial中的一对一关联不同.UserType不需要知道User的存在,即User和UserType是单向的组合关联.User和UserType的接口定义

就是刚出来工作 经理今天安排了个任务 大致就是用NHibernate技术把从页面获得的数据保存到MYSQL数据库

问题描述 就是刚出来工作经理今天安排了个任务大致就是用NHibernate技术把从页面获得的数据保存到MYSQL数据库,给了时限半个月,有没有好心的大神帮帮我啊,这个技术一无所知,谢谢了 解决方案 解决方案二:我们从来瞧不上NHibernate,累赘得会死人的.要访问MySQL,读写一堆.net对象,直接写sql语句与之交互就行了.不用学习半个月,最多2天半就行了.解决方案三:建议你先把数据写到MySQL数据库中(创建1.2个数据表来保存你的数据),然后再开始考虑NHibernate.解决方案四

NPOI简介

什么是NPOI? NPOI,顾名思义,就是POI的.NET版本.那POI又是什么呢?POI是一套用Java写成的库,能够帮助开 发者在没有安装微软Office的情况下读写Office 97-2003的文件,支持的文件格式包括xls, doc, ppt等 .目前POI的稳定版本中仅支持Excel文件格式xls,其他的都属于不稳定版本(放在poi的scrachpad目录 中).NPOI是构建在POI 3.x版本之上的,本月发布的NPOI 1.2是对应于POI 3.2 final的,所以它支持 Exc

实现NBearDataSource控件

很多朋友抱怨使用NBear时,和GridView和DetailsView等的绑定不便,为此,写了一个NBearDataSource控件,可以直接和其他DataSource一样进行绑定. 下面是一组示例,随示例包含了NBearDataSource控件和PagableRepeater控件的dll,源代码已经在NBear的V3.6.3以上版本中包含. 本示例演示了使用NBearDataSource控件进行CRUD.使用NBearDataSource控件和NBear的强类型查询语法进行可视化查询.使用P

NBearV3 Step by Step教程——IoC进阶篇

版本 1.3 [2006-11-12] 简介 本教程在<NBearV3 Step by Step教程--IoC篇>的基础上,演示如何基于NBearV3的IoC模块开发一个分布式Web应用程序的过程.您将看到,基于NBear的IoC组件,开发分布式系统就和开发单服务器系统一样容易.本教程同时将引导您注意分布式开发和非分布式开发,在实体定义中的注意事项. 注1:NBearV3提供的分布式支持,从用户视角来说,只要按照<NBearV3 Step by Step教程--IoC篇>的方式,以