根据投票结果以及大家的意见,在认真考虑之后,博客园决定选择NBear作为第一个在园子里组织大家共同参与的开源项目,在这里先向大家公布一下,然后进一步讨论如何在园子里组织这个开源项目的开发。
NBear的创始人是Teddy's Knowledge Base,Teddy's Knowledge Base的努力与坚持推动着NBear不断发展,为社区创造了一个很有前景的框架级开源项目,为大家在园子里参与开源项目提供了一个很好的基础,更重要的是给大家带来了信心:一个人就能做成这样,如果在园子里组建团队去完善这个项目,我们应该能做得更好,感谢Teddy's Knowledge Base!
NBear创建于2006年4月,原名为Ilungasoft Framework。
NBear简介:
NBear是一个基于.Net 2.0、C#2.0开放全部源代码的的软件开发框架类库。NBear的设计目标是尽最大努力减少开发人员的工作量,最大程度提升开发效率,同时兼顾性能及可伸缩性。
名称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控件。