日本程序员的脑回路真是奇葩!这段时间经常研究日本程序员写的上位机程序,发现他们写代码的思路真是奇葩,有时候看着他们写的代码嘴角都要止不住的上扬,和同事讨论日本程序员写的某段代码的意图,最后一讨论,别说,虽然写法奇葩,但是还真有他们的道理!这里我就简单的举个例子,大家一起看看怎么个事!

打开网易新闻 查看精彩图片

首先大家肯定很好奇,为什么我能看到日本程序员写的代码,其实事情是这样的,日本人开发的上位机程序在交付时,基本上都会把源码放在上位机PC里面,所以,我是能直接查看上位机程序的源码的。

某一天,我们的甲方说他们有台设备需要改个参数,但是这台设备的上位机程序是日本人写的,有源码,问我们公司能不能派个人过去帮他们改下,所以,公司就派我过去了。

到了甲方工厂,客户跟我们说了下需求,然后,我们就顺着源码找到了需要改动的地方。改完了代码,我编译了程序,然后,发现上位机程序怎么也跑不起来了!

捣鼓来捣鼓去,最后发现了问题点,原来,在上位机程序启动的时候,它会启动一个文件检查的程序,而这个文件检查程序的代码一时间让我摸不着头脑。

原来,上位机PC一共有4个磁盘,分别是C、D、E、F盘,上位机程序部署在E盘,这个文件检查的程序在运行以后首先会获取E盘上位机程序根目录的所有文件信息,然后拿着这些文件信息分别去D盘和F盘的另外两个上位机程序目录里面去比对文件,但凡文件有一个不一样,上位机程序都启动不起来。

这么说可能大家不知道是什么意思,简单地说,这个上位机真正的启动目录是在E盘,但是还是需要再D盘和F盘另外部署两个相同的上位机程序,只有D、E、F三个盘里面的所有上位机程序的文件信息都一样时,上位机才能成功启动,哪怕有一个不一样,上位机程序都启动不起来!

看懂这段代码时,我一时摸不着头脑,下意识跟我同事说:“有毛病吧,这是?”,然后我们俩就开始研究起这段代码的意图。

好一段研究以后,我们得出一个结论:这其实就是防止上位机程序被人为改动或者被意外篡改的!

因为这个上位机程序操纵的是一台大型设备,一旦程序被人为改动,造成的后果可能都是灾难性的,所以,基本上除了日志文件以外,其他的文件在编译后,基本上是不会发生改变的。

之所以在三个磁盘里面都部署一个上位机程序用来比对,就是为了阻止上位机程序里面的文件被改动后,上位机程序可能存在的错误运行的情况!一般来说,多个地方的文件被同时人为改动的概率不大,且被同时篡改的概率也不大。虽然,这种逻辑不能百分百保证安全,但相对来说是安全的。

结语

最后,我把编译后的文件每个磁盘都放了一个,然后上位机就顺利启动了!我和同事相视一笑,别说,做法挺傻,甚至想起来就想笑,但是你说这个办法它解决不解决问题呢?当然在一定程度上是能解决问题的!但是,这种办法我想破天,我估计我都想不到!