打开浏览器来编程,CodeRun – 基于web的IDE开发工具

作为开发人员,IDE应该是再熟悉不过了,每当我们编程时大部分时间是通过IDE来辅助的,但是有时候刚好手头的这台电脑没有安装IDE,闲暇之余想写点东西的想法就因此破灭了。

当然上面的可能只是借口,但是这种不方便还是存在的,OK,现在给你推荐一个在线的IDE – CodeRun

CodeRun 是一个跨平台的集成开发环境,它立足于云计算的设计思路,方便开发者在浏览器端便可以轻松开发、调试和部署网络应用程序。

目前,CodeRun 主要支持一些Web开发语言,包括C#/.NET (3.5), PHP (5.1), JavaScript, HTML 以及 CSS等,其中C#项目包括ASP.NET, WCF, Silverlight 和 WPF, MVC等项目,JavaScript脚本项目支持目前流行的JQuery, ExtJS, YUI等框架,其中数据库支持SQL Server 2005 和 Amazon SimpleDB。

具体的支持情况,请参见下表:(点击可以放大

比较吸引人的一块是,CodeRun可以直接在线Run和Debug,很不错!

不知道啥时候可以支持Java呢?

这段时间工作中的一些领悟

这段时间忙的一个项目,估计是目前为止忙活的最为郁闷的一个项目.

客户可以说是一家老国企, 我们所接触的客户方面从上到下分三层, 最上面是大头, 其次是部门小头和他们的技术部门小头, 再者是项目的最终用户,部门成员, 大头定方向, 部门小头按部门需求定框架,技术小头呢想到哪说哪, 最后的部门成员根据自身需求定细节.

项目从大小来说不大, 不过从开始做到现在并没有觉得比大项目好做.

首先是接受问题, 部门成员大都上了年纪, 电脑除了工作, 连网页浏览都很少用, Email不会用, 接受能力欠佳, 都喜欢按部就班, 能不改就不改, 能不动就不动, 那怕他们手动去处理.

其次是需求问题, 客户没有需求文档,我们自己整理,结果是大头说个大概, 小头们是想到哪说哪, 今天这个不错, 明天突然又想起那个好, 三天两头有新的需求变动, 部门成员更是从自己的切身利益想方设法让我们做变动.

再者就是我们自己的问题, 一个成长中的团队, 必然有好多东西需要学习和积累.

或许也是因为在这个项目上走了不少弯路, 遇到了一些问题, 近来更是吃到一些前面犯下错误的苦, 才导致这几天一直在考虑自己在此应该注意的一些事情, 以免后面再犯.

1. 开始编程之前, 计划和规划一定要做好, 而不是一股脑的先实现了基本功能, 然后再去这修修那补补, 这样导致的最直接后果就是项目做的越久Bug越多, 以至到了项目结尾了, 数据结构还在变化, 因为没有一个牢固的基础.

2.一个模块的代码最好由一个人完成, 其他人接手也最好将之前的代码吸收掉, 而不是直接拿来就用, 不然出了问题都不知道怎么回事, 到头来还得按照自己的想法来做.

3.需求变更, 这个问题几乎是所有项目都要遇到的, 目前所做的项目更是普遍, 虽然我们也做了一些和客户确认等工作, 但是没有发现有什么效果, 这因人而已, 因客户而已, 在前期将需求调研做到位,只能说尽量去做好.

4.注释, 尽量在自己写的代码里加上注释, 尤其是一些逻辑比较复杂的方法里面, 首先其他人不好理解,再者过些时日, 自己也要从头慢慢体会了.

5.结对编程, 之前一直对这个编程方式不是很感冒, 但是在最近的工作中发现还是值得提倡的, 尤其是在一些自认为比较费时的编程部分, 找人一起写, 这样时效性最好, 不然你在这部分花费的时间绝对是Double以上的, 而且过程可能还很痛苦, 两个人搞, 第一取长补短有交流, 有收获, 第二能大幅保证进度和正确性.

6.引用李笑来老师的一句对自己提醒: "别装, 千万别装, 你也没什么可装的". 时时刻刻谦虚学习.

7.需要统一的东西, 从刚开始遇到就去做统一, 不然等大家都各自弄完了, 标准不一样, 再去做统一工作, 任务就大了.

8.发现别人的代码规范不对, 或者实现有问题, 不是帮他修正, 而是提醒他, 让他自己修正, 不然他不会知道, 而且下次很有可能再犯.

9. 一些公共的事务, 比如服务器管理, 系统部署等大家都要用到的东西, 至少有2个人可以胜任, 不然就一个人管理, 总会有一天, 这个人会因其他事情而耽误团队时间.

10. 这个问题可能稍微严重了点, 那就是变更系统实施方案, 到了项目后期, 如果这个还在变动的话, 那就是前期没做足调研, 这里面的风险不小, 首先否定了一直使用的方案, 团队接受是一个问题, 其次新方案有没有足够的调研,会不会产生其他问题, 最后是客户方面, 需要去说服,来接受新方案.

11. 时间观念, 团队对时间观念的不重视, 必然会导致项目的拖延.

12. 分享和活动, 团队应该定期或者不定期的举行一些技术甚至非技术的知识分享或者其他活动, 一方面有助于团队技术的提高, 另一方面有助于凝聚团队力量.

13. 这个应该是最重要的了, 有了规定, 规范, 团队应该去执行, 定了但不执行或者执行力度不够, 不但前期的投入白费了, 而且影响了后期的项目建设.

14. 备份工作, 说到这个就不得不说下, 我们客户竟然在不通知我们的情况下格盘重装系统, 导致数据丢失, 不过也从另一方面说明我们的备份工作没做好, 没辙, 一些数据得重新录入.