您的位置: 首页 > 技术文档 > 网络编程 > 选择开发技术四步曲
回到列表 轻量级JSON映射类库
 选择开发技术四步曲

作者:黄志斌 时间: 2010-10-15 文档类型:转载 来自:CSDN

我的一位朋友正在为一个即将启动的编程项目而费脑筋:要在保证项目顺利完成的同时提高性能。他问我:“我该如何挑选技术呢?”这位朋友时断时续地编写过代码,但他还没有做过任何实质性的项目。他从未专注于任何特定的技术,他对这个项目不知如何下手。虽然他基于以前的经验倾向于部署到Linux,但这还不是最终决定。

在这儿,我将自己给他提的建议分享出来。我将不推荐任何具体的技术,而是告诉你,我在对技术和体系结构制定决策时的方法。

第1步:为应用程序作松耦合设计

敏捷方法已经变得非常流行,一些人认为,这意味着你不要尝试超越一两个星期的时间表。但这在为应用程序作松耦合设计准备时极具价值。您所需要做的只是使用一个具有流程图功能(例如Visio)的工具来提供一个高层次的逻辑概述。您不必陷入这样的细节:“验证这个字段至少包含五个字符”或数据布局。但你需要对应用程序各组成部分所担负的处理职责有一个总体思路。

这儿有图中应该包含的东西的一些例子:

  1. 任何重大的批处理任务。
  2. 数据存储(文件,数据库,“云”等)以及对之进行检索并提供给应用程序其它部分的组件。
  3. 重要处理出现的地方(在数据库中,在业务逻辑层,Web服务,客户端等)和它的作用。

第2步:确定资源的使用情况和特点

一旦逻辑概述图完成了,我们可以用它来确定资源的使用情况。你需要注意的资源是CPU、内存、硬盘空间和带宽。你要向外部Web服务传输大量数据或者与之相反?这就需要注意应用程序和服务之间的连接的带宽资源。也许你的数据库内部要做密集的运算 - 那就注意数据库的CPU使用情况,如此等等。

第3步:判断性能临界区域

一旦你明白了要使用哪里的资源,也就发现了潜在的性能瓶颈。这些地方会对你的技术选择有最大的影响。如果事实证明你存储在数据库中信息很少,你在数据库方面就有更多选择。也许你要在业务逻辑层执行的令CPU沉重的算法,这其中就表明你需要支持高速运算的语言和平台。下面是我以前做的图表,这会有助于您了解这会如何影响你的决策。

第4步:权衡需求规模

你可以从图表中学到的另一件事是你的应用程序的哪个地方需要权衡。例如,如果大部分处理需求是发生在应用程序的客户端,那么服务器架构可以宽松得多。

您也将能明白自己需要何种规模。大多数数据库有集群功能,所以如果你有选择,这通常更容易,更好地把需要权衡的事情(特别是如果它们需要在请求之间共享状态)推进到已经扩大规模的数据库,或考虑具有内置集群或缩放堆栈的更高级的技术。

结论

利用轻量级逻辑概图来启动应用程序的发展过程,你会在正确的途径上选择适合自身需求的最佳技术。也存在很多非技术因素(如您的预算,特别是技术经验等),但你需要从某个地方开始,这个决策过程将有助于你缩小选择范围,并提前看清问题所在。我很乐意你在下面的留言中,从而可以获得与这类问题相关的经验。

本文链接:http://www.blueidea.com/tech/program/2010/8028.asp 

出处:CSDN
责任编辑:bluehearts

◎进入论坛网络编程版块参加讨论

相关文章 更多相关链接
编程活动中几个不良现象
《动态网站开发第一步》
Flex 3 RIA开发详解与精深实践
FLASH小游戏开发 第八节
FLASH小游戏开发 第七节
热门搜索:CSS Fireworks 设计比赛 网页制作 web标准 用户体验 UE photoshop Dreamweaver Studio8 Flash 手绘 CG
站点最新 站点最新列表
经典设计案例:丢猫千万别找设计师
UI AWARD 2010提名奖名单揭晓
网站设计解构
赢在设计
WAP2.0网页设计中的交互细节
画在信封上
数据同步算法研究
Flash ActionScript 3.0溢彩编程
用ps作简单的作品展示页面
CSS定位机制之一:普通流
栏目最新 栏目最新列表
浅谈JavaScript编程语言的编码规范
如何在illustrator中绘制台历
Ps简单绘制一个可爱的铅笔图标
数据同步算法研究
用ps作简单的作品展示页面
CSS定位机制之一:普通流
25个最佳最闪亮的Eclipse开发项目
Illustrator中制作针线缝制文字效果
Photoshop制作印刷凹凸字体
VS2010中创建自定义SQL Rule

蓝色理想版权申明:除部分特别声明不要转载,或者授权我站独家播发的文章外,大家可以自由转载我站点的原创文章,但原作者和来自我站的链接必须保留(非我站原创的,按照原来自一节,自行链接)。文章版权归我站和作者共有。

转载要求:转载之图片、文件,链接请不要盗链到本站,且不准打上各自站点的水印,亦不能抹去我站点水印。

特别注意:本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有,文章若有侵犯作者版权,请与我们联系,我们将立即删除修改。

本文暂时没有评论和评分

您的评论
用户名:  口令:
说明:输入正确的用户名和密码才能参与评论。如果您不是本站会员,你可以注册 为本站会员。
注意:文章中的链接、内容等需要修改的错误,请用报告错误,以利文档及时修改。
不评分 1 2 3 4 5
注意:请不要在评论中含与内容无关的广告链接,违者封ID
请您注意:
·不良评论请用报告管理员,以利管理员及时删除。
·尊重网上道德,遵守中华人民共和国的各项有关法律法规
·承担一切因您的行为而直接或间接导致的民事或刑事法律责任
·本站评论管理人员有权保留或删除其管辖评论中的任意内容
·您在本站发表的作品,本站有权在网站内转载或引用
·参与本评论即表明您已经阅读并接受上述条款
推荐文档 | 打印文档 | 评论文档 | 报告错误  
专业书推荐 更多内容
《CSS那些事儿》
闪魂-FlashCS4完美入门与案例精粹
Waver_h's华丽世界
Illustrator CS3质感绘画表现技法
《网页设计全书》
《用户体验要素》
《JavaScript语言精粹》
作品集 更多内容