概述

有不少开发人员都问过我,Ext JS/Touch是否支持团队开发?对于这个问题,我可以毫不犹豫的回答:支持。原因是在Sencha官网博客中客户示例中,有不少项目都是基于团队模式开发的。

那为什么会出现这个问题?我觉得问题的关键在于不知道如何去进行模块独立调试或做最终的整合。对于这个问题,我觉得《.NET最佳实践》这本书(下文中简称为实践一书)或许会给大家带来一点启示。虽然这本书是针对.NET而写的,但我觉得,这对于Ext JS/Touch,甚至于其他开发语言的开发,还是有不错的借鉴意义的。

《.NET最佳实践(Pro .NET Best practices)》是.NET领域公认的经典著作,总结了大量.NET开发人员认为好用切高效的最佳实践,针对性地阐明了如何恰当地在个人、小组和行业中应用这些最佳实践,为个人和开发团队提高开发效率提供了绝佳指导

持续集成

在实践一书中,持续集成可以说是书中集大成于一身的实践,其目的就是要建立一个CI服务器,然后在该服务器上以自动化的形式实现代码的重新生成、单元测试、分析、打包、部署和稳定性测试。如果真要实现这个,对于小公司来说可能暂时还没这个能力,但我们可以借鉴其中的方式,例如,组件一台服务器,让开发人员不定时或定时的将已完成的可以进行测试的代码上传至服务器,让测试小组展开部分测试。而当服务器又更新的时候,可以通过客户端程序提醒开发人员去下载别人已经完成的代码,以便提供一个完整的开发环境以测试自己模块。

编码规范

在实践一书中,很强调编码规范,因为这有助于团队成员之间有一致的语言,并彼此配合。而作为一个组织、各个团队之间保持,有助于实现各个团队之间保持一致,有助于实现遵守公认的标准、有效的开发原则和好的实践

对于Ext JS/Touch来说,它自身就是基于一定的编码规范来实现的,如命名空间、类的名称等等。在项目中遵循并延续这个规范,我觉得是最好不过的了,因为这有助于实现项目目标,而且框架自身就是使用这些规范实现,是一个极好的示例。当然,项目中还可以根据这些规范做更改与完善,以便更好的实现目标。

在项目开始之初,熟悉规范的开发人员,非常有必要向还不熟悉规范的开发人员介绍他们的经验,以便让这些开发人员尽早熟悉这些规范。在项目过程中,如果有新加入的项目成员,也很有必要向他们介绍这些规范,以便尽快融入到项目开发之中。以上这些都是实践一书的经验之谈,值得深入了解。

测试

实践一书对测试很重视,这也是当今的一个潮流。不过,对于javascript的测试来说,还是处于发展阶段,尤其是对于Ext JS/Touch的测试(包括工具),还是处于一种朦胧状态。虽然在Sencha官网博客上有不少介绍这方面的博客文章,但总的来说还是比较缺乏这方面的资料和经验,因而,如果真要在这方面下功夫,就要下点狠功夫去研究了。我觉得这个是值得去做的,因为熟悉和掌握这些方法,尽管未来不一定使用Ext JS/Touch来进行开发,但对公司未来来说,还是大有脾益的。

对于Ext JS/Touch这种可以将前端和后端分开开发的框架来说,我觉得,为了便于测试,把测试重点放在如何自动为前端提供虚拟数据进行测试,是值得先行研究的。不过,要实现全端与后端的分离,首先要做的工作就是数据的标准化工作,这个在我的书中都有具体的说明,在这就不赘述了。

小结

虽然实践一书的基本内容是基于.NET的,但很多实践方法其实也是适用于其他开发的,因而多看看这类的书,对于团队开发来说还是相当不错的。对于Ext JS/Touch来说,是非常适于团队开发的,而其具体的实现方式,可能目前还没有成熟的套路,但借鉴一下其他团队开发方式的思路,我觉得是可行的,而我推荐的就是实践一书。希望这些内容对大家有点帮助。

《.NET最佳实践》与Ext JS/Touch的团队开发的更多相关文章

  1. nodejs 实践:express 最佳实践(八) egg.js 框架的优缺点

    nodejs 实践:express 最佳实践(八) egg.js 框架的优缺点 优点 所有的 web开发的点都考虑到了 agent 很有特色 文件夹规划到位 扩展能力优秀 缺点 最大的问题在于: 使用 ...

  2. gulp最佳实践(包含js,css,html预编译,合并,压缩,浏览器自动刷新)

    gulp是基于流的自动化构建工具官方网址:http://www.gulpjs.com.cn/ 一.安装需要的模块 1.新建package.json,输入下面的内容 { "name" ...

  3. 【翻译】Sencha Ext JS 5公布

    原文:Announcing Sencha Ext JS 5 简单介绍 我代表Sencha和整个Ext JS团队,非常自豪的宣布,在今天,Sencha Ext JS 5公布了.Ext JS 5已经迈出了 ...

  4. 【翻译】Sencha Ext JS 5发布

    原文:Announcing Sencha Ext JS 5 简介 我代表Sencha和整个Ext JS团队,很自豪的宣布,在今天,Sencha Ext JS 5发布了.Ext JS 5已经迈出了一大步 ...

  5. Ext JS 5 beta版发布

    原文:Announcing Public Beta of Ext JS 5 我们非常高兴的宣布,Sencha Ext JS 5 beta版本开始进行公测了.这个beta版本可以让你.我们Sencha社 ...

  6. Ext JS - 问答

    Ext JS - 问答 在下面你将可以找到关于Ext JS 的最常见问题的答复.如果没有找到您所需的答复,请访问 Ext JS 论坛或者提交一个支持申请. 如果你确信你的问题可以对本页有补充,请让我们 ...

  7. nodejs 实践:express 最佳实践系列

    nodejs 实践:express 最佳实践系列 nodejs 实践:express 最佳实践(一) 项目结构 nodejs 实践:express 最佳实践(二) 中间件 nodejs 实践:expr ...

  8. 《Ext JS模板与组件基本知识框架图----模板》

    最近在整理Ext JS的模板和组件,在参考<Ext JS权威指南>,<Ext JS Web应用程序开发指南>,<Ext JS API>等相关书籍后才写下这篇< ...

  9. [Ext JS 4] 实战之Grid, Tree Gird编辑Cell

    前言 本篇这里以稍微复杂一点的Tree Grid 来介绍. 在写编辑grid 之, 先来看一下 grid 的 selType 的配置. 先给一个简单的Tree grid 的例子: Ext.onRead ...

随机推荐

  1. Noip2017 普及 T3 Chess

    神奇的场上原码 #include<iostream> #include<cstdio> #include<cstring> #include<queue> ...

  2. 给定桩号获取纵断面中的高程值(c# for civil3d)

    通过civil3d提供的api,也就是纵断面Profile类提供的方法---public double ElevationAt(double station),就可以很轻松的获取纵断面对象某桩号处的高 ...

  3. dephi FillChar 的几种写法

    //在 delphi 新版中, char 已经是双字节了.故应该重新自己写一个函数,取名为 FillByte ,才无歧义. procedure TForm1.Button2Click(Sender: ...

  4. oracle手工生成AWR报告方法记录

    AWR(Automatic Workload Repository)报告是我们进行日常数据库性能评定.问题SQL发现的重要手段.熟练掌握AWR报告,是做好开发.运维DBA工作的重要基本功. AWR报告 ...

  5. android Handler机制之ThreadLocal详解

    概述 我们在谈Handler机制的时候,其实也就是谈Handler.Message.Looper.MessageQueue之间的关系,对于其工作原理我们不做详解(Handler机制详解). Messa ...

  6. 用scheme重写Python的三大函数map reduce 和filter

    重写过程中,发现这种做法能加深对递归的理解,而且reduce还体现了函数式编程是如何通过参数传递来实现命令式编程中的状态改变的. (define (imap f x . y) (if (null? y ...

  7. 【SSH系列】---Hibernate的基本映射

    开篇前言       在前面的博文中,小编分别介绍了[SSH系列]-- hibernate基本原理&&入门demo,通过这篇博文,小伙伴们对hibernate已经有了基本的了解,以及h ...

  8. [Mysql]Innodb 独立表空间和共享表空间

    innodb有2中表空间方式: 共享表空间 和 独立表空间 查询数据的设置: show variables like '%per_table'; 默认是共享表空间,独立表空间在配置文件中添加 inno ...

  9. Servlet规范总结

    Servlet接口 Servlet规范的核心接口即是Servlet接口,它是所有Servlet类必须实现的接口,在Java Servelt API中已经提供了两个抽象类方便开发者实现Servlet类, ...

  10. itoo-快捷部署脚本--提高部署开发效率

     本次是第一次使用批处理文件来作为批量操作的工具,代替了人工的手动的复制,粘贴的方式,使用脚本实现了项目的启动.自动化部署,打开项目根目录.等等,提高了开发和调试的效率. 说明: 当前版本:1.0 ...