在找到下一份工作前,他可以关闭闹钟,想睡多久睡多久。
想到这里,他又重新躺倒在床上,既然如此,起那么早做什么,继续睡!
他昨天下班回来才不过下午四点多钟,给王小雨打完电话没过多久就睡着了,睡了超过十五六个小时,现在醒过来再想睡也睡不着了。
躺在床上翻来覆去了几分钟发现确实睡不着,反而越来越精神,曾凡索性起身下床,坐在椅子上打开了电脑。
梦里那么多关于未来的东西,可以找一两样现在自己能做出来的试试,尤其是软件方面,开发个小程序小游戏什么的,或许也是一个不错的主意。
自己没有拿得出手的学历,往往在求职的第一关就被淘汰出局了,做了十来年的程序员,也没有什么亮眼的成绩。
如果开发出一个有影响力的小程序,再找工作也能容易点,曾凡对自己始终不太有自信,对未来的规划还是倾向于找个稳定的工作。
电脑在风扇嗡嗡声中启动,曾凡输入熟悉的密码进入系统,一阵音乐声后,纯蓝的桌面显示出来,只有最左侧两列常用的软件图标,排列的整整齐齐。
除了几款他比较常用的编程工具,数据库软件外,最常用的就是小说阅读器、视频播放器和音乐播放器等几个软件。
曾凡喜欢收集资源,下载到本地欣赏,他不喜欢使用那些带乱七八糟联网功能的软件,往往都会强行绑定一大堆广告网站,时不时给你电脑里装上一大堆赠品,防不胜防。
他用的这些软件都是不需要安装,也没有联网功能的绿色软件,功能简洁节省内存,也不用担心被人安上木马程序。
以往他都是在网上搜集这种软件直接用,尽管有些功能不满意,也从没有想过自己编写一款,那对他来说太复杂了。
现在多了梦中的那些记忆后,曾凡发现这事儿好像也没以前想象的那么难,凭自己现在的技术和梦里的见识,就可以把这几款软件修改的更好。
要修改这些封装好的成品软件,就需要对它们进行反编译,将已编译的机器码转换回接近原始源代码的可读形式。
首先要提取目标程序运行时候的机器码,这些就是一串串长长的零和一组成的编码,解析这些代码中的指令和数据结构,包括函数入口点、变量位置等,重建程序的控制流程图,确定各个代码段之间的跳转关系,恢复变量名、函数名以及符号信息等等,根据上述信息生成可以理解的高级语言代码,才能进行修改。
不同的软件可能会采用不同的编程语言,反编译的流程和工具也会有许多差别,以前的曾凡对编译软件也仅限于使用,至于反编译软件,他是只听说过,还从来没用过。
梦中的曾凡技能可就太全面了,有了梦里的记忆,他熟练的打开几个英文网站,下载了几个反编译工具软件。
然后将最常用的绿色版风暴影音运行起来,开始进行反编译,这个视频播放软件早期版本是用C语言编写的,正是曾凡比较擅长的领域,本来是单机播放器,可惜后来用户多了以后,开始商业化运营,加了许多华而不实的东西,让曾凡有点深恶痛绝。
现在正好拿来练练手,他常用的是比较早期的版本,很多地方做的还不太完善,新版本太臃肿,曾凡很不喜欢。
由于程序编译过程中可能会对源代码进行优化,导致源代码的一些特性丢失,因此反编译得到的代码会与源代码有所不同,有的地方可能会出现严重错漏,反编译工具也有很大的局限性,并不是万能。
不过能获得大部分源码,对曾凡来说就够用了,从头编写一个播放器,对现在的他来说不是做不到,而是太过浪费时间,天下软件一大抄,这些播放器软件也是一个样,要制造一件家具,没必要自己从种树开始,他也没打算以此牟利,用来学习研究,做出来自己用,也在法律允许范围内。
全身心投入的去做一件事情,时间就会过的很快,曾凡根本没在乎过去了多少时间,直到肚子咕噜咕噜叫起来,一看时间已经快下午两点了。
自己好像从昨天中午后,一直到现在都没吃饭,怪不得肚子有意见,将改了半截的代码保存好,曾凡拿起床底下的脸盆出门,去对面卫生间洗漱,准备出门吃饭。