阅读更多

30顶
2踩

编程语言

原创新闻 Nutz1.b.36 发布-Mvc 重构

2011-03-25 09:31 by 正式记者 zozoh 评论(28) 有11178人浏览
Nutz1.b.36 发布-Mvc 重构



--------------------------------------------------------------------------------

1.b.36 发行注记

Nutz1.b.36下载地址: http://code.google.com/p/nutz/downloads/list

Hi, 大家好,又是我。

接着本次发布的机会,我们要 highlight 一位开发者 -- juqkai

在他和 Wendal同学前后鼓动下,我们终于毅然的重写了Mvc的核心加载逻辑

现在的 Mvc 更加灵活,至于如何灵活,大家可以读读 这篇文档

同时,我发现 juqkai 同学也是一位对代码的品质有执着追求的同学,比如他毅然的重构了 Nutz 的 JsonParsing,记得当时我写这个类时,就是一个大函数,一个长长的 switch...case,因为我想:"JSON 这点简单的东东,还用弄个什么结构吗?"。 但是后来我发现代码越来越长,也犹豫过:"要不要重构一下,起码弄几个私有函数嘛。"。 但是后来想:"算了,反正长也不过 400行。我还要留点时间看火影的好 ^_^"

但是,我这点懒散被目光如炬的 juqkai 的同学发现了,他挺身而出,完成了我一直想做但可耻的没有做的事情。实话说,这种精神已经感动我好几个礼拜了。 喂神马!喂神马!又出现一个执着于代码品质的提交者涅?

这版 Nutz 经过这次重构,解决了很多 Mvc 方面潜在的问题。 这时,似乎大家又把目光投向了 Dao。 恩,是的,我们打算重构一下它。彻底的重构。

有些人可能会担心,你们这么乱搞,代码的正确性如何保证啊? 我们基本不太担心,我们的代码质量现在基本由 600 多个 JUnit 来保证。每当有人报 Issue,我们会尽可能添加 JUnit 来重现。 我记得在早些时候,我认为如果项目的 JUnit 到了 1000 个,那么代码的质量应该是坚若磐石的。现在我们可以说,Nutz 差不多是一块 65% 的磐石。 即使我们肆无忌惮的重构,它的质量也不太会发生什么大的变化。所以,很有可能在之后的1-2个版本,我们会重构 Dao.

特别感谢 + 废品免费召回
果然是 ”步子大了,容易扯着蛋“, 请看 ---^ 一段的吹牛,就是因为还没有到 1000 个 JUnit,就出事了。
伟大的 Landraxee同学 在发布之后1小时内发现了一个错误
    Issue 451

这个错误导致了 '@Ok("jsp:abc.bcd")' 这种最普通的写法行为与之前的版本行为不相同。
当然你看到这篇文章的时候,我们已经通过几个 JUnit 测试保证了这个错误不会再犯,并替换了之前包含错误的编译版本。

但是而包含这个错误的发布包已经被近 50 位同学下载了,这里我们急切的呼吁,
请已经下载 Nutz 的同学,检查自己下的发布包,正确的名字应该是 1.b.36.r3

无论怎样,再次感谢 Landraxee同学 ^_^

--------------------------------------------------------------------------------

问题修复

  • Issue 204 Mirror表达式(嵌套属性的支持)  by jiongs753
  • Issue 350 实现更优雅的URL  by wesnow
  • Issue 354 Mvc:是否可以在执行ActionFilter之前进行参数适配,并将适配后的参数数组作为传入ActionFilter  by landraxee
  • Issue 381 关于上传文件正则表达式匹配可以支持的文件名报错的问题  by axhack
  • Issue 382 能否考虑将DefaultEntityMaker中的哪些私有的方法改为protected的?  by a357857613@qq.com
  • Issue 384 换成 JSON 字符串时,\u转义有误  by fjayblue
  • Issue 388 Json: 多线程的时候,转换时间类型到字符串会出现错误  by liaojiaohe
  • Issue 389 Cnd拼条件时使用not in,生成的SQL文不正确  by pangwu86
  • Issue 392 配置正确的url路径却进不到对应的Action  by pangwu86
  • Issue 393 Feature: Please support variant in the locale message  by 袁青云
  • Issue 394 路径参数最好定义成包装类型  by wesnow
  • Issue 396 处理异常信息的时候出现异常  by fjayblue
  • Issue 397 El.eval在某些算式中出现的问题  by ywjno.dev
  • Issue 399 WebResourceScan.list NullPointerException  by jiongs753
  • Issue 404 FailProcessor 异常时不会在控制台打印信息  by juqkai
  • Issue 411 WebResourceScan 不能扫描 classpath 下面的 jar 包.  by Json.Shen


--------------------------------------------------------------------------------

质量

共通过了 664  个单元测试用例,代码覆盖率达到

Nutz.Dao 经测试在如下数据库上可以工作正常



--------------------------------------------------------------------------------

文档





--------------------------------------------------------------------------------

主要贡献者名单

贡献的种类:

  • 问题: 给项目的问题列表汇报一个上的问题,并且该问题被本次发布包括
  • 博客: 在本版本开发期间,写过关于 Nutz 的文章,并被 推荐列表收录
  • 代码: 提交过至少一个修订
  • Demo: 为 Demo Site 提交过代码
  • 文档: 提交过文档,在讨论区发帖或者通过文档上的留言指出现有文档存在的问题
  • 测试: 发布前,参与测试周发布人给出的任务


如有遗漏,请提醒我们 ^_^

贡献列表,我已经写了一个小程序,根据 Issue 列表来自动统计...

贡献者        问题 博客 支持 代码 示例 文档 测试
A357857613   O     -     -     -     -     -     -  
Axhack      O     -     -     -     -     -     -  
Fjayblue    O     -     -     -     -     -     -  
Json.Shen   O     -     -     -     -     -     -  
Juqkai      O     -     -     O     -     -     O  
Landraxee   O     -     -     -     -     -     O  
Liaojiaohe   O     -     -     -     -     -     -  
Pangwu86    O     -     -     -     -     -     -  
Wendal      O     O     O     O     -     -     O  
Wesnow      O     -     -     -     -     -     -  
Ywjno.dev   O     -     -     -     -     -     -  
zozoh      O     O     O     O     -     O     O  
天行健         O     -     -     -     -     -     -  
袁青云         O     -     -     -     -     -     -  


另外,很多朋友都在:



回答新手的问题,我们现在只能根据印象草草统计,贡献列表非常不完善。我们正在想办法,争取在不远的将来,能记录下来大家每一点一滴的付出 ^_^!

欢迎访问官网,以获取 最新的快照版用户手册
30
2
评论 共 28 条 请登录后发表评论
28 楼 binky1983 2011-03-28 12:13
顶,表示严重关切
27 楼 ballence 2011-03-28 11:57
必须支持~~~
26 楼 ywjno 2011-03-28 11:57
感觉越来越有意思了,并且这次添加了很多好玩的东西,值得一试
25 楼 pizzazz1 2011-03-28 11:56
只能给力的顶啊
24 楼 hastune 2011-03-28 11:55
   
23 楼 longer042 2011-03-28 08:35
要超越自我
22 楼 sd6733531 2011-03-27 15:04
支持支持!~
21 楼 hastune 2011-03-27 11:47
20 楼 yuan 2011-03-26 13:12
有意思,是个追求卓越的团队。
19 楼 scottcgi 2011-03-26 12:28
没看代码,感觉人很做作
18 楼 sjbufu 2011-03-26 10:04
真不错,比国内的那帮人搞的easyjweb好多了,很执着的一帮人呀文档也多。
17 楼 lqixv 2011-03-25 23:27
能不能来个人做一下 LR 的性能报告?能用于生产环境吗?
16 楼 lovejing 2011-03-25 22:29
很好用,支持
15 楼 wendal 2011-03-25 19:35
不复记忆 写道
期待正式版本...

无需期待,直接使用吧!

版本号什么的都是浮云
14 楼 wyzyy777 2011-03-25 16:52
好东西就得顶
13 楼 zxl1001 2011-03-25 16:28
  强列支持。再接再历
12 楼 gigivszhao 2011-03-25 13:25
加油     
11 楼 不复记忆 2011-03-25 13:19
期待正式版本...
10 楼 ……蚂蚁…… 2011-03-25 12:53
  期待你们的成功
9 楼 axhack 2011-03-25 11:17
哈哈
mvc终于重构了。

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • VC dll编程和使用例子

    里面有2个vs2005工程,分别是dll制作工程和dll使用工程,代码简洁,非常实用

  • 关于VC中的DLL的编程

    关于VC中的DLL的编程在我们实际用软件时,经常可看到许多动态连接库。动态连接库有其自身的优点如节省内存、支持多语种等功能,而且,当DLL中的函数改变后,只要不是参数的改变调用起的函数并不需要重新编译。这在编程时十分有用。至于其他妙处,各位在电脑杂志、书籍中都能看到,我这里再说就是废话了.这次小弟我所要讲的是如何在VC5.

  • DLL的生成、编写、调用总结

    一. DLL的创建 二. DLL内容编写 三. DLL调用 四.dll编写时宏的解释

  • 生成DLL的三种方式

    如何创建dll文件

  • DLL教程 - 如何编写动态链接库 DLL

    DLL教程 - 如何编写动态链接库 DLL

  • VC DLL学习

    1 用VC创建DLL动态链接库1.1 创建dll项目1.2 为dll项目编写源文件头文件dllDemo.h extern "C" _declspec(dllexport) int Sum(int a,int b);//加法函数。extern "C" _declspec(dllexport) int Max(int a, int b);//取较大值函数extern "C" _declspec(...

  • VC DLL编程

    在我们实际用软件时,经常可看到许多动态连接库。动态连接库有其自身的优点如节省内存、支持多语种等功能,而且,当DLL中的函数改变后,只要不是参数的改变调用起的函数并不需要重新编译。这在编程时十分有用。至于其他妙处,各位在电脑杂志、书籍中都能看到,我这里再说就是废话了. 这次小弟我所要讲的是如何在VC5.0中如何做自己的Win32 DLLs,各位要做自己的动态连接库,首先要知道DLL在VC5.0中都

  • C++笔记-DLL的编写与调用

    目录 基本概念 代码与实例 基本概念 Visual Studio的编译环境下,DLL分为3类: 非MFC的DLL,使用SDK API进行编程,能被所有语言调用。 MFC规则DLL,可以使用MFC进行编程,能被其他语言调用。 MFC扩展DLL,可以使用MFC进行编程,但只能被MFC编写的程序调用。 // dllmain.cpp : 定义 DLL 应用程序的入口点...

  • C++DLL编程详解

    DLL(Dynamic Link Library)的概念,你可以简单的把DLL看成一种仓库,它提供给你一些可以直接拿来用的变量、函数或类。在仓库的发展史上经历了“无库-静态链接库-动态链接库”的时代。 静态链接库与动态链接库都是共享代码的方式,如果采用静态链接库,则无论你愿不愿意,lib中的指令都被直接包含在最终生成的EXE文件中了。但是若使用DLL,该DLL不必被包含在最终EXE文件中,E

  • 如何创建dll工程

    下面介绍如何创建一个dll项目。 我们自己写的类或函数,都可以导出成一个dll供他人使用,比如自己写的一个File操作类或加载某种格式文件的类等。 首先创建一个dll项目: 我们还是在前面创建的解决方案下再新建一个dll项目,用来导出一些公用的功能函数。 在解决方案上右键,添加新项目: 选择Win32项目,项目命名为MyDLL,单击浏览按键,选择Project文件夹,这是

  • [转载]创建纯资源 DLL

    Visual C++创建纯资源 DLL(vs2005) 首选是动态DLL 把需要的资源导入进项目 在编译要/NOENTRY 这个选项,Properties->configure Properties->linker->No entery point 纯资源 DLL 是仅包含资源(如图标、位图、字符串和对话框)的 DLL。使用纯资源 DLL 是在多个程序之间共享同一...

  • 【VC++DLL动态链接库编程】教程目录(1)

    暂且写个轮廓,只有进行补充: 目录: 1. 动态链接库编程之基础概念 2. 静态链接库 3. 导出函数 4. 导出类 5. extern "C" 6. 不需要头文件直接导入动态链接库

  • 纯资源DLL的编写[转]

     纯资源   DLL是仅包含资源(图标,位图,字符串,声音,视频,对话框等)的   DLL。使用纯资源DLL可以节约可执行文件的大小,可以被所有的应用程序所共享,从而提高系统性能。纯资源DLL的编写比普通的DLL要简单的多,使用纯资源   DLL   可用来在多个程序之间共享同一组资源以及对多种语言进行本地化的应用.    要创建纯资源   DLL    1.   应创建一个新的   Win32

  • 新建类库dll文件 添加注释提示

    今天在写一个类库时,到我引用dll文件,发现调用的时候没有注释, 我在方法和属性上都用“///”写注释,重新生成后还是没有,我想要的效果就是和C#自带的类库一样,可以有注释提示, 在网上找了一个快速解决的方法, 资源管理器-----右键属性--------生成—输出 Xml文档文件打对勾 然后重新生成即可, 效果如下: ...

  • 使用功能类CDynLinkLibrary加载多个动态库时报错问题

    在网上看到一条解答,原文如下:最近Perry在写一个简单的插件系统框架,需要有n多动态链接库加载来加载去的。调试时偶然发现提示在dllmodul.cpp中会报告若干个跟CDynLinkLibrary相关的内存泄漏。错误信息具体看起来大概是这个样子:Detectedmemoryleaks!Dumpingobjects->...\atlmfc...

Global site tag (gtag.js) - Google Analytics