当前位置:  开发笔记 > 程序员 > 正文

程序员应该使用反编译器吗?

如何解决《程序员应该使用反编译器吗?》经验,为你挑选了1个好方法。

最近听到我一直在听杰夫阿特伍德和乔尔斯波尔斯基的电台节目,他们一直在谈论狗食(重复使用你自己的代码的过程,见杰夫阿特伍德的博客文章).所以我的问题是程序员应该使用反编译器来查看程序员代码是如何实现和工作的,以确保它不会破坏你的代码.或者你应该相信程序员编码并适应它,因为使用反编译器会违背我们程序员学习隐藏数据的所有内容(至少是OO程序员)?

注意:我不确定这会是哪个标签,所以请随意重新标记.

编辑:只是为了澄清我问的反编译器是最后的手段,说你出于某种原因无法获得源代码.对不起,我应该在原始问题中提供这个.



1> SingleNegati..:

是的,使用反编译器的输出可能很有用,但不适用于您的建议.编译器的输出看起来并不像人类会写的那样(除非是它.)它无法告诉你代码为什么会这样做,或者特定变量应该是什么意思.除非您已经拥有源代码,否则不太可能值得这么做.

如果您确实拥有源代码,那么在开发过程中使用反编译器有很多充分的理由.

大多数情况下,使用反编译器输出的原因是为了更好地优化代码.有时,在高优化设置下,编译器会误解错误.在某些情况下,如果不在不同的优化级别比较编译器的输出,这几乎是不可能的.

其他时候,当试图从非常热的代码路径中挤出最大性能时,开发人员可以尝试以几种不同的方式安排他们的代码并比较编译结果.作为最后的手段,通过复制编译器的输出,这可能是在汇编语言中实现代码块时最简单的方法.

推荐阅读
jerry613
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有