代码改变世界

一起谈.NET技术,重构TekPub——从ASP.NET MVC框架迁移到Ruby on Rails

2011-08-29 19:25 by 狼人:-), 241 阅读, 0 推荐, 收藏,
摘要:TekPub是一个面向开发人员的站点,致力于为开发人员提供一系列主题的在线培训,主题范围非常广泛,从微软的O/R Mapping框架Microsoft Entity Framework,到如何使用Ruby on Rails技术编写自己的日志引擎等内容都有涉及。该网站是由前微软员工Rob Conery与Lounge的老板James Avery创立的。 TekPub是个很有趣的学习案例,公司开始时使用ASP.NET MVC框架,之后很快迁移到了Ruby on Rails上。InfoQ与Rob和James探讨了这次迁移之旅。 InfoQ:和我们谈谈TekPub吧,对于哪些不熟悉你们的产... 阅读全文

一起谈.NET技术,WPF Multi-Touch 开发:高级触屏操作(Manipulation)

2011-08-29 19:25 by 狼人:-), 458 阅读, 0 推荐, 收藏,
摘要:在上一篇中我们对基础触控操作有了初步了解,本篇将继续介绍触碰控制的高级操作(Manipulatioin),在高级操作中包含了一些特殊的触屏手势:平移、缩放、旋转,当然在WPF 中无需自行开发这些手势,只需将UI 控件的IsManipulationEnabled 属性激活,并通过以下四种事件完成各种触屏手势操作:ManipulationStarting、ManipulationStarted、ManipulationDelta、ManipulationInertiaStarting、ManipulationCompleted,下图为各事件之间的工作顺序及关系。 创建项目 新建项目在... 阅读全文

一起谈.NET技术,在.NET中嵌入IronPython 交互

2011-08-29 19:25 by 狼人:-), 319 阅读, 0 推荐, 收藏,
摘要:随着IronPyhon 2.0 的发布,.NET Dynamic Language Runtime 也更加成熟了,在2.0中我们可以用动态脚本以粘合剂的方式编写架构体系中的各种逻辑单元,既便于修改,又能灵活适合多变的业务场景。当然,我的目标是在 Platform Framework 中能嵌入脚本引擎,而不是用 ipy.exe 去执行一个“独立”的任务。要让.net 项目能真正跟脚本进行交互,还得需要提供脚本引擎的实现。这得提到DLR一些基本概念了。 下图摘自 DLR 帮助文件,通过它我们基本可以了解基于 DLR 的组成方式。 下图描述了 DLR 的基本执行流程。 Scrip... 阅读全文

一起谈.NET技术,Silverlight的搜索引擎优化

2011-08-29 19:25 by 狼人:-), 241 阅读, 0 推荐, 收藏,
摘要:什么是SEO,为什么它是如此重要? SEO(搜索引擎优化)是改善交通的数量和质量,从搜索引擎网站的过程。这意味着,做搜索引擎优化您的网站将使其更具可转位及更多的人参观。下面是你的规则应该坚持以做最好的搜索引擎优化几点: <title>标签应包含有关您网站的最重要的信息 最重要的内容应留在本页面(开始后<body>标记) 所有图像标记号(<img />)应界定上的Alt标签-这是搜索引擎理解什么是图像的唯一途径说' 简短的开场白,RIA的世界 如今,网络空间是完全不同的网站。老式的HTML是慢慢地被替换为新的富互联网应用(RIA)。但他们为什么这么受欢 阅读全文

一起谈.NET技术,C# 4动态编程新特性与DLR剖析

2011-08-29 19:25 by 狼人:-), 433 阅读, 0 推荐, 收藏,
摘要:近几年来,在TIOBE 公司每个月发布的编程语言排行榜 [1] 中,C# 总是能挤进前10 名,而在近10 年的编程语言排行榜中,C# 总体上呈现上升的趋势。C# 能取得这样的成绩,有很多因素在起作用,其中,它在语言特性上的锐意进取让人印象深刻( 图1 )。 图1 C#各版本的创新点 2010 年发布的 C# 4 ,最大的创新点是拥有了动态编程语言的特性。 1 动态编程语言的中兴 动态编程语言并非什么新鲜事物,早在面向对象编程语言成为主流之前,人们就已经使用动态编程语言来开发了。即使在 Java 、 C# 、 C++ 等面向对象编程语言繁荣兴旺、大行于世的年代,动态编程语言... 阅读全文

艾伟也谈项目管理,PM与工程师&#183;续

2011-08-29 19:09 by 狼人:-), 367 阅读, 0 推荐, 收藏,
摘要:不久前我写了篇日志《PM与工程师》,讲我的一点经验,PM如何与工程师协作。但是知易行难啊,最近我们的工程师也有点小抱怨,认为需求变动较多,太折腾了。我听到以后很警惕,查了一遍,发现变动的需求大部分还算合理。半年多来一直强调敏捷,敏捷,有什么想法就快速发布出来,再根据上线效果进行调整。因此“一步到位”的方案是不可能的,而快速调整是必须的。 这时工程师就有意见了,觉得后续的修补太多,浪费时间,希望发布第一个版本的时候能够谨慎一些,周全一些。但这其实和“敏捷风格”是相悖的。 我想了想,问题并不在于工程师不认可这个敏捷风格,而是不理解为什么要做这个,为什么要调整那个。我们的PM把设计案写... 阅读全文

艾伟也谈项目管理,DevOps,不是一个传说!

2011-08-29 19:09 by 狼人:-), 604 阅读, 0 推荐, 收藏,
摘要:DevOps最近成了热词,望文生义,你也能猜个八九不离十,它就是在说"研发团队"与"运维团队"之间的那点事儿。那么,到底什么是"DevOps"呢? WikiPedia上说:"DevOps是软件开发、运维和质量保证三个部门之间的沟通、协作和集成所采用的流程、方法和体系的一个集合。它是人们为了及时生产软件产品或服务,以满足某个业务目标,对开发与运维之间相互依存关系的一种新的理解。"这恰好体现了精益管理中的客户价值原则,即:以客户的观点来确定企业从设计到生产交付的全部过程,实现客户需求的最大满足。我们也可以把DevOps 阅读全文

艾伟也谈项目管理,敏捷教练的工具箱

2011-08-29 19:09 by 狼人:-), 298 阅读, 0 推荐, 收藏,
摘要:学习并不是简简单单的阅读和浏览,而是一个积累的过程,一个通过持续的学习,对自己的知识体系不断丰富、索引的过程。接下来我会从四个方面入手分享我的经验。 高质量的信息源和高效的学习 Google是一个很好的工具,通过它,我们可以找到很多很好的资源,但前提是必须先知道要搜索的关键字,没有关键字,就不知道该查什么。多数情况下,人们都是在不可能知道自己不知道什么(Unknown unknown)的状态,也就是不知道该用什么关键字去查询,因此也不会知道该去学习些什么。所有基于Google检索的模型是一种基于拉动的模型,而基于拉动模型的方式不可能让我自己去接触那些自己不知道的信息。 为了让... 阅读全文

艾伟也谈项目管理,让亲身实践者执行工作流程

2011-08-29 19:09 by 狼人:-), 209 阅读, 0 推荐, 收藏,
摘要:文 / 黄易山 在这里,我使用“工作流程”这个词来描述“个人或团体为了完成一项活动而遵循的步骤”意义上的流程,以及组织的一般制度。随着一家公司的成长,有必要增加或整理工作流程。 最重要的利弊权衡通常是工作流程所带来的阻力,以及效率或效益上的收益孰轻孰重。 一方面,很难评估这种权衡中的利弊,因为其中牵涉到很多因素,所以有一条可能会有帮助的原则:只允许那些有特殊需要的工作流程被执行,而且要由那些直接使用它的人来执行。通常,经理和管理人员会提议工作流程,因为它会帮助他们更好地指挥、控制、协调或沟通。但新工作流程的执行不应该为这些目标服务,因为它的收益是不实际的,而且往往被高估:管理... 阅读全文

艾伟也谈项目管理,项目管理 – 人员外购利弊谈

2011-08-29 19:09 by 狼人:-), 212 阅读, 0 推荐, 收藏,
摘要:昨天与同行进行案例讨论时得知,前2个月还被列为正面经典案例的项目到这次讨论时居然变成了反面典型,真可谓成也萧何败也萧何啊。 该项目是一个软件外包项目,发包方是非中国大陆的客户,项目规模在500人月左右,团队人数峰值为50人,实施周期为12个月。项目是2个公司联合投标中标的,其中一个公司只负责商务活动和客户沟通(签合同之前的绝大部分工作),另一个公司负责真正的项目实施(合同签订后的绝大部分工作)。 项目初期,在人力资源上遇到以下问题: 1.由于项目所涉及的业务领域比较专业,负责真正项目实施的软件公司只有几个该领域专业人才,且资深并懂技术的就一个人。 2.由于项目庞大,该软件公司没... 阅读全文

艾伟也谈项目管理,Google的产品质量之道

2011-08-29 19:09 by 狼人:-), 166 阅读, 0 推荐, 收藏,
摘要:James Whittaker是Google的测试总监,曾任微软构架师,也是“实用软件测试指南”系列图书中好几本书的作者。他最近写了一系列的博文,介绍Google是如何进行测试。Google把开发和测试紧密结合在一起,测试人员相对较少,每个产品在正式上线前都要经过好几个不同的版本。 Google保证产品质量的方法和很多公司是不一样的。Google没有一个庞大的测试部门,相反,部分测试工作委派给了开发人员。Whittaker写道: 测试和开发同时进行。编写一些代码,马上进行测试和构建。接着,编写更多的代码,继续测试。更好的是,在你编码的时候或者编码之前,就计划好你的测试。测试不是一个独立... 阅读全文

艾伟也谈项目管理,项目管理 – 人员外购利弊谈(续)

2011-08-29 19:09 by 狼人:-), 246 阅读, 0 推荐, 收藏,
摘要:接上一篇文章“项目管理 – 人员外购利弊谈”。 以上方案只是初步分析,其缺点都是有相应解决办法的。 该公司对以上情况并没有使用DAR(决策分析解决方案)方法进行正式和认真的分析,仅仅从能快速启动和项目利润两个方面考虑来选择了最终的解决方案:项目经理由公司的技术和业务都掌握的人员担当;各小组的组长和测试组长采用人员外购的方式;项目组成员1/3由公司员工组成,1/3由实习人员组成,1/3采用外购方式。 公司如此考虑: i.成本方面可以通过实习人员省出来的成本来弥补外购人员的高额成本,公司内部人员通过边实施边学习的方式掌握项目,实施后期逐步退出外购人员降低成本。(因此,跟外购公司... 阅读全文

艾伟也谈项目管理,BUG平台应该是一个知识库

2011-08-29 19:09 by 狼人:-), 385 阅读, 0 推荐, 收藏,
摘要:我很喜欢看各个产品的Bug追踪系统,比如jQuery的Bug Tracker,因为在Bug系统中总能发现一些非常细节的问题,补充自己的知识,慢慢地自己的代码的兼容性会有很大的提高。 但是,在各个Bug系统之中,包括现在公司使用的Trace系统,无一例外地存在一些让我不满意之处,其中最大的原因就是很多Bug系统仅仅是作为Bug的记录系统存在,而没有试图去让一个Bug成为一个知识的积累,让整个Bug系统变成一个丰富充实的知识库。这样的Bug系统,永远都只是提供一个简单的业务流程,不会变成干完人员、产品、甚至是整个团队的进步的天梯。 在我看来,一个Bug系统应该更加全面,管理Bug的生命... 阅读全文

艾伟也谈项目管理,项目管理的十大挑战

2011-08-29 19:09 by 狼人:-), 218 阅读, 0 推荐, 收藏,
摘要:公司项目中的项目管理挑战 1. 不明确的目标:当目标不明确时,开发团队是不可能达到客户要求的。而且,由于上级管理层不会同意也不会支持不明确的目标,该项目成功的几率微乎其微。因而,项目经理应当通过询问恰当的问题,从一开始就建立并传达清晰的目标。 2. 范围变更:也称作“范围蔓延”,当项目管理层允许项目的范围延伸到原始目标以外时,就会发生这种现象。当然,客户和项目监管员会要求修改项目,但一个优秀的项目经理会评估每一个请求、决定是否及如何实施,并且与每个利益相关人交流决策对预算与期限的影响。 团队合作:对项目经理的挑战 1. 缺乏项目需要的技能:有时,项目需要一些参与者没有掌握... 阅读全文

艾伟也谈项目管理,软件开发前期设计时的注意事项

2011-08-29 19:09 by 狼人:-), 232 阅读, 0 推荐, 收藏,
摘要:说起软件设计,我们可能每个人都做过,但是什么样的方案才是好的设计方案?如何才能设计出一个好的设计方案?在设计过程中需要注意哪些呢?不要总是说:低耦合、可维护性、可扩展性、简易性、可重用性等,本文试图另一个角度出发,带着前面的这些问题,使大家能明白那些问题的答案,并与大家一起探讨。 什么样的方案才是好的设计方案? 当我们完成了一个良好的设计方案后,我们回头再仔细分析是什么因素影响了我们的思路,使我们最终完成(确切的说是选择了)了这个设计方案(而不是另一个),我们会发现这些因素是:用户功能性的需求、技术性能上的要求和研发成本(或能力)的制约,当然其实还有一些其它因素如:客户主观上的要求... 阅读全文
上一页 1 ··· 260 261 262 263 264 265 266 267 268 ··· 312 下一页