转自:开源中国社区
相信大家对 Windows 系统自带的记事本程序都不会陌生,在座的各位或许还有用它来写代码的经历。看上去它的功能非常简单,但你能否想到即便功能如此简单的程序,也需要有人专门维护?
近日,微软资深程序员、《Old New Thing》作者 Raymond Chen在博客发文表示,维护记事本虽然不是一项全职工作,但也不是一项空置的工作。据 Raymond Chen 透露,Windows 系统自带的记事本程序一直由一名已经退休的同事负责维护,而且维护记事本程序并不简单,记事本要经常用于测试,当一个团队引入一项新功能,他们可能会要求记事本支持这项功能以获得相关的反馈。
文章还提到了记事本一些隐藏的功能,例如,你可能不知道记事本的“文件-打开对话框”可以输入任意网址,然后即可获得该网页的源代码。
文章还说到了记事本有两项值得一提的改进,一个是状态栏,另一个是如何快速加载文件。
首先是状态栏,当插入符号在编辑控件中移动时没有明显的通知方式,维护人员想出了一个办法:记事本注册自己的对象位置更改辅助功能通知。这样,它可以知道插入符的移动时间,又可以通过更新状态栏和插入符的当前位置来进行响应。
而对于如何快速的加载文件。维护人员通过提前将文本内容加载到内存中,通过内存映射计算出文件编码,然后将结果放到内存块中,再将内存块内容传递给编辑控件,这也是记事本能编辑被锁定的文件的原因。
当然,让这位“孤独”的记事本守护者最开心的还是,通过优化加载文件功能,使得记事本的代码量大大减少,还提升了记事本的性能。