为什么要用jupiter在代码中的作用

为什么要用jupiter在代码中的作用,第1张

code review 有助于尽早发现代码中的问题,协调并逐渐统一各个编程人员的代码规范和习惯,以常用的Jupiter为例.

Jupiter里,代码评审(code review)分为4个流程:

Configuration(配置):review发起者设置“Review ID”,指定要评审的代码,参与代码评审的人员,要讨论的问题等

Individual review(个人评审):每个人独自审查代码,把可能出现问题的代码加入checklist

Team review(团队评审):大家在一起讨论之前检查出的问题代码,并决定如何处理

Rework:开发人员根据之前评审的结果,对代码进行修复

流程

Configuration

由评审发起者(代码作者、team leader或者PM)进行配置。打开项目属性->Review选项页。点击“New...”,设置相应的ReviewId和description:

接着添加本次要评审的代码和文件

添加参与代码评审的人员

接下来设置各种缺陷类型、严重性之类的。然后就是指定存放评审数据的目录。这个目录是相对于项目根目录的。如下图:

设置完成后,Jupiter将在项目根目录下生成“.jupiter”文件,把此文件存入CVS。现在评审发起者可以通知大家进行代码评审了。可以通过发邮件的方式进行通知,通知的内容最好有以下部分:

即:

项目名称、Review ID、参与评审人员名单。

被评审代码的描述信息,如功能,需求等等

新增加和删除的文件

受影响但没有在Configuration中指定的组件

通知完毕后,各成员即可正式进行代码评审。

Individual review

从CVS取出最新的代码和.jupiter文件,在eclipse里->窗口(Window)->打开透视图(Open Perspective)->Review。然后选择Individual Phase:

选择项目名称,Review ID和Reviewer ID(评审者ID),然后就可以开始查看代码了。

在代码评审过程中,发现有问题的代码,即可在上面点击右键菜单->Add Review Issue...把问题添加到Jupiter中,指定问题类型、严重性和描述信息,点击保存。

完成个人的代码评审后,把Jupiter评审数据目录下的文件传入CVS,就可以一起进行讨论了。

Team review

大家在一起,使用一台电脑或者投影仪,选择Team Phase

现在Individual Phase里检查出的所有的问题都会显示在ReviewTable里,点击Go To就能链接到问题所在代码,然后大家讨论这段代码是否有问题,如何解决等等,把结果写到ReviewEditor里,保存。

所有的问题讨论出结果后,把Jupiter评审数据文件传入CVS,散会,各自回到自己位置,进行下一个步骤

Rework

从CVS取出最新的Jupiter评审数据文件,选择Rework Phase

选择自己的ID后,上一步骤中分配给自己的问题就会显示到ReviewTable里,一个一个地把问题修复吧,修复后把状态置为Resolved。完毕后把Jupiter数据传CVS。

各自的rework完成后,各位评审者取出最新的Jupiter数据,关闭ReviewTable的过滤器,就能查看到本次评审中发现的各种问题,对各种问题进行验证,感到满意后可以把状态置为Closed,或者验证未通过,就置为Re-Opened。

总结

如此,便完成了一次代码评审……

工具仅仅是一种辅助措施,更主要的是如何发挥积极主动性,不断提高编码水平和定制规范.

你可以把仓库放在任何你希望存放仓库的地方,你只需要保证用户和用户组对这个仓库有适合的权限就可以。最好不要把仓库存放在用户自己的工作区,因为权限要求是很严格的,你可以存放在一些共享目录,例如/optor /usr/local/share。

使用root用户创建一个裸仓,并赋予gituser合适的权限:

# git init --bare /opt/jupiter.git# chown -R gituser:gituser /opt/jupiter.git# chmod -R 770 /opt/jupiter.git

现在经过验证的作为gituser的或者gituser用户组的用户可以读取并写入jupiter.git仓库了。你可以试着在你的本地机器执行下面的命令:

$ git clone [email protected]:/opt/jupiter.git jupiter.clone

Cloning into 'jupiter.clone'...

Warning: you appear to have cloned an empty repository.

记住一点:开发者必须把自己的公钥加入gituser用户的authorized_keys文件中,或者他们就是服务器的用户(如果可以的话),并且这个用户必须成为gituser用户组的一员。

这意味着html5是微软平台的未来?可能不是。一个新的尚未公布的叫做Jupiter的平台可能会让微软的开发者利用他们现有的技术在windows8和windows phone上面开发应用。这意味着?所有平台上都能运行的应用,不只是PC,还有平板,手机,甚至电视(借助xbox)。

Jupiter的存在已经不是什么新消息了,在一些论坛,博客上面就有了大量的关于这个平台的泄密帖子,一些人甚至利用泄露的代码来逆向以便了解更多。

跟踪了一下微软的新闻,一下是我们了解的关于Jupiter的一些信心:

1、这是一个新的windows用户界面库

2、是基于XMAL的框架

3、开发者可以用XAML/C#/VB/C++来写应用

4、使用IE10的渲染引擎

5、DirectUI正在修改以支持的XAML应用程序

6、通过XMAL库可提供访问windows8的元素

7、Jupiter的应用会以共同支持windows8和wp8的APPx的形式打包

8、APPx是通用的,可以用于部署原生Win32应用程序,基于框架的应用程序(Silverlight的WPF),Web应用和游戏

9、Jupiter的支持让所有开发者都很开心,无论是.NET,VB,C++ 或者Silverlight/WPF

最后一项尤为重要,因为迄今为止,微软关于windows8开发平台对外公开的是说基于html5和javascript,Peter Bright指出这个的时候,开发者们都有点小震惊。

在你将微软的开发者赶下车然后让他们再爬上html5之前,你要知道他们已经花了大量的时间和精力学习微软推出的技术,包括了Win32, COM, MFC, ATL, Visual Basic 6, .NET, WinForms, Silverlight 和WPF。听起来像是微软让他们丢掉十几年的经验然后拥抱html5.

html5也出来一段时间了,但貌似依然不能完全驾驭微软的整个平台。

后PC时代:微软vs苹果vsGoogle

想象一下,如果苹果也干了这么件事,让开发者可以有一个简单的途径把ios应用转到Mac上面。目前貌似还没有一个简单的方法。尽管有第三方工具的协助,但是开发者还是要做大量的工作让ios应用在Mac上面run起来。这就是说,我们猜想苹果正在尽力解决这么一个两难的问题。你可以看到苹果最新放出的lion对ios的影响。

与此同时,google却缺乏一个对桌面和手机合并的前景。尽管施密特成将会把chrome os和Android 合并,但是到目前为止,依然看不出两者有合并的迹象。

微软关于合并桌面与手机的想法,也不是一个小工程。目前苹果貌似是唯一在这当中有竞争力的。android也进入了平板市场苦苦挣扎,而惠普刚把自己才买到手的webOS杀了。

开发者不满情绪增长

苹果在这一点上依然占了先机,不过决定微软未来的关键或许还在于时机。微软的开发者已经非常不满,但是微软依然允许这种势头蔓延,或许这么一个占了错误,可能会葬送了微软的前途。微软也想做苹果,这确实很神秘很惊奇,但是微软不具备这种支撑他的文化。

Jupiter应该已经在几个月前宣布了,但为了故意卖关子,完整的发布将会在build大会上。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/bake/11321800.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存