AICon 北京站 Keynote 亮点揭秘,想了解 Agent 智能体来就对了! 了解详情
写点什么

Chris Eargle 谈如何更好的管理应用

  • 2013-02-18
  • 本文字数:1719 字

    阅读完需:约 6 分钟

Chris Eargle 是 Telerik 公司的技术布道师和微软 C# MVP,他最近向开发者们分享了一些求生技巧。首先,他建议开发者们不要使用奇怪的代码构想,从而对寻找影响软件正常工作的bug 造成困难。

Chris 强调了使用专业的版本控制软件的必要性,它能够帮助开发者毫不费力地恢复旧版本的源代码。同时,他建议开发者确保版本控制服务运行在独立的系统上。

Chris 谈到了性能问题会以多种不同形式和程度出现,而它们都将消耗用户大量的时间。因此,最好是引入一个分析器来识别最需要优化的目标

Chris 探讨了使用异步调用的必要性,它可能长期运行并避免锁死用户界面。这些异步调用包括使用 finally 块或使用可销毁的模型来清理托管资源。如果你不能够捕捉到内存泄露背后的原因,那么使用第三方内存分析器可以帮助你来寻找导致这一问题的根本原因。

Chris 认为,鉴于火灾或其他自然气候灾害随时可能发生,备份应采用异地分离的方式,与源服务器分开。尽管如此,他认为备份不应存储在那些在线文件托管网站中,因为这种方式也有其固有的风险。

在 InfoQ 的一次采访中,Chris 针对自己分享的观点进行了更多的阐述。

InfoQ:在你日常编程工作中,是否也遵循了上述技巧?

在涉及到专业软件时,我遵循这些建议。我将其限定在这个范围内,因为在进行那些为自己编写或仅用于验证某项技术的项目时,我不会那么严格。

InfoQ:能否为开发者们推荐一些无故障的备份服务?

备份服务有多种类型,如何选择取决于需要何种基础架构。例如,我使用 GitHub 的付费账户来维护我的私人代码库,因为它很好地满足了我的需求。当我为一个保险公司工作时,我们在现场将服务器备份到磁带,并将旧的备份存储到异地物理存储设备上。这样做能够在需要的时候进行快速恢复,同时防止我们的数据在物理灾难中受到损害。

有许多很棒的专业存储服务,适用于各种类型的商业需求。我会在下面的分享中介绍一些小型的服务提供商。

我认为,在考虑何种形式的备份时,你必须对“无故障”这一想法非常谨慎。备份服务既有显而易见的风险,也有暗藏的风险。你必须非常谨慎的将整体风险降低到可接受的水平,并为之付出相匹配的成本。

这是一个暗藏风险的例子:许多人选择 MegaUpload 作为在线备份服务提供商。当它(现在叫做 MEGA )因侵犯版权的指控被政府停止服务时,大量用户从未预见他们的合法数据也会被停止。更糟糕的是,政府拒绝释放这些数据,所以每一个只将信息存在这一家服务商,而没有同时存储在其他系统的用户都损失了他们(备份的)全部数据。

InfoQ:对于使用 SkyDrive 作为备份存储,你怎么看?

SkyDrive 及类似的云存储,对于较少量的数据而言是非常好的选择。SkyDrive(为付费用户)提供的最大容量是 100GB,这并不适合企业级应用。

InfoQ:你为 Telerik 工作并推荐了 JustDecompile。能推荐一些其他的反编译工具吗?

其他的.NET 反编译工具与我所代表的产品是竞争关系,对我而言,支持另一个是一种利益冲突。

InfoQ:你是否认为,Visual Studio 2012 安装在比较旧的计算机上会存在性能问题?

我的经验是, Visual Studio 2012 在比较旧的计算机上,表现比其早期版本要好。

InfoQ: 在今天,开发者们在开发他们的应用中使用多种第三方工具。在选择 .NET 组件工具方面,你能够为他们分享一些应遵从的技巧吗?

你永远应该选择那些最能够提升你的生产效率的工具,而这一点受许多方面因素的影响,例如特性、用户体验以及是否会抑制开发者当前的环境(例如,造成阻碍)。选择组件与此类似,但关注焦点一般从它如何影响开发者转移到它如何影响最终用户。如何选择组件是一个技术问题。

例如,自从我尝试使用 ASP.NET MVC 编写网站,对我而言我更倾向于选择 Kendo UI ,而不是 ASP.NET AJAX RadControls。尽管如此,使用 APS.NET WebForms 的人可能会觉得后者( RadControls )是更好的选择。你可以使它们同时工作在上述两种环境中的任何一个里,但代码必须是可维护的,而整洁的实现对于这一点有很大帮助。

查看英文原文 Chris Eargle Talks on Better Application Management


感谢杨赛对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2013-02-18 08:101297
用户头像

发布了 256 篇内容, 共 80.9 次阅读, 收获喜欢 10 次。

关注

评论

发布
暂无评论
发现更多内容

架构师训练营第六周总结

sunnywhy

总结

Kiroro

Doris临时失效处理过程的UML时序图

周冬辉

架构师训练营第六周作业

王铭铭

Apache Flink 是什么?

Apache Flink

flink

程序员的眼界真的不要,也不能只局限于技术

非著名程序员

极客时间 程序员 提升认知

CAP

Kiroro

week6 学习总结 Nosql

Z冰红茶

CAP 原理

Z冰红茶

CAP 原理及Doris 临时失效的处理过程

Acker飏

极客大学架构师训练营 CAP

static关键字真能提高Bean的优先级吗?答:真能

YourBatman

spring springboot SpringCloud 极客大学架构师训练营 Spring Bean

蟒周刊-429-Python 3.8.4 可用ed

ZoomQuiet大妈

Python 大妈 蟒周刊

架构师训练营第六周作业

sunnywhy

MySQL 高可用和分布式数据库(训练营第六课)

看山是山

zookeeper CAP 主从复制 主主复制 MySQL 高可用

学会使用Vue JSX,一车老干妈都是你的

前端有的玩

Java Vue 大前端 技巧 React

CAP原则

熊威

架构师训练营第6周作业

饶军

最右JS2Flutter框架——渲染机制(二)

刘剑

flutter 大前端 跨平台 探索与实践

探秘 Spring 的 PropertyEditor

CoderLi

Java spring 后台

NOSQL - 第六周作业

孙志平

Doris 临时失效 UML 时序图(训练营第六周)

看山是山

Doris

一个成都程序猿写于离开北京一周年与26岁生日的这一天

why技术

生活 程序人生 北漂 成都

猿灯塔:spring Boot Starter开发及源码刨析(六)

猿灯塔

架构师训练营第六周

大丁💸💵💴💶🚀🐟

图解:有向环、拓扑排序与Kosaraju算法

淡蓝色

Java 数据结构 算法

NOSQL - 第六周总结

孙志平

学习总结 - 第 6 周

饶军

架构师训练营」第 6 周作业

edd

极客大学架构师训练营

我学会了用Python预测股票价格

博文视点Broadview

Python 读书笔记 算法 数据分析

GaussDB for DWS:内存自适应控制技术总结

华为云开发者联盟

大数据 数据湖 内存管理 sql 华为云

「1.4万字」玩转前端 Video 播放器 | 多图预警

阿宝哥

大前端 流媒体 Video播放器 HLS

Chris Eargle谈如何更好的管理应用_语言 & 开发_Anand Narayanaswamy_InfoQ精选文章