《识数寻踪:WinHex应用与数据恢复开发秘籍》——第2章 柳叶弯刀锋芒现——WinHex初探 2.1 面由心生——WinHex启动中心

2.1 面由心生——WinHex启动中心

识数寻踪:WinHex应用与数据恢复开发秘籍
俗话说,“人活一张脸,树活一张皮”,软件也不例外,简洁大方的界面设计会给使用者带来心旷神怡的感受。其实,软件设计走到最后就成了一门艺术,设计师不再满足于合理体现软件的主要逻辑,而是力求将美学和创意贯注于软件的灵魂之中,让使用者产生强烈的精神共鸣,从而打心底欣赏、热爱软件。从另一个角度说,如果开发者对界面重视,那么软件核心的质量必定不差,尚未听闻界面草草了事但功能强大、运行稳定的软件(命令行除外)。本节我们就将欣赏这样一件珍品:WinHex启动中心。

2.1.1 你是否对它一见钟情
如果说,启动中心是WinHex的“容貌”所在,你是否会对它一见钟情?

如果某软件能让人“一见钟情”,那么它就获得了70%的成功。当然,“一见钟情”并非依靠绚丽的色彩和强列的层次感。大自然中,妖艳的事物并不一定就拥有强大的诱惑力,某些清新淡雅的事物更深得生性恬淡的人们所喜爱。

在渲染技术横行的今天,WinHex依旧以一身素装婷婷玉立于软件之林,既不矫揉造作,更不轻狂卖弄,沉默方显孤傲,冷静体现端庄。我相信,虽然大家在各自的数据恢复职业生涯中接触过不止一种数据编辑器,但是终归还是会将WinHex拥入怀抱。

当作者第一次接触WinHex时,就对它的“启动中心”印象颇佳,后来伴随着软件开发生涯的成长,越来越体会到WinHex的良苦用心。作者终于明白,启动中心其实是WinHex框架和功能的缩影,是设计思路的精华所在。这里我们先不讨论“启动中心”的具体功能,而是先说说对它的第一印象,如图2-1所示。

2.1.2 功能猜猜看
首先,我们看到一个子窗口,可以用鼠标拖动它,但是只要它存在,WinHex的其他菜单或按键似乎都处于冻结状态。有开发基础的读者一定想到,这是一个带有对话框特性的子窗体,如果不给这个窗体一些明确的指示,相关的线程就会阻塞在这里,也就是说,启动中心从一种略带强制意味的角度建议我们应当首先进行它提供的操作(对话框都是这样),这些操作清晰地反映WinHex的应用方向。我们不妨看看有些什么操作。正上方是4个按键,依次是打开文件、打开磁盘、打开RAM(内存)、打开文件夹,这些按键标题的含义如下。

打开文件。几乎每一个使用者都会这样理解:打开一个可以在Windows资源管理器中查看的文件个体。
打开磁盘。使用者会猜想:是否就是打开一个可被Windows正常识别的存储介质,如硬盘、U盘、闪存卡等。
打开RAM。使用者会惊喜地猜想:是否可以用它来访问内存?
打开文件夹。使用者会猜想:这肯定是个让他们感到物有所值的功能,也许它可以批量访问一个目录下的所有文件。
通过这4个按键,使用者已经隐约掌握到一些知识。可以说,到目前为止,根据按键标题做出的推测都是正确的。这就是清晰的软件逻辑带来的“解惑”效果,使用者甚至不用详细查阅产品说明书,就对WinHex产生了兴趣。

这里一连出现了4个“打开”,那么这些“打开”代表什么含义呢?在我们刚刚接触电脑的时候,打开一个文件就意味这一次鼠标双击。比如,要打开一个Word文档,在“我的电脑”中找到对应的文件名,将鼠标指针移到文件图标的上方双击即可打开文档。如果这个文档被病毒感染,我们怀着侥幸心理又一次双击后,发现仍然启动不了Word程序,或者看到一堆混乱的字符,结果便是无法打开这个文件。这时文件的健康程度成为我们“成功打开”的基础。可以说,“打开”就是一种操纵电脑的单一行为。随着知识的积累,我们渐渐发现,在不同的计算机领域中,“打开”有不同的含义。在Win32编程中,我们可以打开一个内核对象,在数据库开发中,我们可以打开一个库文件、一张表数据。随着自身的不断进步,这些“打开”的含义的界限似乎又模糊起来,我们逐渐明白,无论我们打开什么,在计算机上都是对一种我们称之为“数据”的飘渺事物访问,只不过有的访问流程非常复杂,有的访问流程相当简单。计算机软件的“打开”行为,归根结底没有区别。而能反映这种同一性的典型工具就是WinHex。可以说WinHex就是为数据而生。

左下角是一个列表控件,控件标题是“最近打开的数据”。该功能大家都不会陌生,平时编辑文档或开发项目,该功能可谓大显神威,带来了不少便利,此刻一定心知肚明,我们不再赘述。右边有两个列表控件,上方的名叫“案例/方案”。使用者虽然不能一眼从名称了解该功能的真正用途,但是一定可以想到,该功能提供了一种类似“工程”的应用集合体,该集合体拥有一个或多个访问对象,为某一目的或结果而存在。有开发经验的朋友不妨回忆Visual Studio中的“解决方案资源管理”,每当大家新建一个开发工程,“解决方案资源管理”都会产生相应的文件列表,包括头文件、源文件、资源文件等,它们都是某种程序不可或缺的组成部分。它们不仅仅存在于一个文件列表中,更重要的是,它们彼此之间联系紧密,相辅相成。还有,数据恢复从业者喜欢将一次数据恢复业务称为“数据恢复工程/数据恢复方案”,逆向开发从业者从事的工作命名为“逆向工程/逆向方案”,都是对“工程”或“方案”含义的实践化。所以,“启动中心”所涉及的方案,无外乎是上述含义。下方是一个名为“脚本”的列表控件,使用者看到“脚本”两字往往会产生对学习新语言的恐惧心理,其实不用害怕,它既然叫做“脚本”,其语法入门的难度自然是大大低于C、C++等编译型语言,我们先搁置不谈。

至此,通过“启动中心”的界面,我们已经将其功能大致推测了一遍。要恭喜自己,因为我们已经入门了。至少我们已经对这个软件产生了好感,本节的任务算是圆满完成了。

时间: 2024-10-01 03:07:18

《识数寻踪:WinHex应用与数据恢复开发秘籍》——第2章 柳叶弯刀锋芒现——WinHex初探 2.1 面由心生——WinHex启动中心的相关文章

《识数寻踪:WinHex应用与数据恢复开发秘籍》——导读

**前言**三百万魂湮荒冢,六千枯载征战延: 醉生梦死朝上客,血染狂沙关外人. 恍惚只闻刀剑笑,依稀可辨赤兔吟: 辰卯但求金乌美,奈何呓语秦汉年. 2004年我还是学生,和同学搭伴去玉门游玩,眼见一路戈壁广袤.沙海连天,长城在朦胧中蜿蜒,心潮澎湃却欲语词穷,直到大漠观日,被壮美之景震慑得似醒非醒,秦汉之风.边关战阵跃然于眼,这才按捺不住,仿效古来墨客,写下开篇蹩脚诗一首,表达激动心情,虽然那时的我尚未体会人生之路的曲折艰辛,却也迸发出报效民族的热血豪情,使我在后来的成长中时刻保持一种乐观向上的活

《识数寻踪:WinHex应用与数据恢复开发秘籍》——第1章 学海茫茫孤帆冷——数据恢复概述 1.1 给所有数据恢复工程师的话

第1章 学海茫茫孤帆冷--数据恢复概述 1.1 给所有数据恢复工程师的话 识数寻踪:WinHex应用与数据恢复开发秘籍 我们整日把数据恢复挂在嘴边,那么何为数据恢复?以往这里必须来一段老生常谈的名词解释,本书却有全新的理解:数据恢复,就是找到有价值的数据而已.为什么说"找到"?因为我们都清楚数据恢复的本质,乃是一种数据定位.检索技术,如果数据真的丢失,任何技术都回天乏力了,正所谓"存在定有迹可循,毁灭必无影无踪."数据丢失就好比一本书撕掉了目录,如果正文还在我们无论

《识数寻踪:WinHex应用与数据恢复开发秘籍》——1.3 数据恢复技术未来的发展方向

1.3 数据恢复技术未来的发展方向 识数寻踪:WinHex应用与数据恢复开发秘籍 未雨绸缪,真英雄也.只有牢牢把握一门学科的发展方向,才能在技术大潮中游刃有余,应对自如. 1.3.1 FLASH数据提取技术 目前,固态硬盘正在不断蚕食存储市场的份额,嵌入式设备又大行其道,FLASH闪存使用量达到前所未有的程度,与之相关的FLASH芯片数据恢复业务也如影随形地跟了过来.国内美亚柏科.效率源等公司都在积极研发此类技术. 1.3.2 数据恢复与残余数据分析并存 数据恢复往往不能达到完美的效果,某些时候

《识数寻踪:WinHex应用与数据恢复开发秘籍》——1.4 我们的“闺蜜”——数据恢复工具

1.4 我们的"闺蜜"--数据恢复工具 识数寻踪:WinHex应用与数据恢复开发秘籍 虽然数据恢复工具并不是我们安身立命的根本,但是在很多情况下,它们能帮助我们更有效地完成工作.从计算机的角度看,它们只是拥有特定功能的程序,所以它们只能按照预先设定好的流程来工作,一旦数据环境的复杂程度超出了所能掌控的范围,它们就会失去效力甚至给我们造成一定程度的误导. 有人说,两种数据恢复工具的恢复效果是有差别的,这是当然,因为它们分别代表了不同开发人员的不同思路.大家完全可以凭借自身经验为自己挑选适

《识数寻踪:WinHex应用与数据恢复开发秘籍》——1.2 学习规划

1.2 学习规划 识数寻踪:WinHex应用与数据恢复开发秘籍 任何学科都有其相应的学习规划.在大学里,老师们按照教育专家们指定的学习规划制定专业的教学任务表,我们只需要跟着老师的引导去学习,就可以按部就班地完成学习任务.但是本节不打算给大家列出一张严谨的课程表,我们仍然还是以轻松的语调,从勤奋.机遇.自爱3个角度谈谈数据恢复的学习方法. 1.2.1 勤奋 从勤奋的角度,数据恢复倒是有很多的学习方法,也就是我们称之为"笨办法"的办法. 1.好问 多向高手请教是成为高手的捷径.当然,请教

《Android平板电脑开发秘籍》——3.10节小结

3.10 小结Android平板电脑开发秘籍在本章中,我们见识了ActionBar在显示程序主要Action时的用途,学习了显示和隐藏ActionBar.理解了各种组件的运作,了解了在ActionBar中显示Action项和Action View的过程.还学习了如何在ActionBar中显示子菜单以及如何创建Tab页式和下拉列表式的ActionBar. 下一章将学习自API 11开始引入的新增Widget.你将学习通过CalendarView在Android应用程序中显示日历.通过NumberP

《Android开发秘籍(第2版)》——第1.8节Google Play

1.8 Google Play Android开发秘籍(第2版) 完成了应用程序的设计.开发.测试和签名工作后,就可以在Google Play上对其进行部署.要使用Google Play,首先要创建一个Google Checkout账户.该账户不仅用来支付25美元的开发者初始注册费,也用于供开发者获取付费应用的收益.创建的应用能亮相于众目睽睽之下,往往会令开发者激动不已.在上传后的数小时之内,应用程序就可能被来自全世界的用户数百次地浏览.下载.打分和评价.这里给出发布应用时需要考虑的若干事宜,谨

jBPM-4.0中文开发指南-第13章 执行模式

第 13 章 执行模式 这里有三种基本的流程执行模式:对象,持久化和嵌入. 对于持久化和嵌入执行模式, 流程执行必 须在一个事务中执行.在那种情况, 流程执行必须放在一个环境的内部. 环境将用来绑定流程执行,更 新到一个应用事务的事务中. 环境可以被用来绑定,比如一个JDBC连接, JTA,BMT,Spring事务等等. 13.1. 对象执行模式 对象执行模式是使用流程虚拟机的最简单形式. 这意味着通过客户端API直接使用流程定义和执行对 象. 让我们通过一个例子演示这个. 我们通过创建一个Cl

jBPM-4.0中文开发指南-第6章 流程剖析

第 6 章 流程剖析 上面我们已经简要的接触了两个主要的流程结构: 活动,转移和活动组合. 这一章研究了流程定义结构的全部可能. 这儿基本有两个流程定义方式:基于图形和组合流程语言. 首先,流程支持这两种情况. 每个基于图形的执行和活动组合可以用来组合一些像UML超级状态的实现. 甚至,自动功能活动可以被实现, 所以它们可以使用转移和活动组合. 开发指南-第6章 流程剖析-jbpm开发入门指南"> 图 6.1. 逻辑流程结构的UML类图 下一步我们会显示一系列的实例图形结构, 这可以组成P